Still no bitstreaming - XBMC Frodo 12.1, PulseAudio 3.0, Fedora Core 18
#1
I have been trying to get this working for a while, getting closer and closer, but still no go.

I have recently upgraded to Fedora 18 from (fc17), just so I could upgrade to PulseAudio 2.1 which is the default for FC18. Since then, upgraded to PulseAudio 3.0. This morning I have updated to XBMC 12.1. Kernel version is 3.8.3-203. I am using HDMI port on i3, built in HDA.

Here's where things stand:

1) I am noticing a bit of stutter when I play FLAC files. In the XBMC log, I see PulseAudio: Stream underflow. XBMC debug log is here: http://pastebin.com/UMn74G9t

2) When I play a mkv with DTS audio, I only get sound if I disable XBMC settings for DTS, i.e. only through Multi-channel PCM. If I enable DTS, I get no sound with Pulse Audio 3.0. With prior versions, used to get noise. I do see that the receiver mode actually does not change to DTS, remains as PCM.

I have kernel 3.8.x, so in theory the Intal HDA patches should be in there. I am wondering if I still need the CTLINDEX mod for /usr/share/alsa/cards/HDA-Intel.conf anyway?

Also, when I do aplay -L ( http://pastebin.com/mQkEnp7G ), I do not see any of the dmix or plughw devices.

With PulseAudio 3.0, I have changed very little Alsa/PA config:

I have a blank /etc/asound.conf
I have the standard/default /etc/alsa/alsactl.conf
I have not changed /etc/pulse/daemon.conf (did experiment with enable-lfe-remixing=yes and default-sample-rate=48000 to fix stuttering)
I currently have no change in /etc/pulse/default.pa
I have a small change /usr/share/pulseaudio/alsa-mixer/profile-sets/extra-hdmi.conf to change the HDMI device decriptions from "HDMI" to "HDMI-1, HDMI-2" etc.
I do not have a .asoundrc file

Here's the "pactl list" output - http://pastebin.com/ksK6SC8a .

With above config, I no longer need to do any channel map changes. I have used pavucontrol to select the correct output device. Both "speaker-test -c6 -l1 -twav" and the Gnome Sound config app send the correct output through the correct channels. "Speaker test -c6 -l1 -twav -D plughw:0,7" also works correctly.

What else can I try?

Thanks,
Shash
Reply
#2
The honest answer is: Whipe pulseaudio and use plain Alsa.

Pulseaudio implementation of xbmc is not that far yet - basically we only have a "default" device that is used there. Some of the pulse problems, like stuttering and so on are currently handled via a PR and will hit mainline soon, see github.
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-03-24, 18:45)fritsch Wrote: The honest answer is: Whipe pulseaudio and use plain Alsa.

Pulseaudio implementation of xbmc is not that far yet - basically we only have a "default" device that is used there. Some of the pulse problems, like stuttering and so on are currently handled via a PR and will hit mainline soon, see github.

Hi fritsch, I may have to ditch PA....let's see. I have a feeling if I just could set the default to plughw:0,7 or dmix and not hw:0,7, this may just work. That's the help I was seeking

Can you tell me a little more on the "PR" and where in github for the upcoming changes, I am very interested.

Thanks,
Shash
Reply
#4
You can watch the progress here: https://github.com/xbmc/xbmc/pull/2240 Remember this is a dev space and no discussion forum.

Problem with the custom device is, that pulseaudio bocks the device, so you cannot use it manually next to it. You can do following: change your default pulseaudio sink to something, that you are not using - e.g. Analog Audio - then the HDMI one should appear in xbmc.
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 fritsch. I applied those changes manually, rebuilt xbmc. Stuttering/buffer underflow gone!

Now for the bitstreaming solution .... :-)
Reply
#6
For the bitstream solution you have to implement something - we are currently discussing internally if we want to manage PA in the way SoftAE does it for windows / android / linux or if we want to create a more intelligent PA sink, that decidecs on its own :-)

After coping with SoftAE for some time - it seems that we could try the latter one :-). I am not sure yet, if PA can be used to passthrough DTS-HD / True-HD - i did not read much into the spec.

Currently it works like this for Alsa:
dvdplayer / paplayer -> SofAE::MakeStream() -> OpenSink() -> Init Alsa Sink (Raw | Transcode) -> AddPackets

For PA, we only have:
dvdplayer / paplyer -> PA::MakeStream() -> Use default Sink -> AddPackets

It gets a lot of fun - thx for jumping in
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#7
Sounds good, I'll be watching how the PA support in XBMC comes out. I looked at the code today when I was applying the patches, if I have some time (which is rare), I'd like to fire up Eclipse/CDT and step through that code.

In the meantime, I have rebuilt XBMC 12.1 without PulseAudio, and going through ALSA I got DTS passthrough mode to work.
Reply
#8
Can any AE devs chime in on the current status of Bitstreaming through pulseaudio?

I've read through a few different threads and from what I can gather, passthrough using pulseaudio still hasn't been fully implemented in AE yet? I can't find anyone who has definitevly said they have Passthrough working with pulseaudio in Frodo (I see a few posts of people getting it working in Eden, but that was before the new AE)

Pulseaudio has some nice features that I'd love to make use of in my HTPC (Primarily sound over TCP). But no AC3/DTS passthrough support is a deal breaker =(
Reply
#9
PA support did not change, besides the stuttering/underflow fixes.
Reply
#10
That's what I was afraid of.

Just to be clear, and get a definitive answer: Bitstreaming / Passthrough using pulseaudio is currently NOT supported in AudioEngine correct?
Reply
#11
Correct.

as far as i know
Reply
#12
Sorry to drag up an older thread, but does anyone know if support for this will be included in Gotham? For whatever reason I constantly struggle with sound problems between my receiver and pc with just plain alsa and pulseaudio resolves those problems.
Reply
#13
No, there is no Pulseaudio sink yet.

We have rewritten complete Audio Engine, but PA Sink is still missing. If you are volunteer, feel free to help us.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply

Logout Mark Read Team Forum Stats Members Help
Still no bitstreaming - XBMC Frodo 12.1, PulseAudio 3.0, Fedora Core 180