O MPD não pode se conectar à minha placa de som

0

Aqui estão os meus cartões disponíveis (nova linha extra adicionada entre os comandos para legibilidade):

audiohub@DYM-Portable-AudioHub:~$ sudo aplay -l
[sudo] password for audiohub: 
**** List of PLAYBACK Hardware Devices ****
card 0: sunxicodec [sunxi-CODEC], device 0: M1 PCM [sunxi PCM]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: CODEC [USB Audio CODEC], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: X18XR18 [X18/XR18], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

audiohub@DYM-Portable-AudioHub:~$ arecord -L
null
    Discard all samples (playback) or generate zero samples (capture)
sysdefault:CARD=sunxicodec
    sunxi-CODEC, sunxi PCM
    Default Audio Device
dmix:CARD=sunxicodec,DEV=0
    sunxi-CODEC, sunxi PCM
    Direct sample mixing device
dsnoop:CARD=sunxicodec,DEV=0
    sunxi-CODEC, sunxi PCM
    Direct sample snooping device
hw:CARD=sunxicodec,DEV=0
    sunxi-CODEC, sunxi PCM
    Direct hardware device without any conversions
plughw:CARD=sunxicodec,DEV=0
    sunxi-CODEC, sunxi PCM
    Hardware device with all software conversions
sysdefault:CARD=CODEC
    USB Audio CODEC, USB Audio
    Default Audio Device
front:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    Front speakers
surround40:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    Direct sample mixing device
dsnoop:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    Direct sample snooping device
hw:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    Direct hardware device without any conversions
plughw:CARD=CODEC,DEV=0
    USB Audio CODEC, USB Audio
    Hardware device with all software conversions
sysdefault:CARD=X18XR18
    X18/XR18, USB Audio
    Default Audio Device
front:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    Front speakers
surround40:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    Direct sample mixing device
dsnoop:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    Direct sample snooping device
hw:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    Direct hardware device without any conversions
plughw:CARD=X18XR18,DEV=0
    X18/XR18, USB Audio
    Hardware device with all software conversions

audiohub@DYM-Portable-AudioHub:~$ 

O sunxicodec integrado não é usado, o USB CODEC está completamente ocupado para uma função diferente e eu quero que mpd seja reproduzido no USB X18XR18 . Não importa o que eu coloque em /etc/mpd.conf , gmpc sempre diz:

Euatualmentetenhoisso:

audio_output{type"alsa"
       name            "XR18"
       device          "hw:2,0"
#       format          "48000:32:2"
}

Ele faz a mesma coisa com "hw:1,0" ( CODEC ), mas joga com "hw:0,0" ( sunxicodec ). Infelizmente, essa placa requer alguma configuração extra para fazer com que ela use analógica em vez de HDMI, então eu não a ouvi realmente para ver se soa bem.

Eu sei que as duas placas USB funcionam porque a função CODEC é impecável usando o software, porque audacious é reproduzido em X18XR18 e porque eu posso simultaneamente arecord X18XR18 :

#!/bin/sh

REC_PATH=/home/audiohub/Recordings

arecord --device=hw:CARD=X18XR18,DEV=0 --channels=18 --file-type=wav --format=S32_LE --rate=48000 --buffer-time=20000000 --max-file-time 300 "$REC_PATH/all_tracks.wav" &

# Force a filesystem sync every 1 second to keep the buffer small enough to write without missing samples
while true
do
    sleep 1
    sync
done

Eu também tentei o formato "hw:CARD=X18XR18,DEV=0" em /etc/mpd.conf , em vez de "hw:2,0" , mas fez a mesma coisa.

aplay faz isso:

audiohub@DYM-Portable-AudioHub:~$ aplay --device=hw:CARD=X18XR18,DEV=0 --format=S32_LE --rate=48000 "/home/audiohub/Music/Waterlines/05 - Take Your Time.wav"
Playing WAVE '/home/audiohub/Music/Waterlines/05 - Take Your Time.wav' : Float 32 bit Little Endian, Rate 44100 Hz, Stereo
aplay: set_params:1233: Sample format non available
Available formats:
- S32_LE

audiohub@DYM-Portable-AudioHub:~$ 

O motivo para não ficar com audacious , mesmo que funcione, é que ele depende do VNC para controle (este player / gravador é sem cabeça) e o servidor VNC desliga depois de um tempo e requer uma reinicialização. Já que a jukebox é a única coisa que realmente precisa do controle da GUI e mpd parece fazer tudo que eu preciso, eu prefiro ter isso do que audacious .

Alguma idéia para fazer funcionar, além do que eu tentei até agora?

    
por AaronD 01.12.2016 / 23:49

1 resposta

1

O único formato suportado pelo dispositivo é S32_LE. Se o mpd não conseguir converter do formato de amostra do arquivo para esse, você precisará usar um dispositivo ALSA que possa fazer a conversão, se necessário; Ou seja, substitua hw por plughw .

    
por CL. 03.12.2016 / 09:40