XBMC PulseAudio passthrough support (including Nvidia) is available - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Development (/forumdisplay.php?fid=32)
+--- Forum: Development (/forumdisplay.php?fid=93)
+--- Thread: XBMC PulseAudio passthrough support (including Nvidia) is available (/showthread.php?tid=96316)
- Forsaken - 2011-12-07 16:17
cbxbiker61 Wrote:I just checked in code to deal with this problem in my xbmc repo. This entails adding a maxpassthroughbandwidth option to xbmc advanced settings.
Ok I will give it a try tonight but afaik my hw should support it, it's a core i3 (not sandy bridge the previous one).
- sjongele - 2011-12-07 18:44
cbxbiker61 Wrote:Did you try with straight Alsa? If it behaves the same between the PulseAudio code and the Alsa code, I can't think of anything in the audio code that could be causing it. If PulseAudio pass-through doesn't work and Alsa does, then there could be a rate calculation that may be the issue.
I have tried the following:
* Dharma: OK
* pre-Eden: OK
* your pre-Eden, ALSA: not OK
* your pre-Eden, Pulse: not OK
I don't where it is, but as the "default" pre-Eden works correctly, I would assume there is a relation to AudioFilter. Hope you can find it; I'm using your pre-Eden as default media center
- Forsaken - 2011-12-08 00:57
Both 192000 and 192001 worked fine with movies I tried that gave no sound before.
Edit: Ok so I used the wrong xbmc build, now I don't get audio with 192001 but with 192000 I get audio and the receiver says DTS-MA.
- megakha - 2011-12-08 21:50
cbxbiker61 Wrote:Yes, music is taking a different path than video in the xbmc code. I'm pretty sure that the music path never attempts to use pass-through. That would be the reason why IsPassthrough is always false for music. I haven't looked at that for quite a while ...well now I have. Here's the relevant bit in PAPlayer.cpp.
I have played around with the code, it seems that PAPlayer changes the data itself, and sends stereo only to passthrough. I have changed settings to use DVDAudio player for music, It helped - now I am getting passthrough, but most of DTS tracks are not recognized correctly (hence, not played) although PAPlayer did play 2 channels from it before. aplay plays DTS correctly
- cbxbiker61 - 2011-12-09 02:40
sjongele Wrote:I have tried the following:
I actually don't think it's AudioFilter, but more the fact that pass-through is being handled just a bit differently than non-pass-through.
After looking at the code a bit, I'm thinking the problem lies with the way that DVDNAV_NAV_PACKET's are being handled. You'll notice DVDNAV_NAV_PACKET DISCONTINUITY messages in your log. I think that code needs to be improved. You'll find the interesting code in DVDInputStreamNavigator.cpp:ProcessBlock:line 461+ and DVDPlayer.cpp:OnDVDNavResult:line 3185+. It actually looks like in OnDVDNavResult someone had planned to flush it out a bit more. I don't think it's handling the timestamp changes properly when starting a new VOB.
I'm focused on true-hd support so I don't have time to look at this at the moment.
- sjongele - 2011-12-09 21:28
cbxbiker61 Wrote:I actually don't think it's AudioFilter, but more the fact that pass-through is being handled just a bit differently than non-pass-through.
You might be right, but I can't follow the logic yet; Dharma and pre-Eden also support passthrough for DTS and DD (PassthroughFFmpeg) and work correctly with these DVDs.
The logs seem tell me the "normal" pre-Eden corrects along the way (CalcFrameRate?).
pre-Eden with AudioFilter:
Quote:18:53:18 T:140301531572096 DEBUG: GL: Requested render method: 2
"normal" pre-Eden does:
Quote:20:08:12 T:140185186596736 DEBUG: GL: Requested render method: 2
- alexb38 - 2011-12-14 21:40
Not sure if it's the right topic, but I updated pulseaudio and xbmc-pvr on my setup to the latests git versions today and now I got pulseaudio passthrough working perfectly.
Now we just need to set the two audio parameters to "Defaults (pulseaudio)", check DTS and AC3 passthrough and it works.
I can now launch chromium and see a flash video and then go back to xbmc without messing with settings and still have great 5.1 sound on my films (btw I made a small script to launch an openbox session and a browser directly from xbmc, as I have xbmc running as a window manager. If anyone's interested I can make a tutorial).
Thanks to the developpers!
- elite1967 - 2011-12-15 10:27
alexb38 Wrote:Not sure if it's the right topic, but I updated pulseaudio and xbmc-pvr on my setup to the latests git versions today and now I got pulseaudio passthrough working perfectly.
Is the DTS-HD and True-HD passthrough working for you?
- alexb38 - 2011-12-15 14:36
That I can't tell, my amplifier is quite old and doesn't have HDMI inputs.
On my setup the passthrough goes to the optical output.
- kingmob - 2011-12-15 15:46
To be honest, your instructions are very vague. I'm sure they make sense to you, but I'm stumped. Would you consider explaining it to me and changing the startpost somewhat. Just to give you an idea, I'm not exactly a newbie
First some questions regarding why.
- Can you elaborate why I need to patch pulseaudio, shouldn't the latest pulseuadio already contain passthrough support?
- why is ac3filter necessary, what does it do?
- why is xbmc patched, to support this ac3filter?
I ask this since somehow a simple concept like passthrough appears to have been elevated everywhere on the internet to rocket science. I honestly do not understand why it is not working on my machine right now. As far as I know it should be working fine with the latest pulseaudio?
Next the how:
- how do i apply your patch to the pulseaudio code?
Hope I don't sound too stupid, but I read the whole topic, several manuals regarding pulseaudio and alsa, have managed to get passthrough working by accident here and there and I still don't have the slightest clue