M4L Player Console

Publicado por Slackjeff (última atualização em 24/01/2018)

[ Hits: 1.783 ]

Homepage: https://slackjeff.com.br

Download m4l




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).

  



Esconder código-fonte

#!/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| &#9835; | \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

Scripts recomendados

Resetar as configurações do KDE plasma para o padrão

backup interativo em dialog

CkDeps - Análise de Dependências e Busca por Pacotes Instalados

Sambax - Shell - dialog- Xdialog

Renomeador Automático de Arquivos de Mídia


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts