XBMC Audio goes HD

May 30th, 2012 dddamian

It’s been long-awaited, oft-discussed and it’s finally here – AudioEngine for XBMC!

What is AudioEngine? A complete re-write of the core audio sub-system of XBMC, and a two-year project comprising some 22,000 lines of code.

Spear-headed by lead-developer gnif, with contributions from many other team developers (dddamian, gimli, fneufneu, anssi, memphiz and others!), AudioEngine brings high-definition audio to the already amazing XBMC. No matter the audio source, AE handles the decoding, resampling, transcoding, encoding and streaming of your media, including for the first time DTS-MA, TrueHD and 24-bit audio. XBMC has never sounded better!

With full floating-point audio pipes, even mp3’s sound audibly better, with dithering built-in to further reduce quantization noise.

After a herculean effort and many lost evenings, the team is happy to announce that AudioEngine has been merged with the master branch as of May 15th 2012.  As such, it is now possible for the team as a whole to participate in it’s further development and for users to enjoy via the nightlies or your own builds.

Features of AE include:

support for DTS-MA / Dolby TrueHD Bluray formats (OSX pending)
support for 24-bit and floating-point audio at up to 384,000hz
mixing of all streams including GUI sounds even when transcoding audio
start-up enumeration of hardware audio devices and their capablities with log output
bitstreaming support in PAPlayer (XBMC’s music player)
upmixing of stereo to full channel layout
tighter syncing of A/V streams
floating-point processing of audio
24-bit and floating-point decoding/handling of mp3
full support for ReplayGain
built-in sample-rate conversion and transcoding

Planned Features for upcoming AE releases:

rules-based decisions for output formats based on hardware capabilites
a range of DSP’s (digital signal processors) including headphone head-related transfer function processing, DRC (dynamic range compression), low-pass filtering for subs and an equalizer function
custom channel-mixing/mapping for up and downmixing

It’s still early days for AE. Bugs will be found, and new and exciting features added. It’s stability and feature-set will develop as it matures and grows in the amazing open-source environment of XBMC.  We’d especially like to thank all the testers who helped make it possible to bring this merge about.

If you want to give it a try just grab one of the nightly versions on one of XBMC’s mirrors. For further details and support links please visit the AudioEngine page in our Wiki where you will also find links to the support threads in our forum, if you have additional questions.  From the development team, enjoy!

  1. Mitch
    May 30th, 2012 at 16:43 | #1

    Great news !

    Does HD audio work also on Macs ?

    • nedscott
      May 30th, 2012 at 17:07 | #2

      @Mitch
      At the moment, no. AudioEngine is in the Mac version (which brings far more than just HD audio), but there are some hangups with Apple’s audio APIs and HD audio that the team is currently working on.

  2. alex
    May 30th, 2012 at 16:46 | #3

    Does this update ends all problems with alsa configs on linux? Or makes it verry simple? Non the less good development thank to you all who made it possible

  3. Kevin Thomas
    May 30th, 2012 at 16:58 | #4

    Awesome Guys…Getting to the point of everything about XBMC turns to Gold….<3'ing all of the progress these last few years….Thanks to all for your time and efforts…HUGE DOUBLE THUMBS Up !!!!!….

  4. J
    May 30th, 2012 at 17:00 | #5

    I’m assuming that AE will be in the alpha2 that will be posted the beginning of next month? I downloaded the nightlies but they were too unstable for me.

    • nedscott
      May 30th, 2012 at 17:10 | #6

      @J
      Yes, they will be in the Monthly Snapshot for Alpha 2.

  5. Chris!
    May 30th, 2012 at 17:05 | #7

    Awesome news – Thanks all

  6. Jack
    May 30th, 2012 at 17:08 | #8

    Already using a nightly on Windows and have been really happy with it.

    Big thanks to all devs for their hard work in creating AE!

    When will the next official build be released that will incorporate AE?

  7. oos
    May 30th, 2012 at 17:16 | #9

    \o/ You rock!

  8. Greg
    May 30th, 2012 at 17:30 | #10

    Awesome. Great work. This will be good for when at friends with my MediaPC. I personally do not have a sound system sadly but all my friends do. My question though is I knew the engine was getting a rewrite and i’d been hearing that one of the features would be the ability to make audio louder (Like VLC’s ability to go beyond 100% and go louder). Will this be an included feature? It would be extremely useful to me I know. Some videos I have even with XBMC, System Audio, and TV audio maxed are still sometimes too low to hear. Would be great to turn it up louder instead of having to VNC into my MediaPC and play the files in VLC to increase the audio to audible levels. This is pretty much the only feature left that ive been waiting on. I am glad to see 10-Bit video is supported now (Not that my MediaPC can actually handle 10-Bit video. Need to build a new system some day for that). That and the audio was all ive been waiting on.

  9. Jason Kotzin
    May 30th, 2012 at 17:49 | #11

    I’m fearful this runs on top of Alsa? Or worse, Pulse? Eye twitches…

  10. Salem
    May 30th, 2012 at 17:53 | #12

    alex :
    Does this update ends all problems with alsa configs on linux? Or makes it verry simple? Non the less good development thank to you all who made it possible

    I’ve been using AE with OpenELEC frodo releases in their forum, which is linux based. It has drastically simplified my audio settings. No more half-dozen or more audio output options. For me, using optical out and HDMI, it just works.

  11. Salem
    May 30th, 2012 at 17:55 | #13

    @Salem

    …but know that if you’re running an AMD/ATI GPU as your audio output source, you will not achieve HD Audio, that problem lies solely on AMD finally taking care of their drivers in that regard.

  12. Barry
    May 30th, 2012 at 17:55 | #14

    Please tell me this will hit XBMCbuntu soon!

  13. Salem
    May 30th, 2012 at 17:55 | #15

    under linux…

  14. May 30th, 2012 at 18:03 | #16

    Will this help get audio to work better on ARM SoCs and new OS platforms too? :)

    Good enough for all audiophiles on any XBMC supported platforms as of yet? :D

  15. rikardo1979
    May 30th, 2012 at 18:09 | #17

    wow,you guys just make my day or better said my year ;) this is like my Xmas gift.thanks

  16. huffandpuff
    May 30th, 2012 at 18:11 | #18

    AE- Fantastic! still alsa issues here and there but it works. Great work guys….

    On another note when is http://trac.xbmc.org/ticket/13068 gonna get pulled in…?? <= big annoyances ^^ if we have to wait another month or twenty.

    good work pull the patches pls.

  17. JustinSane
    May 30th, 2012 at 18:27 | #19

    With this, it would also be better to have sound profiles. at the moment I use my headphones in the analogue port on my HTPC, and digital for my Logitech system.

    To switch between these, I have to change 3 options every time: optical/analogue, 2.0/5.1 and sound source. What the sound options page needs is a profiles selection and a save button.

    set sound options, hit save, keyboard pops up to give it a name, then ok then done. At the bottom of the save button (or above) a sound profiles option with up and down toggle at the side with the sound profile name.

    The z906 does have a headphone port, BUT I don’t want to waste power when I’m just using headphones and I would still need to change the option to 2.0 anyway so…….

    I posted this in the suggestions but had no takers. come on, I’m sure this would benefit more than just me.

  18. jmorey
    May 30th, 2012 at 18:47 | #20

    This is the best news I’ve heard this month and is sure to make the top ten items of the year!

  19. dddamian
    May 30th, 2012 at 18:49 | #21

    @JustinSane <- nice nic :)

    I personally like that idea, as more settings will be added once DSPs are rolled out (two out of three initial ones done, and the DSP class written). Will bring this up with the team.

  20. Anonymous
    May 30th, 2012 at 18:51 | #22

    is this AE build for windows or linux? becuase i install the latest nightly and i have trouble with audio and video…. by the way im using amd a6 apu

  21. Anonymous
    May 30th, 2012 at 18:54 | #23

    JustinSane :
    With this, it would also be better to have sound profiles. at the moment I use my headphones in the analogue port on my HTPC, and digital for my Logitech system.
    To switch between these, I have to change 3 options every time: optical/analogue, 2.0/5.1 and sound source. What the sound options page needs is a profiles selection and a save button.
    set sound options, hit save, keyboard pops up to give it a name, then ok then done. At the bottom of the save button (or above) a sound profiles option with up and down toggle at the side with the sound profile name.
    The z906 does have a headphone port, BUT I don’t want to waste power when I’m just using headphones and I would still need to change the option to 2.0 anyway so…….
    I posted this in the suggestions but had no takers. come on, I’m sure this would benefit more than just me.

    Yep I wold like this too….

  22. Evan Richardson
    May 30th, 2012 at 19:59 | #24

    Dumb question maybe, but how will we know if it’s enabled? besides obviously receivers saying HD Audio or what not, is there a setting or something?

  23. nedscott
    May 30th, 2012 at 20:12 | #25

    @Evan Richardson
    Yep, check the XBMC wiki page link in the blog post. It will show you the new audio settings page and how to enable everything.

  24. dddamian
    May 30th, 2012 at 20:13 | #26

    Anonymous :is this AE build for windows or linux? becuase i install the latest nightly and i have trouble with audio and video…. by the way im using amd a6 apu

    It’s for all platforms. Please follow the link to the wiki page for general help and links to the forum threads listed there. Troubleshooting will not be provided here.

  25. dddamian
    May 30th, 2012 at 20:13 | #27

    Evan Richardson :Dumb question maybe, but how will we know if it’s enabled? besides obviously receivers saying HD Audio or what not, is there a setting or something?

    You will see new settings in the Audio Options.

  26. skeeter alamo
    May 30th, 2012 at 20:22 | #28

    @Greg
    you can already sort of do that. in the osd for video in sound settings you see volume amplification. acts like a compressor to bring up the low level sounds.

  27. jajo
    May 30th, 2012 at 20:43 | #29

    Great work with AE!

    One question though… Can DTS HDMA and TrueHD be decoded and sent to my 24bit capable sound card, or does it only work through HDMI bitstreaming?

    / Jacob

  28. dddamian
    May 30th, 2012 at 22:37 | #30

    jajo :

    Great work with AE!

    One question though… Can DTS HDMA and TrueHD be decoded and sent to my 24bit capable sound card, or does it only work through HDMI bitstreaming?

    / Jacob

    TrueHD can be decoded losslessly to PCM and streamed to your card – DTS-MA cannot, it must be passed thru or you can play the DTS core.

  29. jgslima
    May 30th, 2012 at 22:51 | #31

    Thank you very much guys.
    One funny thing is that I was with the impression that XBMC team did not care for HD audio, and then we would not have this feature. It seems I was wrong. :)

  30. Oli_Oops
    May 30th, 2012 at 23:18 | #32

    Thanks Devs! Just installed nightly, runs like a charm, no issues to report. It sounds grrrreeat!

  31. Anonymous
    May 31st, 2012 at 00:27 | #33

    @JustinSane

    Seconded. I switch between an analog headphone set and a digital out for SPDIF. Sound profiles are a great idea. There is something similar in the PS3. The Sound Settings menu now has a multiple audio out setting that lets the PS3 shoot out digital audio [streams] and 2.0 analog at the same time.

    Would come in handy in an HTPC situation.

  32. May 31st, 2012 at 01:17 | #34

    Thank you XBMC team on the best Media Center System!

  33. Spook
    May 31st, 2012 at 01:35 | #35

    Great work guys!
    Been waiting for this for a very long time.

    XBMC truly is the most advanced media center in the market!

  34. May 31st, 2012 at 02:12 | #36

    This is great news! DTS-HD and i hope allot les ssounds problemes for lunix

  35. huffandpuff
    May 31st, 2012 at 04:30 | #37

    mic input doesnt work still… Im having doubts it will ever work out of the box

  36. May 31st, 2012 at 04:58 | #38

    AWESOME news!
    I just got a new surround sound setup so this is awesome indeed!

  37. misterkik
    May 31st, 2012 at 05:01 | #39

    Well done guys. Thanks and Viva XBMC !

  38. Joey
    May 31st, 2012 at 05:42 | #40

    Are you planning to support recordings in high-resolution media formats such as SACD (Super Audio CD) and DVD-A (DVD-Audio)?

    WAV, FLAC, WMA Lossless, and Apple Lossless rips are very convenient but music collectors keep buying physical media format :)

    That sounds great ! Pardon the pun ;)

  39. pszab
    May 31st, 2012 at 05:49 | #41

    Can an A10 Allwinner ARM cpu (or a similar >1Ghz) downmix all kinds of audio formats? I mean: is it strong enough to do it?

  40. jajo
    May 31st, 2012 at 06:52 | #42

    @dddamian

    In MPC-HC it is possible to use the DTS HD Master Audio decoder from Arcsoft (libdtsdecode.dll). Is it somehow possible to use the same decoder DLL in XBMC through AE?

  41. Kevin
    May 31st, 2012 at 08:07 | #43

    @Joey
    That was going to be my question as well as my only gripe with XBMC is the poor support for HD audio rips – I’ve been reduced to muxing the audio with a blank screen just to be able to get them to play consistently. It would be great to see the audio player front-end get some similar attention. Hopefully this is the start of something much better, thanks XBMC devs!

  42. dddamian
    May 31st, 2012 at 08:46 | #44

    @huffandpuff – mic input? for what?

    @Joey, DVD-A yes, but given the format is almost dead (at least SACD caught a second wind) it’s not a large priority when you can rip them to FLAC losslessly and gain the advantages of tagging, replaygain and individual tracks – that’s what I do with mine. SACD there are some potential licensing issues – a search of the forums explains more.

    @jajo – that is a proprietary commercial decoder – XBMC is open source and free, so we cannot use that decoder. I’d expect it won’t be too long before ffmpeg or lib come up with an open-source decoder.

  43. Zebraitis
    May 31st, 2012 at 09:54 | #45

    … nice!

    I thank you…

    MySQL based XBMC implementation thanks you…

    All 5 of my networked surround sound deployments of XBMC thanks you.

  44. matemaciek
    May 31st, 2012 at 10:06 | #46

    Great work guys! (((-: I’ll try to compile it as soon as I get home (-:

    One question: so, the only way to get full quality DTS-HDMA is bitstream to AVR? Is there any chance to bitstream from nVidia 9600M GT or is it just hardware incompatible?

  45. matemaciek
    May 31st, 2012 at 10:36 | #47

    PS. Thumbs up for DVD-A – not so dead, beautiful King Crimson 40th anniversary reeditions came out recently.

  46. jajo
    May 31st, 2012 at 11:02 | #48

    dddamian :
    @jajo – that is a proprietary commercial decoder – XBMC is open source and free, so we cannot use that decoder. I’d expect it won’t be too long before ffmpeg or lib come up with an open-source decoder.

    Yes, true. Let us hope that DTS HDMA can soon be decoded without proprietary software. Good work guys!

  47. Lloyd
    May 31st, 2012 at 12:18 | #49

    Nice work! Been using AudioEngine for a few weeks now and it ROCKS!!! Well done to all the devs.

  48. dandirk
    May 31st, 2012 at 12:33 | #50

    Running Openelec with XBMC Master that includes AE…

    Once you get the right hardware (that supports bitstreaming), HD audio was working wonderfully.

    Though I swear an even bigger improvement was that I didn’t have to SSH, run a command, copy a line, re-enter it into XBMC just to get HDMI audio to work (lets forget about menu/2ch audio which takes even MORE steps). Amazed the process isn’t stickied in the linux forum, since about 10 threads a day are started regarding HDMI audio.

    I was pleasantly surprised that XBMC AE even picked up my receiver, my audio options showed “HDMI DENON RECVR…”, truly easy and user friendly.

  49. Kristian
    May 31st, 2012 at 12:44 | #51

    dddamian :

    jajo :
    Great work with AE!
    One question though… Can DTS HDMA and TrueHD be decoded and sent to my 24bit capable sound card, or does it only work through HDMI bitstreaming?
    / Jacob

    TrueHD can be decoded losslessly to PCM and streamed to your card – DTS-MA cannot, it must be passed thru or you can play the DTS core.

    Hi ddamian,

    Can you elaberate a bit on TrueHD decoding to PCM. Is it possible to decode TrueHD into PCM and then output it via 5.1/7.1 analog connectors into to an amplifier? Ie. an amplifier that does not support hdmi/hd audio, but has 5.1 or 7.1 analog inputs? Or is it only for outputting LPCM via HDMI to an amplifier that does not support decoding HD formats itself?

    Either way, absolutely fantastic work on this new audio engine!

  50. Anonymous
    May 31st, 2012 at 13:12 | #52

    Anonymous :
    @JustinSane
    Seconded. I switch between an analog headphone set and a digital out for SPDIF. Sound profiles are a great idea. There is something similar in the PS3. The Sound Settings menu now has a multiple audio out setting that lets the PS3 shoot out digital audio [streams] and 2.0 analog at the same time.
    Would come in handy in an HTPC situation.

    I like that. For me, having multiple outputs going at the same time would be great for me as sometimes I use only the TV using HDMI for the audio for shows or movies. But there are times I would like to be able to use the optical out on the HTPC to my receiver to do just music so that I can switch off the TV. Multiple out at the same time would be great as I can turn on or off the device I want to use for audio without having to mess with settings in XBMC.

Comment pages
1 2 3 5357
Comments are closed.