Hi All,
Frustrated by the fact that dvd AC3 audio via the dxr3's analog output hasn't been working for a while I had a bit of a look into the source code and managed to get it going. I'm using vdr-1.3.21, dxr3plugin CVS (vdr-dxr3-0-2 branch) and dvdplugin latest CVS.
The problem seems to be that the dxr3 plugin won't decode an LPCM audio stream. The dvd AC3 audio is downmixed to a PCM stream by the dvdplugin when UseDolbyDigital is set to "no" in vdr setup.
My quick and dirty hack was to make a minor change in dxr3demuxdevice.c at around line 510. Here we have :
else if (pesFrame.GetPesDataType() == cDxr3PesFrame::PES_PRIVATE_DATA && m_demuxMode != DXR3_DEMUX_VIDEO_ONLY_MODE && !cDxr3ConfigData::Instance().GetAc3OutPut() && !bAc3Dts)
if we omit the check for bAc3Dts...
else if (pesFrame.GetPesDataType() == cDxr3PesFrame::PES_PRIVATE_DATA && m_demuxMode != DXR3_DEMUX_VIDEO_ONLY_MODE && !cDxr3ConfigData::Instance().GetAc3OutPut()) // && !bAc3Dts)
we get working analog audio from AC3 and PCM dvds.
This isn't intended as a permanent fix since I'm assuming that the private stream always contains PCM data, if it doesn't vdr crashes immediately. Hopefully someone will write a proper patch to fix it soon.