Linux DTS/AC3 Problem on Ubuntu 13.04 XBMC 12.1
#1
Hey guys,

just reinstalled my HTPC yesterday with my new hardware setup, Intel Core i3, Z77 chipset. After a little bit of work I am pretty satisfied with Intel VAAPI compared to my previous Nvidia setup. Video playback is absolutely fine so far.
I am facing one problem though.
Digital sound isn't correctly initialized when playing back AC3 or DTS videos. This is what happens:

I launch a video with digital sound, video stutters really bad, framerate about 4-5 fps, I get no sound, my AV Receiver (Denon AVR 3313) isn't seeing the digital signal either. The HTPC is hooked up via HDMI to the Denon AVR.
Now as soon as I pause and play the video or seek in one direction, digital sound is there and everything is fine. So at least I got a workaround, but I'd like to have everything playing fine by just launching the video and not having to seek or anything to get digital sound working correctly.

Could anyone help me out here?

Thanks,

boba
Reply
#2
Please post an xbmc.log with debugging turned on.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#3
(2013-04-27, 14:12)fritsch Wrote: Please post an xbmc.log with debugging turned on.

Full debug log attached. This is me playing aviator.avi and getting the described behaviour. Video plays with about 5 fps, no sound, AVR not receiving AC3 signal from HTPC. After 10-20 seconds I seek back via remote, and all is well, 25fps, digital sound playing fine.

EDIT: ok, thought I could attach files here, I'll upload it to pastebin http://pastebin.com/Yynw3Avz
Reply
#4
Your pulseaudio is blocking the device:

Quote:15:39:02 T:140527675397888 INFO: CAESinkALSA::Initialize - Attempting to open device "hdmi:CARD=PCH,DEV=1"
15:39:02 T:140527675397888 INFO: CAESinkALSA - ALSA: pcm_hw.c:1293Sadsnd_pcm_hw_open) open '/dev/snd/pcmC0D7p' failed (-16): Device or resource busy
15:39:02 T:140527675397888 INFO: CAESinkALSA - Unable to open device "hdmi:CARD=PCH,DEV=1,AES0=0x06,AES1=0x82,AES2=0x00,AES3=0x02" for playback
15:39:02 T:140527675397888 INFO: CAESinkALSA - ALSA: pcm_hw.c:1293Sadsnd_pcm_hw_open) open '/dev/snd/pcmC0D7p' failed (-16): Device or resource busy

Code:
sudo apt-get remove pulseaudio libasound2-plugins libasound2-plugins:i386

reboot and reselect the audio device.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#5
Thanks, will try that. Or could I also just compile xbmc with --disable-pulse? Would this do the trick as well?

Thanks,

boba
Reply
#6
you need the other way round: --enable-pulse (you are currently running with alsa). Be aware the pulse implementation in xbmc is quite basic, only one "default" output, no intelligent sink.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#7
Hmm I am a bit confused now, I use to compile (my current build) with just --disable-debug. So Pulse should be enabled, right?

Anyway, I'll try your suggestion first, just hope that it's that easy to remove pulseaudio. I remember it's been a pain in the ass previously on ubuntu ....

boba

Alright, this fixes the issues in XBMC, thanks for that. Only problem is that by removing those packages, I lose Ubuntu Desktop/System sounds and LIRC stopped working as well, for whatever reason ... did I mention, that I indeed use Ubuntu itself as well on that machine?
Can I just remove Alsa then and keep pulse to also keep system sounds?

boba
Reply
#8
Best advise is to not have pulseaudio on your system and run XBMC with alsa only if you want to get bitstreaming working.
Reply
#9
iirc you only get proper audio on intel with kernel >=3.9 according to what I read so far re user reports anything lower is works for some ppl and some doesnt.

uNi
Reply
#10
Well, I had XBMC running on Ubuntu 12.04 till yesterday, with a nvidia based system though, same cabling through HDMI and AVR as now. I didn't have Pulseaudio removed there and had no problems. Now with 13.04 it is necessary again to remove Pulse altogether?

boba
Reply
#11
You could try to set the default pulse device to the Analog Output :-) before starting xbmc. That way it should be "free".
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#12
Just a headsup, if you are on 13.04 and running the latest kernels, audio might be bugged:

https://bugs.launchpad.net/ubuntu/+sourc...g/1172830/
Reply
#13
(2013-04-27, 16:28)boba23 Wrote: Well, I had XBMC running on Ubuntu 12.04 till yesterday, with a nvidia based system though, same cabling through HDMI and AVR as now. I didn't have Pulseaudio removed there and had no problems. Now with 13.04 it is necessary again to remove Pulse altogether?

boba

Its not the same is it?, Intel vs Nvidia to begin with, specially audio wise, hence why I said newer kernel 3.9 or better may be required due to waht I read from user feedback around forums.

Regarding Pulse its random behaviour it can depend on user configuration + setup, more often than not, pulse can cause problems but you cant set it as a rule of thumb for everyone since not everyone has an issue.

FYI your not going to get better advice than fritsch can provide regarding troubleshooting, he's knows his stuff and confusing things with unrelated information doesnt help anyone.

uNi
Reply
#14
You can also set pulse to use _another_ device then HDMI, that way it won't block it for Xbmc.
Although easiest and most secure is to remove pulse, like described above.
Reply
#15
Had the same problem. The video would lag and passthrough audio would not work before seeking (just 10 seconds forward, 10 seconds back again).

Solved it by running XBMC like this:

Code:
pasuspender -- xbmc

And then set both regular audio and passthrough audio to be played over HDMI in XBMC. I did not want to uninstall PulseAudio, so this was the best solution. Another solution is to disable autospawn in PulseAudio, and then kill it with "pulseaudio -k" when starting XBMC and running "pulseaudio --start" when XBMC exits (can be done easily in a shell script), but using pasuspender is way better.
Reply

Logout Mark Read Team Forum Stats Members Help
DTS/AC3 Problem on Ubuntu 13.04 XBMC 12.10