Fraunhofer FDK AAC

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Fraunhofer FDK AAC
Developer(s) Fraunhofer IIS
Initial release 9 July 2012; 11 years ago (2012-07-09)
Stable release Encoder 3.4.12[1] / Decoder 2.5.10 [2]
Development status Active
Written in C
Operating system Android, others
Platform Cross-platform
Available in English
Type Encoder/Decoder
License Liberal,[3] but not a license of patented technologies
Website Fraunhofer FDK AAC Codec Library

Fraunhofer FDK AAC (Full title Fraunhofer FDK AAC Codec Library for Android) is an open-source[4] software library for encoding and decoding Advanced Audio Coding (AAC) format audio, developed by Fraunhofer IIS, and included as part of Android. It supports several Audio Object Types including MPEG-2 and MPEG-4 AAC LC, HE-AAC (AAC LC + SBR), HE-AACv2 (LC + SBR + PS) and AAC-LD (low delay) for real-time communication. The encoding library supports sample rates up to 96 kHz and up to eight channels (7.1 surround).[5]

The Android-targeted implementation of the Fraunhofer AAC encoder uses fixed-point math and is optimized for low-delay encoding on embedded devices/mobile phones. The library is currently limited to 16-bit PCM input. Other versions of the Fraunhofer encoder, like the one included in Winamp, are optimized for encoding music on desktop-class processors. Those versions of the encoder, however, are not open source and require a commercial license.[6] The license included by Fraunhofer in the FDK library source code allows redistribution in source or binary forms, but does not license patented technologies described by the code. The license states that the library may only be distributed as authorized by patent licenses. This restriction, along with a limitation on charging for software that includes the library, makes it non-free by most standards.[3][7]

The FDK AAC encoder employs a more aggressive default low-pass filter than is used in other codecs. Higher frequencies are removed so that more bits are available to better describe sounds of lower frequencies, improving the overall quality for most combinations of recordings and listeners. In some, not completely rare, combinations the missing high frequencies are noticeable. The library allows overriding the low-pass filter setting, and in the highest VBR mode effectively applies no filter at all.[8]

A cross-platform source distribution is maintained by Martin Storsjö as fdk-aac. The latest fdk-aac release is 0.1.4 (2015-03-11), based on FDK version 3.4.12/2.5.10 (encoder/decoder).[9] The code compiles into a shared library, libfdk-aac. The media frameworks FFmpeg and Libav support audio encoding through libfdk-aac. [10][11] Until version 3.0 (February 2016), FFmpeg recommended FDK for AAC encoding over its native encoder. While the native encoder has become stable and good enough for common use, FDK is still considered the highest quality encoder available for use with FFmpeg. [10]

See also

External links

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. HydrogenAudio Forum discussion on FDK AAC, some relevant posts regarding the low-pass filter: Lua error in package.lua at line 80: module 'strict' not found., Lua error in package.lua at line 80: module 'strict' not found., Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.