Sobre o projeto
Mousiki é um player de música de terminal (TUI) projetado para usuários que preferem controle por teclado e camadas de interface mínimas. Ele é construído para velocidade e operação leve, com forte foco em personalização e um fluxo de trabalho que permanece inteiramente no terminal.
**Principais Recursos:**
- **Reprodução de Música Local:** Navegue e reproduza arquivos de música da sua biblioteca local com facilidade.
- **Busca e Streaming Online:** Pesquise e transmita faixas diretamente de fontes online, alimentado por yt-dlp.
- **Letras Sincronizadas:** Destaque de letras ativas em tempo real, palavra por palavra, obtido via script Python do Better Lyrics (principal) e LRCLIB (fallback).
- **Visualizadores:** Espectro FFT em tempo real (usando kissfft), renderização de forma de onda e arte de disco giratório, com fluidez configurável.
- **Gerenciamento de Fila:** Enfileiramento eficiente, embaralhamento, repetição e filtragem baseada em pastas.
- **Altamente Configurável:** Ajuste cores, comportamento do visualizador, animações e atalhos de teclado através de um arquivo de configuração de texto em `$HOME/.config/mousiki/config.txt`.
**Plataformas Suportadas:**
- Suporte nativo para Linux, macOS e Android (via Termux).
- O suporte a Windows não é verificado pelo autor, mas pode funcionar; contribuições são bem-vindas.
**Começando:**
- Clone o repositório e execute `bash setup.sh` (para macOS com Homebrew, Linux baseado em Debian ou Termux) para instalar dependências, gerar uma configuração padrão e compilar o aplicativo.
- Compilações manuais exigem `cmake`, um compilador C++17, `ffmpeg`, `yt-dlp` e o pacote `requests` do Python.
- Após compilar, execute `./build/mousiki`.
**Atalhos de Teclado Padrão (configuráveis):**
- Buscar: `/` (local), `/s: <consulta>` (stream online)
- Baixar stream atual: `y`
- Reproduzir/Pausar: `p` ou `ENTER`
- Próxima/Anterior: `n` / `b`
- Avançar/Retroceder: `SETA_ESQUERDA` / `SETA_DIREITA`
- Volume: `1` / `2`
- Embaralhar/Repetir: `m` / `r`
- Navegar: `SETA_ACIMA` / `SETA_ABAIXO`
- Alternar abas: `TAB`
- Adicionar/Remover da fila: `a` / `d`
- Filtro de pasta: `f`
- Limpar filtro: `c`
- Sair: `q`
**Configuração:**
O arquivo de configuração é gerado automaticamente. Você pode adicionar caminhos de música personalizados adicionando múltiplas entradas `LocalMusicPath`. Todos os atalhos de teclado e configurações visuais são editáveis lá.
**Dependências e Atribuição:**
Mousiki usa miniaudio (reprodução de áudio), kissfft (FFT para visualizadores), yt-dlp (streaming online), FFmpeg (manipulação multimídia) e o pacote `requests` do Python para letras. Ele é lançado sob a Licença Apache 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.