Player de música em Shell com Yad
Publicado por Raimundo Alves Portela (última atualização em 24/06/2023)
[ Hits: 6.787 ]
Homepage: http://portelanet.com
Download toca_musica_yad.sh (versão 2)
Mais um script para demonstrar as novas funcionalidades do Yad 0.16.x, dessa vez fiz um Tocador de musica em mp3 usando os Dialogs --form e --entry do Yad.
Para executá-lo você vai precisar do Mplayer e do Yad.
Para executar use:
./play_music_yad
Bom proveito.
Versão 2 - Enviado por Mario da Silva Santos em 22/06/2023
Changelog: As mudanças significativas foram:
1-trocar o Mplayer por Deadbeef (para funcionar no Puppy Linux Fossa 9.5)
2-e o find $HOME para find . e executar de dentro do diretorio com as musicas.
O Deadbeef toca do caminho completo ou de playlist .dbpl ou m3u
.dbpl eh o padrão, o próprio programa cria a lista no /root/.config/deadbeef
OBS: no Puppy Linux o usuário padrão eh o root
\o/'s a todos
#!/bin/bash # Desenvolvido por Raimundo Portela - rai3mb@gmail.com # Desenvolvido para demonstrar novas funcionalidades do Yad #------------------------------------------------------------------------------------------------------------------------------------ function barra() { tail -f $0 | yad --progress --title='Procurando...' --progress-text="buscando... $VALOR" --no-buttons --auto-close --undecorated } function _buscar() { VALOR=$( \ yad --entry --title='Buscar músicas' --on-top --center \ --entry-label="Buscar músicas sobre:" --entry-text="Digite aqui" \ --ricon="gtk-clear" --ricon-action="echo " \ --button='Cancelar':1 --button='Buscar':0 ) [ -z "$VALOR" ] && _main echo -n > "$LISTA" barra & find -L "$HOME"/Music "$HOME"/Musicas "$HOME"/Músicas -iname "*${VALOR}*.mp3" -exec echo "{}" >> "$LISTA" \; 2>/dev/null mv "$LISTA" "/tmp/temp.txt" echo -n > "$LISTA" while read MUSICA do echo "$MUSICA : \"${MUSICA##/*/}\"" >> "$LISTA" done < "/tmp/temp.txt" killall tail _main } function _tocar() { MUSICA=$(cat "$LISTA" | grep "$1" | cut -d: -f1) mplayer $MUSICA } function _main() { if [ ! -f "$LISTA" ]; then export LISTA='/tmp/lista_musicas.list' _buscar fi if yad --form --title='Player Musicas Shell Yad' --columns=3 --center \ --field='Musica':CB "$(cat $LISTA | cut -d':' -f2 | tr '\n' '!' )" \ --field='Tocar':BTN "./music_play.sh tocar %1" --field='Parar':BTN "killall -9 mplayer" --button='Fechar':1 --button='Buscar outro':0 then _buscar fi killall mplayer exit } case "$1" in 'buscar') shift; _buscar $* ;; 'tocar') shift; _tocar $* ;; *) _main ;; esac
Configuração de failover de links de internet
Substituir strings em arquivos ascII
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
ASRock H310CM-HG4 vs Linux [RESOLVIDO] (19)
redirecionando saida de comando touch para o AWK[AJUDA] (8)
Manipulação de dados binários, aplicações (0)
Fedora 40 Melhor que Ubuntu 24.04 (7)
Microfone do meu headset não é recinhecido. Meu notebook é um Acer Asp... (13)