M4L Player Console
Publicado por Slackjeff (última atualização em 24/01/2018)
[ Hits: 2.136 ]
Homepage: https://slackjeff.com.br
M4L é um player de música via CLI que é totalmente leve/simpático e direto!
A base a qual ele utiliza é o mpg123.
LICENÇAS:
M4L is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1
mpg123 is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1
MODO DE USO:
1- Dê permissão de execução, chmod +x m4l
2- Rode o programa ./m4l
3- Digite ajuda para saber mais informações!
CONTROLES DISPONIVEIS NO M4L:
q = Para sair da música/playlist.
ESPAÇO = Para pausar e voltar a música.
f = Próxima música.
d = Volta a música anterior.
+ = Aumenta volume da música.
- = Diminui o volume da música.
. = Pula de 1 em 1 segundo.
, = Volta musica de 1 em 1 segundo.
CHANGELOG:
(Versão 1.0b) - Jefferson Rocha
-Lançado programa em versão beta
(Versão 1.1) - Jefferson Rocha
-Arrumado e melhorado Cabeçalho
-Adicionado função de verificação de parâmetro nulo
-Adicionado ajuda em linha.
-Adicionado parâmetro --stereo no mpg123
-Adicionado parâmetro -C (controle keys) no mpg123
-Trocado sáida de erro /dev/null por 2>&- no tocador mpg123
-Adicionado Animação (Espectrum) enquanto toca a música.
-Adicionado função para centralizar logo de acordo com a tela.
-Retirado subtitulo que ficava após o logo.
-Retirado váriaveis (mover e mover_sub).
#!/bin/bash
#---------------HEADER--------------------------------------------------------------------|
#AUTOR:
# Jefferson Rocha <lrcjefferson@gmail.com>
#
#PROGRAMA:
# M4L - Music for life.
#
#DESCRIÇÃO:
# Tocador de música completo via CLI, utilizando o mpg123 como base.
# Tem como objetivo ser simples/minimalista e agradável, fácil de usar.
#
#LICENSE
# M4L is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1
# mpg123 is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1
#
#CHANGELOG:
# (Versão 1.0b) - Jefferson Rocha
# -Lançado programa em versão beta
#
# (Versão 1.1) - Jefferson Rocha
# -Arrumado e melhorado Cabeçalho
# -Adicionado função de verificação de parâmetro nulo
# -Adicionado ajuda em linha.
# -Adicionado parâmetro --stereo no mpg123
# -Adicionado parâmetro -C (controle keys) no mpg123
# -Trocado sáida de erro /dev/null por 2>&- no tocador mpg123
# -Adicionado Animação (Espectrum) enquanto toca a música.
# -Adicionado função para centralizar logo de acordo com a tela.
# -Retirado subtitulo que ficava após o logo.
# -Retirado váriaveis (mover e mover_sub).
#-----------------------------------------------------------------------------------------|
#-----------------------(VÁRIAVEIS GLOBAIS DO PROGRAMA)
# Configurações--!
programa="M4L Player V1.1"
TOCADOR="mpg123 --title --stereo -C" # tocador
# Testes--!
mpg_existe=$(which mpg123)
# Cores--!
bold="\033[1m"
a="\033[36;40;1m" # cor legenda/opções
f="\033[m" # fecha cores
rosa="\033[35;1m" # Rosa
vermelho="\033[31;1m" # Vermelho
#----------------------------------------------!
#-----------------------(FUNÇÕES)
variavel_nula() {
[ "$param1" ] || {
echo -e "\t$rosa Ops. Selecione uma música rapaz!$f"
}
}
# agora o logo fica no centro!
centro() {
local cent=$(tput cols)
local centralizando=$(($cent/2))
printf "\t%*s\n" $centralizando " M4L - PLAYER "
}
espectrum() (
# helice, executado em segundo plano,
# enquanto rola a música.
while :; do
for a in / - \\ \|; do
echo -ne "\b$a"
done
done & "$@"
kill $!
echo
)
#-------------------------------!
#-----------------------(TESTES INICIAIS)
# mpg123 existe no sistema?
# se não existir instala vagabundo riaria
[ "$mpg_existe" ] || {
echo -e "$vermelho\tVocê deve instalar o mpg123 para continuar.$f"
exit 1
}
#---------------------------------------!
# Inicio programa
clear; centro # chama logo do programa
while (true); do
read -ep $'\033[34;1m| ♫ | \033[m' param param1
case $param in
#----Opções do player
play|tocar)
variavel_nula # sem música ?
espectrum eval $TOCADOR "$param1" 2>&- ;;
playlist)
read -ep $'\033[36;40;1mCaminho completo da pasta:\033[m\n' param1
variavel_nula # sem música ?
espectrum eval $TOCADOR "$param1"*.mp3 2>&- ;;
#----Opções navegação
licença|license) echo -e "$vermelho M4L is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1
mpg123 is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1$f" ;;
sair|quit) exit 0 ;;
cd) cd $param1 ;;
pwd) pwd ;;
ls|lista) ls --color ;;
*|ajuda|help)
echo -e "
$bold Comandos utilizados em linha:$f
$vermelho cd$f = Para navegar até uma pasta específica
$vermelho ls/lista$f = Para listar todos arquivos em uma pasta
$vermelho pwd$f = Para saber em que diretório está.
$vermelho play/tocar$f = Toca uma música, desde que esteja na pasta.
$vermelho playlist$f = Selecione uma pasta com todas as músicas.
$vermelho sair/quit$f = Para sair do M4L
$bold Funçoes do M4L:$f
$vermelho q$f = Para sair da música/playlist.
$vermelho ESPAÇO$f = Para pausar e voltar a música.
$vermelho f$f = Próxima música.
$vermelho d$f = Volta a música anterior.
$vermelho +$f = Aumenta volume da música.
$vermelho -$f = Diminui o volume da música.
$vermelho .$f = Pula de 1 em 1 segundo.
$vermelho ,$f = Volta musica de 1 em 1 segundo.
"
esac
done # Fecha while principal
Counter Strike Dedicated Server
Importar vários Emolticons de uma vez para amsn
Deixando o Plasma6 mais fluido
trocar a senha de um usuario do sistema
Script para desligar o computador de acordo como login
Nenhum comentário foi encontrado.
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Centralizar Logo com Transparência via ImageMagick
Removendo entradas de boot UEFI "fantasmas" via terminal
Atualizações de Segurança Automáticas no Debian
Como cortar as partes de um vídeo com passagens de áudio em branco
Doações para LM dezembro 2025 record! (2)
Uma pergunta bem simples mas não achei resposta (ainda) [RESOLVIDO] (3)
Alguém tem que acabar com ANATEL!!! (3)









