Objetivo: Tocar música em um servidor, preferencialmente usando cmus, usando SSH para controle do player.
Primeira tentativa: cmus
eu corro cmus
em um terminal, literalmente nada acontece. Ele apenas carrega (eu acho). Tentei cmus -vvvvv
- Também apenas carrega. Tentei isso e isso - Nenhuma alteração no problema. Mas: executá-lo a partir de um terminal físico no computador funciona! (Ambos iniciando o cmus e reproduzindo áudio com sucesso)
Segunda tentativa: MOC
Executar mocp
abre, posso adicionar arquivos também. Ao tentar reproduzir uma música, esta mensagem aparece: can't open audio: device or resource busy MOC
- Nenhuma solução possível encontrada.
Terceira tentativa: mp3blaster
Inicia. Eu posso adicionar arquivos. Não joga: Failed to open sound device
Tentei várias sugestões (muito desatualizadas) do google, nada ajudou. O que pareceu ajudar muitos outros com isso foi padsc mp3blaster
- Mas, novamente, nenhuma ajuda para mim.
Estou usando ALSA com PulseAudio. O áudio em si funciona bem. play
ou mplayer
ambos funcionam bem, mas não oferecem bibliotecas e listas de reprodução.Ambos funcionam bem em SSH também.
Estou realmente sem noção do que fazer aqui, pois o cmus não imprime nadae . Eu verifiquei mplayer
funciona bemalsamixer
e nada está silenciado ou desativado. Há apenas uma única placa de som.
Não estou tentando fazer uma pergunta ampla do tipo sugira-me algo aqui, apenas adicionei os outros jogadores, pois isso pode ajudar a encontrar o problema, mas a pergunta visa se concentrar em começar cmus
a trabalhar.
Eu tentei DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus cmus
também (encontrado aqui ), mesmo resultado.
Edit: PARA SER CLARO: A música está na máquina em que eu SSH e quero reproduzir a música localmente na máquina, controlando o reprodutor de música CLI via SSH. Desculpe pela confusão. Não estou tentando transmitir áudio por SSH. Eu só quero usar cmus
em um Terminal SSH para tocar música que já está no servidor que estou conectando.
Edit: mplayer
também não funciona mais, costumava o tempo todo até que eu tentei:
AO: [pulse] Init failed: Connection refused
Failed to initialize audio driver 'pulse'
[AO_ALSA] alsa-lib: pcm_hw.c:1602:(snd_pcm_hw_open) open '/dev/snd/pcmC0D0p' failed (-16): Device or resource busy
[AO_ALSA] alsa-lib: pcm_dmix.c:1052:(snd_pcm_dmix_open) unable to open slave
[AO_ALSA] Playback open error: Device or resource busy
Failed to initialize audio driver 'alsa'
[AO SDL] Samplerate: 32000Hz Channels: Stereo Format s16le
[AO SDL] using aalib audio driver.
[AO SDL] Unable to open audio: No available audio device
Failed to initialize audio driver 'sdl:aalib'
Could not open/initialize audio device -> no sound.
Audio: no sound
Video: no video
O mesmo para play
:
ALSA lib pcm_dmix.c:1052:(snd_pcm_dmix_open) unable to open slave
play FAIL formats: can't open output file `default': snd_pcm_open error: Device or resource busy
Eu tentei root
também, mesmo resultado. Mas: Se eu executar como o usuário que está logado na sessão X (mesmo por SSH), funciona.
Resolvi o problema com algo bastante óbvio que perdi esse tempo todo. Eu tive que permitir que outros usuários (não o usuário conectado à sessão X em que o pulseaudio deamon é executado) acessem o PA.
No usuário sob o qual o PA deamon é executado:
Em seguida, adicione no final do arquivo:
Em seguida, faça login como o usuário do qual você deseja reproduzir o áudio:
E cole o seguinte no arquivo:
Salve, reinicie o pulseaudio:
pulseaudio -k
Agora
cmus
e todos os outros jogadores estão funcionando muito bem.Eu uso
mpd
encmpcpp
para conseguir a mesma coisa.Comece
mpd
no servidor e usencmpcpp -h hostname_of_jukebox
para controlá-lo de qualquer outro computador na rede.Não há necessidade de
ssh
iniciarmpd
remotamente (que pode ser iniciado automaticamente como um serviço/daemon, se você quiser).Você também pode usar outros programas para controlar
mpd
.