+: otros.sh funcion metronomo

This commit is contained in:
jp.av.dev 2022-05-20 21:03:56 -04:00
parent 809c7964b7
commit a206df3cee
2 changed files with 65 additions and 17 deletions

View File

@ -9,6 +9,7 @@ Selección de scripts de autoria propia
- [Otros](#otros) - [Otros](#otros)
- [Estadisticas covid Chile](#covstats) - [Estadisticas covid Chile](#covstats)
- [Mpv Playlist](#mpvplaylist) - [Mpv Playlist](#mpvplaylist)
- [Metronomo](#metronomo)
- [Otras funciones](#otras-funciones) - [Otras funciones](#otras-funciones)
- [Lol laucher y debug](#rito-pls) - [Lol laucher y debug](#rito-pls)
@ -232,7 +233,7 @@ Color en la consola de python con módulo **rich**. [pyRichRepl.py](./pyRichRepl
# Otros # Otros
### covStats() ## covStats()
Estadisticas covid Chile Estadisticas covid Chile
`./otros.sh covStats` `./otros.sh covStats`
@ -249,20 +250,20 @@ Estadisticas covid Chile
---------------------------- ----------------------------
``` ```
### MpvPlaylist() ## MpvPlaylist()
Función para administrar una 'playlist' para ser usada con [mpv](https://mpv.io) Función para administrar una 'playlist' para ser usada con [mpv](https://mpv.io)
> archivo: `~/.cache/.playlist` > archivo: `~/.cache/.playlist`
**Uso** **Uso**
ej. `alias mpvp='./otros.sh pvPlaylist'` ej. `alias mpvp='/ruta/otros.sh mpvPlaylist'`
| Orden | Detalle | | Orden | Detalle |
| - | - | | - | - |
|`mpvp` | Modo interactivo | |`mpvp` | Modo interactivo |
|`mpvp -h` | Mostrar ayuda | |`mpvp -h` | Mostrar ayuda |
|`mpvp https://link.video`| Agregar el link a *playlist* | |`mpvp https://link.video`| Agregar el link a *playlist* |
|`mpvp -r` | Reproducir *playlist* | |`mpvp -r` | Reproducir *playlist* |
|`m̀pvp -s` | Reproducir *playlist* y apagar PC | |`mpvp -s` | Reproducir *playlist* y apagar PC |
**Modo interactivo** **Modo interactivo**
@ -290,7 +291,24 @@ ej. `alias mpvp='./otros.sh pvPlaylist'`
|`6`| Editar lista (neovim) | |`6`| Editar lista (neovim) |
|`s`| Salir | |`s`| Salir |
### Otras Funciones ## Metronomo
**Uso**
ej. `alias metro='/ruta/otros.sh metronomo'`
Por defecto inicia a **80 bpm**
```sh
$ metro
Metronomo a: 80 bpm
[Salir] <Ctrl>+<C>
```
O según argumento, ej. **120 bpm**
```sh
$ metro 120
Metronomo a: 120 bpm
[Salir] <Ctrl>+<C>
```
## Otras Funciones
| Funcion | Explicación | | Funcion | Explicación |
| - | - | | - | - |
@ -303,7 +321,7 @@ Script [otros.sh](./otros.sh)
---- ----
# Rito pls ## Rito pls
Lanza instancia de [kitty](https://sw.kovidgoyal.net/kitty/) terminal, con 3 splits (ventanas según creador). Lanza instancia de [kitty](https://sw.kovidgoyal.net/kitty/) terminal, con 3 splits (ventanas según creador).
Layout tall: Layout tall:

View File

@ -2,7 +2,7 @@
REd="\e[0;31m"; GRn="\e[0;32m"; ORn="\e[33m"; REd="\e[0;31m"; GRn="\e[0;32m"; ORn="\e[33m";
FND="\e[40m"; RED="\e[1;31m"; GRN="\e[1;32m"; FND="\e[40m"; RED="\e[1;31m"; GRN="\e[1;32m";
MGNT="\e[1;35m"; BLU="\e[1;34m"; RST="\e[0m"; MGT="\e[1;35m"; BLU="\e[1;34m"; RST="\e[0m";
CYA="\e[1;36m"; CYa="\e[0;36m"; CYA="\e[1;36m"; CYa="\e[0;36m";
Caldera(){ Caldera(){
@ -71,28 +71,29 @@ covStats(){
Mcont="$(python3 -c "print('{:.2f}'.format(100*$Murtio/$Conteg))")" Mcont="$(python3 -c "print('{:.2f}'.format(100*$Murtio/$Conteg))")"
# Vista # Vista
printf '\n %bEstadisticas COVID %bChile 🇨🇱️ %b\n' "${GRN}" "${BLU}" "${RST}" printf '\n %bEstadisticas COVID %bChile 🇨🇱️ %b\n' "${GRN}" "${BLU}" "${RST}"
printf '%b%s%b\n' "${MGNT}" " ============================" "${RST}" printf '%b%s%b\n' "${MGT}" " ============================" "${RST}"
printf ' %bMuertes totales :%b %s %b\n' "${RED}" "${CYA}" "$Mtota" "${RST}" printf ' %bMuertes totales :%b %s %s %b\n' "${RED}" "${CYA}" "$Mtota" "%" "${RST}"
printf ' %bMuertes contagio:%b %s %b\n' "${REd}" "${CYa}" "$Mcont" "${RST}" printf ' %bMuertes contagio:%b %s %s %b\n' "${REd}" "${CYa}" "$Mcont" "%" "${RST}"
printf '%b%s%b\n' "${MGNT}" " ----------------------------" "${RST}" printf '%b%s%b\n' "${MGT}" " ----------------------------" "${RST}"
printf ' %bContagios : %b%s%b\n' "${GRn}" "${CYa}" "${Contag}" "${RST}" printf ' %bContagios : %b%s%b\n' "${GRn}" "${CYa}" "${Contag}" "${RST}"
printf ' %bActivos : %b%s%b\n' "${GRn}" "${CYa}" "${Activo}" "${RST}" printf ' %bActivos : %b%s%b\n' "${GRn}" "${CYa}" "${Activo}" "${RST}"
printf ' %bRecuperados : %b%s%b\n' "${GRn}" "${CYa}" "${Recupe}" "${RST}" printf ' %bRecuperados : %b%s%b\n' "${GRn}" "${CYa}" "${Recupe}" "${RST}"
printf ' %bMuertes : %b%s%b\n' "${RED}" "${CYA}" "${Muerte}" "${RST}" printf ' %bMuertes : %b%s%b\n' "${RED}" "${CYA}" "${Muerte}" "${RST}"
printf '%b%s%b\n' "${MGNT}" " ----------------------------" "${RST}" printf '%b%s%b\n' "${MGT}" " ----------------------------" "${RST}"
} }
mpvPlaylist(){ mpvPlaylist(){
# alias mpvp
ayuda(){ ayuda(){
while read; do while read; do
printf '%s\n' "${REPLY}" printf '%s\n' "${REPLY}"
done <<-EOF done <<-EOF
Uso: Uso:
./script mpvPlaylist Ejecuta el script. mpvp Ejecuta el script.
./script mpvPlaylist <link> Agrega el link a playlist. mpvp <link> Agrega el link a playlist.
./script mpvPlaylist -r, --play Reproduce playlist. mpvp -r, --play Reproduce playlist.
./script mpvPlaylist -s, --off Reproduce playlist y apaga el equipo. mpvp -s, --off Reproduce playlist y apaga el equipo.
./script mpvPlaylist -h, --help Muestra el contenido de ayuda. mpvp -h, --help Muestra el contenido de ayuda.
EOF EOF
exit 0 exit 0
} }
@ -170,4 +171,33 @@ EOF
done done
} }
metronomo() {
wavcach=$HOME/.cache
if [ -z "${1}" ]; then
BPM=80
elif [[ -n ${1//[0-9]/} ]]; then
printf "%bDebes ingresar los BPM (10-500).%b\n" \
"${MGT}" "${RST}" && exit 1
#printf "Debes ingresar un numero entre 10 y 500.\n" && exit 1
elif [[ "${1}" -lt 501 ]] && [[ "${1}" -gt 9 ]]; then
BPM="${1}"
else
printf "%bDebes ingresar un numero entre 10 y 500.%b\n"\
"${ORn}" "${RST}" && exit 1
#printf "Debes ingresar un numero entre 10 y 500.\n" && exit 1
fi
bpm=$(echo "(60000/${BPM}/1000)" | bc -l)
if [ ! -f ${wavcach}/metro.wav ]; then
ffmpeg -f lavfi -i "sine=frequency=320:duration=0.05" -ac 2 ${wavcach}/metro.wav &>/dev/null
fi
printf '%bMetronomo a: %b%s bpm%b\n%b[Salir] %b<Ctrl>+<C>%b\n' \
"${CYA}" "${GRN}" "${BPM}" "${RST}" "${REd}" "${BLU}" "${RST}"
while :; do
aplay -q ${wavcach}/metro.wav & sleep ${bpm}
done
}
touch_exec(){
touch "${1}" && chmod u+x ${1} && nvim ${1}; }
"$@" "$@"