AudioEngine: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
m (Robot: Changing Category:XBMC Manual to Category:Manual; cosmetic changes)
(23 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{mininav|[[Development]]}}
{{mininav|[[Development]]{{l2|[[Audio]] }} }}


'''AudioEngine''' or ('''AE''') refers to XBMC's new audio system. For more details about history see [[AudioEngine#History_and_Team|AudioEngine/History and Team]].
'''AudioEngine''' or ('''AE''') refers to XBMC's new audio system.  
 
<center>{{Navigation
| nav name =Audio
| link1 =AudioEngine
| link2 =AudioEngine/HOW-TO: Configure audio
| link2 name = HOW-TO: Configure audio
| link3 =Windows Settings for AudioEngine
| link3 name = Windows Settings
| link4 =Intel Linux Modifications for HD Audio
}}</center>


== Features ==
== Features ==
AudioEngine replaces SDL and brings some of the external dependencies into XBMC, and wraps up all the different media types for mixing, samplerate conversion, format conversion, encoding, upmix, downmix, etc.
AudioEngine replaces SDL and brings some of the external dependencies into XBMC, and wraps up all the different media types for mixing, samplerate conversion, format conversion, encoding, upmix, downmix, etc.
<br>
<br />
;Features of AE include:
;Features of AE include:
* ''Support for DTS-HD MA / Dolby TrueHD Bluray formats''
* ''Support for DTS-HD MA / Dolby TrueHD Bluray formats''
Line 31: Line 21:
It's still early days for AE. Bugs will be found, and new and exciting features added.
It's still early days for AE. Bugs will be found, and new and exciting features added.


== AudioEngine Settings ==
== Settings ==
Audio settings can be found in the GUI at
Audio settings can be found in the GUI at


Line 42: Line 32:
A summary of some of the supported formats within the AudioEngine  
A summary of some of the supported formats within the AudioEngine  


{| class="wikitable" style="text-align: center; color: black;"
{| class="prettytable" style="text-align: center; color: black;"
|-
|-
!rowspan="3" style="color:#000000; background-color:#DBDBDB;" | '''Audio Codec'''
!rowspan="3" style="color:#000000; background-color:#DBDBDB;" | '''Audio Codec'''
Line 88: Line 78:
| 1.7 Mbit/s
| 1.7 Mbit/s
| 48 kHz / 24 bit  
| 48 kHz / 24 bit  
| colspan="6" style=background:#FFC890 | N/A
| colspan="6" {{NA}}
|-
|-
| align="left"|'''DTS'''
| align="left"|'''DTS'''
Line 100: Line 90:
| 768 kbit/s
| 768 kbit/s
| 48 kHz / 16 bit
| 48 kHz / 16 bit
| colspan="3" style=background:#FFC890 | N/A
| colspan="3" {{NA}}
| rowspan="2"| DTS capable receiver
| rowspan="2"| DTS capable receiver
|-
|-
| align="left"|'''DTS 24/96'''
| align="left"|'''DTS 24/96'''
| colspan="6" style=background:#FFC890 | N/A
| colspan="6" {{NA}}
| 5.1
| 5.1
| 1536 kbit/s
| 1536 kbit/s
Line 134: Line 124:
| 18 Mbit/s
| 18 Mbit/s
| 192 kHz / 24 bit
| 192 kHz / 24 bit
| colspan="6" style=background:#FFC890 | N/A
| colspan="6" {{NA}}
| TrueHD capable receiver
| TrueHD capable receiver
|-
|-
Line 154: Line 144:
| 18 Mbit/s
| 18 Mbit/s
| 192 kHz / 24 bit
| 192 kHz / 24 bit
| colspan="6" style=background:#FFC890 | N/A
| colspan="6" {{NA}}
|-
|-
| 7.1
| 7.1
Line 162: Line 152:
| 18 Mbit/s
| 18 Mbit/s
| 96 kHz / 24 bit
| 96 kHz / 24 bit
| colspan="6" style=background:#FFC890 | N/A
| colspan="6" {{NA}}
|}
|}


Line 168: Line 158:
Below You can find a excellent range of flac test audio files stereo/multichannel and varied sample/bit rates and quality.
Below You can find a excellent range of flac test audio files stereo/multichannel and varied sample/bit rates and quality.


Click [http://www.2l.no/hires/ here to] to download flac test files
Click [http://www.2l.no/hires/ here] to download flac test files
 
== Hardware capabilities and reported to work ==


:{|class="wikitable" style="text-align: center; color: black;"
Click [http://download.wavetlan.com/SVV/Media/HTTP/http-wma.html here] to download wma test files
!colspan="9" style="color:#000000; background-color:#DBDBDB;"|'''Legend - Templates - Formatting'''
|-
|{{Yes}}
|{{No}}
|{{NA}}
|{{?}}
! '''Code Name'''
! colspan="3" | '''Plug'''
! '''Receiver'''
|-
|<nowiki>{{yes}}</nowiki>
|<nowiki>{{no}}</nowiki>
|<nowiki>{{NA}}</nowiki>
|<nowiki>{{?}}</nowiki>
![http://en.wikipedia.org/wiki/Comparison_of_AMD_graphics_processing_units See: ATI]<nowiki> | </nowiki>[http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units See: Nvidia]
|<nowiki>'''HDMI'''</nowiki>
|<nowiki>'''Optical'''</nowiki>
|<nowiki>'''Analog'''</nowiki>
|<nowiki>'''TV/Receiver/Brand'''</nowiki>
|}


{{note|'''Dolby Digital Plus''' a.k.a. '''DD+ or E-AC-3''' is supported in AE > ActiveAE (as of XBMC v13) and will not work properly in XBMC 12.3 or Older.}}
Click [http://www.testsounds.com/ here] to download various audio system test files


Feel free to update this list accordingly and add fields to table for other Audio types your hardware can or cant do.
== Audio hardware compatibility ==
<big>'''''Please add your experience'''''</big>
<big>{{See also | Audio hardware compatibility}}</big>
{| class="wikitable" style="text-align: center; color: black;"
! colspan="17" style="color:#000000; background-color:#DBDBDB;" | '''ATI / AMD'''
|-
! {{AEWorklistHeader}}
|-
| AMD A4-2800K APU
| Radeon HD 6450M
| Caicos
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 12.1
| {{No}}
| {{No}}
| '''HDMI'''
| '''Denon'''
| Windows 7 x64 Pro
|-
| ASRock E350M1
| Radeon HD 6310
| Wrestler
| {{Yes}}
| {{?}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 13.2 Beta6
| {{No}}
| {{No}}
| '''HDMI'''
| '''Onkyo HT-R380'''
| Windows 8 Pro, x64
|-
| ASRock E350M1
| Radeon HD 6310
| Wrestler
| {{Yes}}
| {{?}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{?}}
| 12.10
| {{Yes}}
| {{No}}
| '''HDMI'''
| '''Onkyo HT-R380'''
| OpenELEC 3.0 RC4 (2.99.4)
|-
| AMD A4-3400 APU
| Radeon HD 6410D
| WinterPark
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| {{?}}
| {{Yes}}
| {{?}}
| 5.12.0.13
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Windows 8 RTM
|-
| AMD A8-3870K APU
| Radeon HD 6550D
| BeaverCreek
| {{Yes}}
| {{No}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{?}}
| 12.1
| {{Yes}}
| {{No}}
| {{?}}
| {{?}}
| Ubuntu 12.04 LTS
|-
| AMD A8-3870K APU
| Radeon HD 6550D
| BeaverCreek
| {{?}}
| {{Yes}}
| {{?}}
| {{Yes}}
| {{?}}
| {{Yes}}
| {{?}}
| 12.4
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Windows 7 x64 Pro
|-
| Asus E45M1-I Deluxe
| Radeon HD 6320
| Zacate
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{?}}
| 12.10
| {{Yes}}
| {{No}}
| '''HDMI'''
| '''Denon AVR-3312'''
| OpenELEC 3.0 (RC 1)
|-
| ZOTAC ZBOX AD04 PLUS
| Radeon HD 6320
| Zacate
| {{Yes}}
| {{yes}}
| {{Yes}}
| {{No}}
| {{No}}
| {{no}}
| {{?}}
| {{?}}
| {{Yes}}
| {{No}}
| '''HDMI'''
| '''Denon AVR-1713'''
| XBMCbuntu 12.0 "FRODO"
|-
| Zotac ZBOX AD06
| Radeon HD 7340
| Zacate
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{?}}
| 12.10?
| {{Yes}}
| {{No}}
| '''HDMI'''
| '''Samsung AV-R720'''
| OpenELEC 3.0.0
|-
! colspan="17" style="color:#000000; background-color:#DBDBDB;" | '''NVIDIA'''
|-
! {{AEWorklistHeader}}
|-
| Gigabyte GV-N560OC-1GI
| GeForce GTX 560
| GF110/GF114
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| {{Yes}}
| {{?}}
| 313.09
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| OpenELEC 3.0
|-
| Asus EN210
| GeForce 210
| GT218
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{Yes}}
| {{?}}
| 302.17
| {{No}}
| {{Yes}}
| {{?}}
| {{?}}
| Ubuntu 12.04 LTS
|-
| Gigabyte GT210
| GeForce 210
| GT218
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| {{Yes}}
| {{?}}
| 310.19
| {{No}}
| {{Yes}}
| {{?}}
| {{?}}
| Debian Wheezy
|-
| Asus ENGT430 DC SL DI
| GeForce GT 430
| GF108
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 295.59
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Ubuntu 12.04 LTS
|-
| Asus ENGT520
| GeForce GT 520
| GF119
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 310.19
| {{No}}
| {{No}}
| '''HDMI'''
| '''Yamaha/HTR-4063'''
| Debian Wheezy
|-
| EVGA GTX550
| GeForce GTX 550 ti
| GF116
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 304.43
| {{No}}
| {{No}}
| '''HDMI'''
| '''Sony/STR-DN610'''
| Ubuntu 12.10
|-
| Asus ENGTX560
| GTX 560 TI
| GF110/GF114
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 304.43
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Ubuntu 12.04 LTS
|-
| Palit GT640
| GeForce GT 640
| GK107
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 304.43
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Ubuntu 12.04 LTS
|-
| Asus GT610-SL-1GD3-L
| Geforce GT610
| GF119
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 310.19
| {{No}}
| {{No}}
| '''HDMI'''
| '''Onkyo TX-NR807'''
| Slackware 13.37
|-
| Zotac GT430 Zone Edition
| GeForce GT 430
| GF108
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| {{Yes}}
| {{?}}
| 306.97
| {{No}}
| {{No}}
| {{?}}
| {{?}}
| Windows 7 x64 Pro
|-
| Asrock ION 330HT
| GeForce 9400M G
| G96a/G96b
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{Yes}}
| 304.64
| {{No}}
| {{Yes}}
| '''HDMI'''
| '''TV/OTHER'''
| Ubuntu 12.04 LTS
|-
| ZOTAC GT 610 ZONE Ed.
| Geforce GT610
| GF119
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{?}}
| 331.65
| {{No}}
| {{No}}
| '''HDMI'''
| '''Onkyo TX-SR608'''
| Win8 64bit + XBMCbuntu
|-
|}


== History and Team ==
== History and Team ==
Line 579: Line 180:
In time, it became obvious the project was going to require a full re-write and replacement of the audio engine. Furthermore, XBMC's base of hardware and OS platforms continued to grow. The detailed specifications for the new audio formats were unknown, and of course the master code for XBMC was ever-changing.
In time, it became obvious the project was going to require a full re-write and replacement of the audio engine. Furthermore, XBMC's base of hardware and OS platforms continued to grow. The detailed specifications for the new audio formats were unknown, and of course the master code for XBMC was ever-changing.


=== Progress ===
=== Three years of work ===
In November of 2009 [[User:Gnif|Gnif]] decided to bite the proverbial bullet, and after extensive consultation with the team finalized the API or structure which was to become AE. Drawing in other developers as required, the massive project slowly took shape, and reached the ready-point for user tests a year later. The forum thread for those hardy beta-testers (thank you!) reached over 1,200 posts, and slowly but surely features were added and debugged, and system stability grew.
In November of 2009 [[User:Gnif|Gnif]] decided to bite the proverbial bullet, and after extensive consultation with the team finalized the API or structure which was to become AE. Drawing in other developers as required, the massive project slowly took shape, and reached the ready-point for user tests a year later. The forum thread for those hardy beta-testers (thank you!) reached over 1,200 posts, and slowly but surely features were added and debugged, and system stability grew.


Line 588: Line 189:
Finally, on May 15th 2012, AudioEngine was merged to master. Weighing in at over 22,000 lines of code, it represents one of the single biggest code-merges ever for XBMC. Now for the first time it is readily accessible for all the development team (and users!) to see, test and improve within the greater context of XBMC's master branch.
Finally, on May 15th 2012, AudioEngine was merged to master. Weighing in at over 22,000 lines of code, it represents one of the single biggest code-merges ever for XBMC. Now for the first time it is readily accessible for all the development team (and users!) to see, test and improve within the greater context of XBMC's master branch.


===== ActiveAE =====
=== ActiveAE ===
ActiveAE was a large rewrite of SoftAE and combined all platforms to one engine. Sinks are available for all platforms.  
ActiveAE was a large rewrite of SoftAE and combined all platforms to one engine. Sinks are available for all platforms.  
ActiveAE uses an active state machine pattern, with a separate high priority sink thread, that cares for underruns. ActiveAE is completely build upon ffmpeg, which is used for resampling, channel mapping and decoding. High performance SSE algorithms - already existent in the AEUtils - were fixed up and are used to do the final conversion into formats the sinks can accept. ActiveAE uses the ''float'' format internally and it is working bit-exact.
ActiveAE uses an active state machine pattern, with a separate high priority sink thread, that cares for underruns. ActiveAE is completely build upon ffmpeg, which is used for resampling, channel mapping and decoding. High performance SSE algorithms - already existent in the AEUtils - were fixed up and are used to do the final conversion into formats the sinks can accept. ActiveAE uses the ''float'' format internally and it is working bit-exact.
Line 600: Line 201:
* ''Optimized'' is something special, as it tries to reduce the reopening of sinks a lot. One example is live-TV where it switches between 5.1 to 2.0 during commercials. In order to  not open the device anew and loosing some (milliseconds of) audio, the 2.0 commercials are played with the already open 5.1 sink by muting the non existent channels.  
* ''Optimized'' is something special, as it tries to reduce the reopening of sinks a lot. One example is live-TV where it switches between 5.1 to 2.0 during commercials. In order to  not open the device anew and loosing some (milliseconds of) audio, the 2.0 commercials are played with the already open 5.1 sink by muting the non existent channels.  
The main developers of ActiveAE are [[User:Fernetmenta|Fernetmenta]] and [[User:Fritsch|Fritsch]].
The main developers of ActiveAE are [[User:Fernetmenta|Fernetmenta]] and [[User:Fritsch|Fritsch]].
{{frodo updated}}


[[Category:XBMC Manual]]
[[Category:Manual]]
[[Category:Audio]]
[[Category:Development]]
[[Category:Development]]
[[Category:Advanced topics]]

Revision as of 21:16, 17 November 2014

Home icon grey.png   ▶ Development
▶ Audio
▶ AudioEngine

AudioEngine or (AE) refers to XBMC's new audio system.

Features

AudioEngine replaces SDL and brings some of the external dependencies into XBMC, and wraps up all the different media types for mixing, samplerate conversion, format conversion, encoding, upmix, downmix, etc.

Features of AE include
  • Support for DTS-HD MA / Dolby TrueHD Bluray formats
  • 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 capabilities 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

It's still early days for AE. Bugs will be found, and new and exciting features added.

Settings

Audio settings can be found in the GUI at

Settings -> System -> Audio output

Refer to AudioEngine/HOW-TO: Configure audio for more detail.

Supported Audio Formats for Passthrough

A summary of some of the supported formats within the AudioEngine

Audio Codec Audio Source XBMC Passthrough Setting
HD DVD Blu-ray Disc DVD-Video DVD-Audio
Channels (max) Max bit rate Sample rate (max) Channels (max) Max bit rate Sample rate (max) Channels (max) Max bit rate Sample rate (max) Channels (max) Max bit rate Sample rate (max)
Dolby Digital (AC-3) 5.1 504 kbit/s 48 kHz / 16 bit 5.1 640 kbit/s 48 kHz / 16 bit 5.1 448 kbit/s 48 kHz / 16 bit 5.1 448 kbit/s 48 kHz / 16 bit Dolby Digital (AC3) capable receiver
Dolby Digital Plus (E-AC-3) 7.1 3 Mbit/s 48 kHz / 24 bit 7.1 1.7 Mbit/s 48 kHz / 24 bit N/A
DTS 5.1 (Core) 1536 kbit/s 48 kHz / 24 bit 5.1 (Core) 1536 kbit/s 48 kHz / 24 bit 6.1 768 kbit/s 48 kHz / 16 bit N/A DTS capable receiver
DTS 24/96 N/A 5.1 1536 kbit/s 96 kHz / 24-bit 5.1 1536 kbit/s 96 kHz / 24-bit
Linear PCM (LPCM) 7.1 27 Mbit/s 192 kHz / 24 bit 8.1 27 Mbit/s 192 kHz / 24 bit 5.1 6.1 Mbit/s 48 kHz / 16 bit 5.1 6.1 Mbit/s 96 kHz / 24 bit MultiChannel LPCM capable receiver
Dolby TrueHD 7.1 18 Mbit/s 192 kHz / 24 bit 7.1 18 Mbit/s 192 kHz / 24 bit N/A TrueHD capable receiver
DTS-HD High Resolution Audio (HRA) 7.1 6 Mbit/s 96 kHz / 24 bit 7.1 6 Mbit/s 96 kHz / 24 bit N/A DTS-HD capable receiver
DTS-HD Master Audio (MA) 5.1 18 Mbit/s 192 kHz / 24 bit 5.1 18 Mbit/s 192 kHz / 24 bit N/A
7.1 18 Mbit/s 96 kHz / 24 bit 7.1 18 Mbit/s 96 kHz / 24 bit N/A

Test audio files

Below You can find a excellent range of flac test audio files stereo/multichannel and varied sample/bit rates and quality.

Click here to download flac test files

Click here to download wma test files

Click here to download various audio system test files

Audio hardware compatibility

History and Team

AudioEngine, AE for short was two-year project spear-headed by Gnif which was released in v12 (Frodo), and was first merged with master for user testing as of May 15th, 2012.

Why write a new audio subsystem?

It's been an accepted fact that the existing audio code was little-touched since the early days of XBMC, and was limited by the 16-bit architecture of the original Xbox and codecs available at the time. Dolby AC3 and mp3 (or earlier formats!) ruled the media codec world. Over time HTPC's became more mainstream, more powerful and better connected. Analog connections gave way to optical SPDIF connections, which in turn were replaced with HDMI. Processors, GPU's and media formats evolved at a steady pace.

With the growth of the HTPC and new formats like those made available with Bluray technology, the audio subsystem was under scrutiny as an area for improvement. Higher definition audio like multichannel FLAC was becoming a preferred standard for those demanding higher quality audio media. It was time for an update, and what an update!

Early efforts at patching fixes and even an initial attempt at a completely new system fell by the wayside. The scope of the required changes and the complexity of the API made it a daunting task, especially for volunteer programmers working in their spare time. This was compounded by the fact that XBMC runs on a wide range of hardware and operating systems. Most of the developers focus on specific platforms or subsystems within the whole of XBMC. Any new system had to be platform-agnostic, cohesive and flexible.

In time, it became obvious the project was going to require a full re-write and replacement of the audio engine. Furthermore, XBMC's base of hardware and OS platforms continued to grow. The detailed specifications for the new audio formats were unknown, and of course the master code for XBMC was ever-changing.

Three years of work

In November of 2009 Gnif decided to bite the proverbial bullet, and after extensive consultation with the team finalized the API or structure which was to become AE. Drawing in other developers as required, the massive project slowly took shape, and reached the ready-point for user tests a year later. The forum thread for those hardy beta-testers (thank you!) reached over 1,200 posts, and slowly but surely features were added and debugged, and system stability grew.

Over the next two years, thanks to the determination of Gnif the core engines, decoders, encoders and utilities that make up AudioEngine became a reality, and other developers began to contribute to the core and especially the platform-specific sinks or output stages. Among those contributing were Gimli, Fneufneu, Memphiz, Dddamian, Anssi and others.

There was a goal to have the new audio system ready for Eden 11.0, but there was just too much left to do. Many users were eagerly looking forward to it's inclusion, but stable releases must continue, and AE wasn't ready when the Eden feature-freeze went into effect. During this time the AE code-base was solidified, bugs tracked and squashed, features added and testing increased.

Finally, on May 15th 2012, AudioEngine was merged to master. Weighing in at over 22,000 lines of code, it represents one of the single biggest code-merges ever for XBMC. Now for the first time it is readily accessible for all the development team (and users!) to see, test and improve within the greater context of XBMC's master branch.

ActiveAE

ActiveAE was a large rewrite of SoftAE and combined all platforms to one engine. Sinks are available for all platforms. ActiveAE uses an active state machine pattern, with a separate high priority sink thread, that cares for underruns. ActiveAE is completely build upon ffmpeg, which is used for resampling, channel mapping and decoding. High performance SSE algorithms - already existent in the AEUtils - were fixed up and are used to do the final conversion into formats the sinks can accept. ActiveAE uses the float format internally and it is working bit-exact.

A new feature is the upmix via AC3 transcoding support. On optical devices where only 2 pcm channels are available, we can now upmix to 5.1 by transcoding to ac3. Another new feature is the PulseAudio sink for ActiveAE, which was merged into XBMC mainline on January 9th 2014 and enables Linux desktop users to use the PulseAudio system instead of ALSA, which was an often requested feature. See PulseAudio

ActiveAE has three build-in profiles: Best Match, Optimized and Fixed.

  • Fixed takes care that all audio you will play is play in the very same data format. Your receiver does not need to switch modes.
  • Best Match is what previously existed as the "audiophile" mode. Whenever a new video or music playback starts, the audio engine will select the best sink for that stream.
  • Optimized is something special, as it tries to reduce the reopening of sinks a lot. One example is live-TV where it switches between 5.1 to 2.0 during commercials. In order to not open the device anew and loosing some (milliseconds of) audio, the 2.0 commercials are played with the already open 5.1 sink by muting the non existent channels.

The main developers of ActiveAE are Fernetmenta and Fritsch.