Something strange seems to be going on with ALSA device enumeration.
Since the audio DT overlay change in the kernel snd-bcm2835 is loaded by default. If you enable an additional I2S soundcard both are reported by aplay -L but kodi only lists the first device (snd-bcm2835).
BTW: an easy way to reproduce this is to add dtoverlay=rpi-dac to config.txt, this driver will load fine even without hardware attached.
Kodi log from 0523c build:
http://sprunge.us/cDVV and aplay -L output:
Code:
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
sysdefault:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
default:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
sysdefault:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
If we blacklist snd-bcm2835 only one device is reported, both by aplay and kodi and everything's fine. But if we then manually load snd-bcm2835, resulting in swapped device order, kodi again only reports the first device (rpi-dac in this case).
kodi log:
http://sprunge.us/VdJh and aplay -L output:
Code:
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
sysdefault:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
default:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
sysdefault:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
Now, if I plug in a USB dac kodi reports the first "onboard" device (rpi-dac) plus the USB device(s) but not snd-bcm2835.
kodi log:
http://sprunge.us/GAHO and aplay -L output:
Code:
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
sysdefault:CARD=sndrpirpidac
snd_rpi_rpi_dac,
Default Audio Device
default:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
sysdefault:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
default:CARD=DAC
USB Audio DAC, USB Audio
Default Audio Device
sysdefault:CARD=DAC
USB Audio DAC, USB Audio
Default Audio Device
front:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
Front speakers
surround21:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=DAC,DEV=0
USB Audio DAC, USB Audio
IEC958 (S/PDIF) Digital Audio Output
Very strange...
so long,
Hias