• 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 18
XBMC PulseAudio passthrough support (including Nvidia) is available
#46
I read that and will try the two files when I get home but I am on the newest nvidia drivers for sure since I am on Ubuntu 11.04 with the xorg-edgers ppa

Tested and it didn't work. It totally messed up my audio and caused failure to initialize for everything.
Reply
#47
I must say ... nice work! I've just been testing this as a separate install, I was having a problem with pulseaudio not starting up, I'd have to manually run pulseaudio from the terminal to get it started, but the daemon would fail.

I run a headless server build, I was about to give up, every time I'd run pulseaudio from the CLI - I was getting 'Autolaunch error: X11 initialization failed'

Then it clicked, I was ssh-ing into the box, a simple 'export DISPLAY=:0.0' got it running.

Currently have "It's all gone Pete Tong" and the lovely Onkyo receiver now states 'DTS-HD MSTR'
Reply
#48
shadow Wrote:I thought it would be nice to make a quick script people could use to try this out. So here it is.

Code:
#!/bin/sh

#Requires a xbmc ppa to get all xbmc build dependencies.
sudo apt-get build-dep pulseaudio xbmc

git clone git://git.collabora.co.uk/git/user/arun/pulseaudio.git
git clone git://github.com/cbxbiker61/audiofilter.git
git clone git://github.com/cbxbiker61/xbmc.git

cd pulseaudio
git checkout passthrough
./bootstrap.sh
./configure --prefix=/usr --sysconfdir=/etc
make -j`grep 'processor' /proc/cpuinfo | wc -l`
sudo make install
pulseaudio -k

cd ../audiofilter/gnu/
make -j`grep 'processor' /proc/cpuinfo | wc -l`
sudo make install

cd ../../xbmc
./bootstrap
./configure
make -j`grep 'processor' /proc/cpuinfo | wc -l`
sudo make install
cd ..

Thanks for the script. I'm running Ubuntu 10.10 64 bit with a ATI Radeon HD 5450 card. Anyway, DTS MA is not bitstreaming. Haven't tried TrueHD yet, but all the other formats (DD, DTS) work. However, i'm experiencing music dropouts or subtle skips time to time. Maybe I did something wrong somewhere. Any ideas?
Reply
#49
RPD Hockey Wrote:Thanks for the script. I'm running Ubuntu 10.10 64 bit with a ATI Radeon HD 5450 card. Anyway, DTS MA is not bitstreaming. Haven't tried TrueHD yet, but all the other formats (DD, DTS) work. However, i'm experiencing music dropouts or subtle skips time to time. Maybe I did something wrong somewhere. Any ideas?

When did you do your git clone? About a week ago I made some changes to eliminate music drop-outs. You might want to do a git pull and rebuild if you're code is older than that.

BTW, I'm pretty sure your Radeon can't pass the 192khz necessary to do DTS-MA. So it'd be working with the lower bit-rate stuff like dd and dts but not anything requiring higher bit-rates.

Good to see someone with Radeon trying the code. I'll have to add an advanced option to limit the bit-rate to 48Khz so we can at least pass-through the core DTS of DTS-HD on platforms that don't support higher bit-rates.

In the future it's possible I may be able to get dts-hd passthrough working on Radeon at 48Khz. At the moment I'm waiting on some changes to pulseaudio.
Reply
#50
The Ati HD5xxx/6xxx series card can bitstream HD audio up (DTS-HD and True HD) to 192Khz/24bit using ffdshow on Windows just fine, and have been doing so for over a year, so no, it`s not a hardware limitation. They were the first video cards capable of bistreaming HD audio, before that only the Asus HDAV 1.3 could to that

I have both a HD5450 card and a HD6230 (Zacate E350 APU) at home, if you want, i can help out with the testing, just send me a PM with a Live Mess/ Yahoo Mess/Skype ID and we`ll talk. I`m only in my first year of Computer Science college so i`m just learning the basics of C programming, so i can`t be much of assitance with the actual code.
Reply
#51
Thanks for the reply. I did have your updated files. XBMC would play DTS Core 1.5 instead of the MA. I've done some more research on the topic and it seems that the consensus is that you have to have dog ears to tell the difference between the DTS Core and DTS MA. However, it just makes me feel good when I see the DTS-HD symbol light up on my receiver.

Anyway, I got tired of all the quirks my Radeon card had with Linux in general and decided to use Windows 7 for the time being. Hopefully support will improve in the near future, and it looks like it's going to with guys like you working on it. With that being said, even on Windows, it's a bit of a PITA to bitstream DTS-HD. Hopefully Eden will support bitstreaming of these codecs soon. I don't want to use something like TMT3/5 just for bitstreaming and lose everything else XBMC brings to the table.

SpectreX: I was reading that for XBMC you need to use DSplayer with FFDshow to bitstream properly. However, I heard that DSPlayer support for XBMC had been discontinued. Just curious, if applicable, what setup are you using with XBMC / Windows 7 to bitstream HD codecs?
Reply
#52
SpectreX Wrote:The Ati HD5xxx/6xxx series card can bitstream HD audio up (DTS-HD and True HD) to 192Khz/24bit using ffdshow on Windows just fine, and have been doing so for over a year, so no, it`s not a hardware limitation. They were the first video cards capable of bistreaming HD audio, before that only the Asus HDAV 1.3 could to that

I have both a HD5450 card and a HD6230 (Zacate E350 APU) at home, if you want, i can help out with the testing, just send me a PM with a Live Mess/ Yahoo Mess/Skype ID and we`ll talk. I`m only in my first year of Computer Science college so i`m just learning the basics of C programming, so i can`t be much of assitance with the actual code.

The keyword being "On Windows", Anssi (The guy who developed the ffdshow bitstreaming) is a team member here and he stated in the AE thread that ATI uses some funky non-standard way of doing things in Linux so nothing over 48KHz (Or 6.144 Mbps) works.

Anssi Wrote:E-AC-3 should work (at least on Linux) on all cards that have 192kHz stereo support, which is probably everyone except ATI cards (see below). Also (again, at least on Linux) DTS-HD streams that are below 6.144 Mbps should work on all cards that have 192kHz stereo support (i.e. e.g. ION / GF9400 is enough) (I tested with the only full-length sample I have and the stream never peaked over 6.144 Mbps for the duration of the movie, so these do exist). This is not possible for low-bitrate TrueHD streams, though.

Support status of full (over 6.144 Mbps) DTS-HD / TrueHD (from a driver/hw standpoint; not yet in XBMC):
  • NVIDIA GeForce 200 series works partially (I believe it is slightly buggy and it depends on the A/V receiver if it works or not), but on *Linux only*; the 200 series is not supported on Windows at all
  • NVIDIA GeForce 400 series works
  • ATI cards do not work on Linux; they seem to have a non-standard interface for anything else than 48kHz stereo audio, some information from AMD about that will be needed to get it working (or some serious trial-and-error by someone who has such a card Smile)
  • ATI cards work on Windows, but I don't know which ones have bitstreaming support
  • INTEL HDMI graphics chipsets that should work, at least on Linux: IbexPeak (0x80862804), CougarPoint
  • INTEL HDMI graphics chipsets that have no hw support: Cantiga, Eaglelake
  • INTEL HDMI graphics chipsets that I don't know about: Bearlake, IbexPeak (0x80860054), Crestline

Source: http://forum.xbmc.org/showpost.php?p=665...tcount=125
Living Room: ASUS Chromebox / OpeneElec 5 / Kodi 14.2
Bedroom: Amazon FireTV Stick / Kodi 14.2
Home Office: Amazon FireTV Stick / Kodi 14.2
Windows Server: Intel Core i3-2100T / 8GB Ram / 48TB / MySQL / StableBit DrivePool on Server 2012 R2 Standard
Reply
#53
Crap. i`m sorry to hear that. I was hoping of creating my own an XBMCbuntu ISO with HD audio bitstreaming and a compiled version of XBMC with VAAPI enabled for my AMD Zacate build, but it seems it`s a no go Sad. VAAPI is still immature and HD audio is a no go. Back to Win 7 for me.

@RPD Hockey - Nothing atm. I was using DSPlayer for some time, but after it got discontinued i went back to normal XBMC and i`m waiting for the AE branch to be forked in the master branch so i can get HD auio bitstreaming via it. You can use MPC-HC + ffdshow as an external player if you want.

As for telling the difference, i can hear a subtle difference between the DTS-HD and lossy DTS. Not as much as between MP3 and FLAC, but still. On the other hand there is a good diffrence between that crappy DD (AC3) and TrueHD.
Reply
#54
Have you ever had any problem with the PA passthrough branch hard locking your computer? I just bought everything to make a standalone HTPC (all work before was on my Laptop) and I am trying to set it up but when I use the passthrough branch it hard locks the computer. Within seconds of bootup and the only way onto the computer is the boot a live disc and "make uninstall" pulseaudio from a chroot environment. Then I can boot back into the system.

I am using the same software setup as on my laptop.

Ubuntu 11.04 alpha (needed to support my newer hardware) out of the box

xbmc runs fine with PA uninstalled and just using straight alsa
Reply
#55
shadow Wrote:Have you ever had any problem with the PA passthrough branch hard locking your computer? I just bought everything to make a standalone HTPC (all work before was on my Laptop) and I am trying to set it up but when I use the passthrough branch it hard locks the computer. Within seconds of bootup and the only way onto the computer is the boot a live disc and "make uninstall" pulseaudio from a chroot environment. Then I can boot back into the system.

I am using the same software setup as on my laptop.

Ubuntu 11.04 alpha (needed to support my newer hardware) out of the box

xbmc runs fine with PA uninstalled and just using straight alsa

Which kernel version is Ubuntu 11.04 alpha using?

If it's using 2.6.38.X, I've just submitted a patch to the kernel mailing list to fix a hard lockup that's related to sound (the patch is on the list today). So far the only people with the lockup that I know of are GTX460 owners (me and another guy that posted on the kernel mailing list). As far as the bug goes though, it really could affect anyone under just the wrong conditions.

Actually I just looked at the specs for Ubuntu 11.04 alpha and it probably has the bug. So a newly compiled kernel with the patch applied will probably fix it.

Look for "Linux 2.6.38 freeze because of sound/core/pcm_lib.c commit"
Reply
#56
That may be it since my new card is close to that. It is a GTS 450.
Whereas my laptop has a GTS 250M which is a older gt215 chipset. I don't know which chipset my new one uses.
Reply
#57
I am getting my system setup to compile the kernel now. One bit of info I found out accidentally though is that even without pulseaudio running and setting the output to custom "hdmi:1,1" your version of XBMC will still bitstream DTS-HD. Although after a minute it went bad and crackling sounds started up.


Ok for a guy that has made a couple Linux From Scratch systems I sure hate compiling kernels now a days, but that patch worked. (OK it wouldn't apply so I manually edited the file with vi) among numerous other problems.

I noticed that the crackling sound came out even when using PA so it must be a bug that I never noticed before since I didn't take the time to watch the movie straight and just jumped around in it testing. I also tried it on my laptop and it was the same.

The movie is A Nightmare on Elm Street 1984 version with 7.1ch DTS-HD MA audio and it starts the second the movie name shows up on screen.
Reply
#58
I just can't get a system I like, I got sick of trying to get it setup good under 11.04 so I decided that since I already had to update alot of stuff even under 11.04 I might as well just make the changes to xbmc-live even though it is 32bit so I lost some ram but oh well.

So I installed it updated the kernel to 2.6.39-rc1 updated the nvidia drivers manually installed libbluray etc

When I moved onto audiofilter I can't get it to compile now. Any idea what the problem is?

...
g++ -c -D_GNU_SOURCE -g -O -Wall -I../../include -I../../lib ../../lib/VArgs.cpp -o VArgs.o
g++ -c -D_GNU_SOURCE -g -O -Wall -I../../include -I../../lib ../../lib/VTime.cpp -o VTime.o
g++ -c -D_GNU_SOURCE -g -O -Wall -I../../include -I../../lib ../../lib/WavSink.cpp -o WavSink.o
In file included from ../../include/AudioFilter/WavSink.h:6,
from ../../lib/WavSink.cpp:2:
../../include/AudioFilter/AutoFile.h:36: error: ‘off64_t’ does not name a type
../../include/AudioFilter/AutoFile.h:40: error: ‘fsize_t’ does not name a type
../../include/AudioFilter/AutoFile.h:62: error: ‘fsize_t’ has not been declared
../../include/AudioFilter/AutoFile.h:67: error: ‘fsize_t’ has not been declared
../../include/AudioFilter/AutoFile.h:96: error: ‘fsize_t’ does not name a type
../../include/AudioFilter/AutoFile.h:111: error: ‘fsize_t’ has not been declared
../../include/AudioFilter/AutoFile.h:112: error: ‘fsize_t’ does not name a type
../../include/AudioFilter/AutoFile.h:117: error: ‘fsize_t’ does not name a type
../../include/AudioFilter/AutoFile.h: In static member function ‘static bool AudioFilter::AutoFile::isLarge(int)’:
../../include/AudioFilter/AutoFile.h:64: error: ‘fsize_t’ was not declared in this scope
../../include/AudioFilter/AutoFile.h:64: error: expected primary-expression before ‘)’ token
../../lib/WavSink.cpp: In member function ‘void AudioFilter::WavSink::initRiff()’:
../../lib/WavSink.cpp:67: error: ‘class AudioFilter::AutoFile’ has no member named ‘pos’
make[1]: *** [WavSink.o] Error 1
make[1]: Leaving directory `/home/xbmc/audiofilter/gnu/out.i686'
make: *** [all] Error 2
Reply
#59
shadow Wrote:I just can't get a system I like, I got sick of trying to get it setup good under 11.04 so I decided that since I already had to update alot of stuff even under 11.04 I might as well just make the changes to xbmc-live even though it is 32bit so I lost some ram but oh well.

So I installed it updated the kernel to 2.6.39-rc1 updated the nvidia drivers manually installed libbluray etc

When I moved onto audiofilter I can't get it to compile now. Any idea what the problem is?
make: *** [all] Error 2

I just pushed an audiofilter fix for that.
Reply
#60
Thanks that worked, my system is nearly complete. My last problem is for some reason PA doesn't start with the system and the only way to get sound is to ssh in after boot and start it manually
Reply
  • 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 18

Logout Mark Read Team Forum Stats Members Help
XBMC PulseAudio passthrough support (including Nvidia) is available3