On 27.01.2012 16:12, Dominic Evans wrote:
> I have a digital S/PDIF output from my VDR frontend hooked up to a
> decent home amplifier and surround speakers.
>> In the past I've had no problems using this via a vdr-sxfe frontend
> both for stereo MPEG-2 audio, as well as for 5.1 AC-3 on HD channels.
>> audio.device.alsa_default_device:plughw:0,1
> audio.device.alsa_front_device:plughw:0,1
> audio.device.alsa_passthrough_device:plughw:0,1
> audio.device.alsa_surround51_device:plughw:0,1
> audio.output.speaker_arrangement:Pass Through
>> However, recently (perhaps due to a kernel / alsa update?) I've found
> that I have to execute `iecset audio on` (to make analog MPEG-2 audio
> work) and `iecset audio off` (to make AC-3 passthrough work).
>> Any idea why this might be?
I'm not sure why it worked before (the most obvious reason would be a
different amplifier which doesn't care for the IEC/AES status bits, but
I'm sure you would've mentioned it if that was the case...).
Instead of "plughw:0,1" for the devices, use e.g. symbolic "plug:iec958"
(may need CARD=foo parameter if you have multiple cards, in that case
look at "aplay -L" output for the correct value) for normal playback and
"iec958:AES0=0x06" for passthrough.
The "iec958" ALSA device will automatically set default IEC/AES values
when you open the device, making "iecset audio on" unnecessary. The
AES0=0x06 added for passthrough will do the same as "iecset audio off"
(i.e. it will set non-pcm bit 0x02 in the AES0 byte, default AES0 being
0x04 (non-copyright bit)) for the duration of playback.
--
Anssi Hannula