Kodi Community Forum

Full Version: audio passthrough not working with Nvidia Nforce4
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Hey,

I've been trying to get audio passthrough to work correctly, but am almost at a dead end. I can play analog audio fine, and I can play AC3/DTS/AAC as analog video fine as well.

However, as soon as I try to change to optical/coaxial for digital output, I get no sound for movie/video playback. Note that in many of my attempts at different config variations, I would get audio from the menus as they changed, but nothing from the video playback.

Also, I've empirically tested that it does work, with mplayer. I can play AC3/DTS and AAC -> AC3 out, with mplayer on this hardware, on this install, no problem. I get AC3 or DTS lighting up on my amp when playing AC3/DTS/AAC->AC3, and the you hear the difference. And, as background, I'm running coaxial digitally directly to the amp -- no HDMI for audio.

So, since mplayer works 100%, we're clearly looking at something with XBMC.

I've tried a few things, such as manually trying to modify options in advancedsettings.cfg, but no joy there.

Oh, and lastly, I tried with Debian Wheezy, and the version it has, as well as the version (current) from deb-multimedia.org, and as a last attempt I downloaded the live ISO and give it a whirl.

The live ISO reacted like all versions of Debian, no joy for video audio AC3 passthrough...

Is there something I'm missing? I've been googling and searching for quite a while now...

Note: to make it easier, I'd suggest focusing on the fact that the ISO did not work for me. It's a static environment....
I assume you did change the _passthrough_ device in xbmc to your SPDIF?
pastebin a debug log.
(2013-07-07, 19:51)wsnipex Wrote: [ -> ]I assume you did change the _passthrough_ device in xbmc to your SPDIF?
pastebin a debug log.

http://pastebin.com/iA1QpSDG

Yes, and no.

In the first version of xbmc I tried, I could and did try many of the devices provided for passthrough. That would be Debian version 11.0~git20120510.82388d5-1. It also allowed for customized audio devices, and I tried those too for passthrough.

For v12 (deb-multimedia's version), the SPDIF is pre-selected as passthrough, and I am unable to change it. Same for the ISO live CD.
I've scrolled through nearly all 9600 lines of your log, but did not see you actually _playing_ a file. Maybe I overlooked it. maybe not.

If you want help, please also help us by making a debug log that has the needed info, but not thousands of lines of bloat. So plz: Restart Xbmc, play a movie with passthrough sound(AC3 or DTS) and one without(mp3) for ~30secs. Then pastebin the log again.
Er. I did precisely what asked, at least according to the wiki. I started xbmc, went to settings, then turned on debug mode.

I then quit xbmc, and restarted it. I immediately walked to my living room, went into video->files->videodir, scrolled to find a movie with AC3, then hit play. I let it play for 10-20 seconds, then stopped it. I walked back to my desktop, and killed xbmc.

Whatever bloat there is, is xbmc debug log bloat, and the whole log is 10 minutes long... from the time I started xbmc, to walking to the living room, to scrolling through the files (to find an AC3 video), and through the entire test.

It should be noted that when xbmc starts up, it seems to be exceptionally slow when I first enter my video directory. In fact, it took more than 2 minutes from the time I told it to play the video, for the video to start. It's not like this after it has been started for a while, but there's not much I can do about the slowness when restarted.

I'll make another log, and manually edit it to remove everything but the two play tests. It should be noted, that had I done that prior to now, someone would likely say "why did you edit the log, we need the WHOLE thing!".
It scans your complete video dir for codec info, when entering it. You can disable it by unchecking extract media information somewhere in Video Settings.

Can you make a screenshot of your Audio Settings?

And tell me the model of your AVR?
http://pastebin.com/FbqCSS65

I unchecked the extract media option, it seems to have helped.

I also waited ~ 10 minutes after starting xbmc in debug mode, then did a tail -f > /tmp/file.log, it seems much less verbose. You can see me scrolling down, finding the videos, etc.

AVR=Pioneer VSX-515. However, keep in mind that mplayer output works perfectly. For mplayer, if you're curious, I use in my config file:

ac=hwdts,hwac3,
ao=alsa:device=hw=0,0
srate=48000
channels=6
af=lavcac3enc=1

The above works for AC3, DTS, and standard stereo audio too. It plays everything -- including converting AA3 -> AC3.

With XBMC, during the log above, the AC3 movie = no sound, yet the menus sounds work fine, and a non-AC3/DTS/AAC video had perfect sound.

I don't have anywhere to put a screenshot, although I snapped one with my camera. Doesn't look like I can attach one here. Any idea on a free, pastebin like service that doesn't need you to install an app (google/dropbox/etc), or need an account?

Thanks btw.

As a FYI:

- I've changed it to analog in the past -- everything plays fine then, which makes sense -- but of course no AC3/DTS, which also makes sense
- for this test it was on:

- Optical/Coax
- Speaker Config -> 5.1
- Boost Volume -> on
- Output Stereo to all speakers -> on
- AC3 -> on
- DTS -> on
- AAC -> off
- (rest are blacked out by config screen)
- Audio Output Device -> Default (Nvidia CK804 Nvidia CK804)
- Passthrough -> Nvidia CK804, Nvidia CK804 IEC958 S/P...
- Play GUI -> only when playback stopped

Note: I can not change passthrough, it is always on S/PDIF

Note#2: I've tried Speaker config at 2.0 5.1 7.1 mixed with Output Stereo on all speakers on and off, same with boost volume. I'm fairly sure I've tried all permutations, 12?

If need be, it's not a big deal to compile this -- that is, especially if you have any special ./config settings you'd prefer. Or a newer branch you'd prefer to test.
17:29:33 T:140602481919744 INFO: CAESinkALSA::Initialize - Opened device "iec958:CARD=CK804,DEV=0,AES0=0x06,AES1=0x82,AES2=0x00,AES3=0x02"
17:29:33 T:140602481919744 DEBUG: CAESinkALSA::InitializeHW - Request: periodSize 2400, bufferSize 9600
17:29:33 T:140602481919744 DEBUG: CAESinkALSA::InitializeHW - Got: periodSize 2400, bufferSize 9600
17:29:33 T:140602481919744 INFO: CSoftAE::InternalOpenSink - RAW passthrough enabled
17:29:33 T:140602481919744 INFO: CSoftAE::InternalOpenSink - keeping old sink with : AE_FMT_AC3, FL,FR, 48000hz
17:29:33 T:140602481919744 DEBUG: CSoftAE::InternalOpenSink - Internal Buffer Size: 9600
17:29:33 T:140602421405440 DEBUG: CDVDPlayer::HandleMessages - player started

this looks fine. Did you unmute the spdif device?
(2013-07-09, 10:29)wsnipex Wrote: [ -> ]17:29:33 T:140602481919744 INFO: CAESinkALSA::Initialize - Opened device "iec958:CARD=CK804,DEV=0,AES0=0x06,AES1=0x82,AES2=0x00,AES3=0x02"
17:29:33 T:140602481919744 DEBUG: CAESinkALSA::InitializeHW - Request: periodSize 2400, bufferSize 9600
17:29:33 T:140602481919744 DEBUG: CAESinkALSA::InitializeHW - Got: periodSize 2400, bufferSize 9600
17:29:33 T:140602481919744 INFO: CSoftAE::InternalOpenSink - RAW passthrough enabled
17:29:33 T:140602481919744 INFO: CSoftAE::InternalOpenSink - keeping old sink with : AE_FMT_AC3, FL,FR, 48000hz
17:29:33 T:140602481919744 DEBUG: CSoftAE::InternalOpenSink - Internal Buffer Size: 9600
17:29:33 T:140602421405440 DEBUG: CDVDPlayer::HandleMessages - player started

this looks fine. Did you unmute the spdif device?

Yes, I did. I wouldn't be getting the non-AC3/DTS audio through otherwise...
non passthrough uses the other audio device.
When I play any audio with mplayer, if I mute my SPDIF device, I lose all sound. AC3/DTS/AAC->AC3, normal audio, you name it. Before replying to you I verified this.

Every howto I've ever read, with respect to mplayer, xine, and "getting digitial audio to work" mirrors this. Granted, these how-tos were read several years ago, and ALSA certainly could have changed in the last few years.. although, so far, it does not seem to have...

Please keep in mind that I'm using coaxial directly to my AMP. Not sure if that's the difference we're seeing. No HDMI here, nothing through the TV, no weirdness, just plain ALSA.

I'm not sure how XBMC does it, but I'm willing to bet that if I mute my SPDIF output, I'll lose all sound there too. I can't empirically verify that until tonight, though.

And again, just to clarify, no -- it is not muted.
I see nothing obvious wrong in the logs.
What bothers me is that I believe there was an entire rewrite of the audio backend from 11 to 12? Yet, I get the same symptoms from both.

Meanwhile, zero problems with mplayer. I'm wondering how comprehensive the re-write was. Or, maybe the pre and post re-write code both depend upon some library in Debian that's the issue?

{for further clarification, I definitely get AC3 via mplayer and DTS. The difference in sound is quite noticeable, as well as the lights on the lamp displaying DTS or AC3}

Any ideas on that front?
do you have any asound.conf or asoundrc files? if yes move them out of the way.
also pastebin the output of aplay -l and aplay -L
Everything is on the same drive, but NFS mounts are a problem, so -xdev is OK here:

[email protected]:/# find / -xdev | grep asound.conf
/usr/share/xbmc/system/asound.conf
[email protected]:/# find / -xdev | grep asoundrc
/usr/share/doc/libasound2/examples/asoundrc.txt.gz

[email protected]:/# dpkg -S /usr/share/xbmc/system/asound.conf
xbmc-data: /usr/share/xbmc/system/asound.conf

Should I leave this asound.conf alone?

I've included the asound.conf, and the two aplay commands here:

http://pastebin.com/P8HmHmrx

Thanks!
Pages: 1 2