I am trying to configure forked-daapd
on my computer, and everything goes well except that in configuration file I can not set a new value for the line corresponding to soundcard. This is the default code in the config file:
#card = "default"
I want to use a soundcard called "DG2", which is the soundcard no.1 and has a first device that ALSA
recognizes as no.0. So, I change the line to the following:
card = "hw:DG2,0"
I restart the daapd service and the next time I play a file through iTune remote, I get a message in my server log file saying that it can not play the file because the device is busy. Any change in the device name will return a different error, saying that the device does not exist. I am pretty sure no other uses this external device, and I don't understand why I get this message. I have tried plughw
as well, with the same result.
When running lsof
, I get the following result:
mah@HomeServer:~$ lsof /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1579 mah 20u CHR 116,3 0t0 9083 /dev/snd/controlC1
pulseaudi 1579 mah 26u CHR 116,10 0t0 9542 /dev/snd/controlC0
pulseaudi 1579 mah 32u CHR 116,10 0t0 9542 /dev/snd/controlC0
Let me add one last detail. This soundcard is just a SPDIF-out USB dongle with very limited functionality (e.g. no volume control). Alsamixer
says it only has a PCM channel (which would be the device number 0).
controlC*
devices are harmless. Doesaplay -D hw:DG2 something.wav
work?hw:DG2,0
,hw:1
,hw:1,0
. Also for theplughw
s.forked-daapd
is running.daapd
,shairport
can still successfully open the device.