AAC encoders: Difference between revisions
(→iTunes AAC: reworking) |
(→Fraunhofer AAC Encoders: clarify FDK is not only low-delay encoding) |
||
(41 intermediate revisions by 13 users not shown) | |||
Line 1: | Line 1: | ||
{{aac-encoders}} | |||
These are some known [[AAC]] encoder implementations. | These are some known [[AAC]] encoder implementations. | ||
==[[Nero AAC]]= | ==Features== | ||
{| class="wikitable" | |||
!rowspan=2| Encoder | |||
!colspan=2| Bitrate Modes | |||
!colspan=3| Audio Object Types | |||
!rowspan=2| Channels | |||
!rowspan=2| Open Source | |||
!rowspan=2| Platforms | |||
!rowspan=2| Notes | |||
|- | |||
! CBR | |||
! VBR | |||
! LC | |||
! HEv1 (SBR) | |||
! HEv2 (SBR+PS) | |||
|- | |||
| [[Apple AAC]] ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||{{maybe}} ||8 ||{{no}} ||Mac, Windows || Distributed as binary library only, included in QuickTime/iTunes. Can be extracted and used with a CLI wrapper. | |||
|- | |||
| [[Fraunhofer FDK AAC]] ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||8 (7.1) ||{{maybe|Yes, but non-free}} ||Linux, Mac, Windows || Fraunhofer dumps its code into the Android Open Source Project now and then, but it is not developed in the open, and its license is considered non-free. | |||
|- | |||
| [[Fraunhofer]] "FhG" AAC ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||6 (5.1) ||{{no}} ||Windows || Distributed as binary library only, included in Winamp. Can be extracted and used with a CLI wrapper. | |||
|- | |||
| [[Nero AAC]] ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||{{yes}} ||6 (5.1) ||{{no}} ||Linux, Windows || Distributed as CLI encoder utility | |||
|- | |||
| [[libavcodec AAC|FFmpeg 3.0+ AAC encoder]] ||{{yes}} ||{{maybe|Poor}} ||{{yes}} ||{{no}} ||{{no}} ||8 (7.1) ||{{yes}} ||Linux, Mac, Windows || | |||
|- | |||
| [[FAAC]] ||{{maybe|Not true CBR}} ||{{yes}} ||{{yes}} ||{{no}} ||{{no}} ||6 (5.1) ||{{maybe|Yes, but non-free}} ||Linux, Mac, Windows || FAAC contains some code which is published as Free Software, but as a whole it is only distributed under a proprietary license. | |||
|- | |||
| [[libavcodec AAC|Libav]] (pre-3.0 FFmpeg) AAC encoder ||{{maybe|Poor}} ||{{maybe|Poor}} ||{{yes}} ||{{no}} ||{{no}} ||2 ||{{yes}} ||Linux, Mac, Windows || | |||
|- | |||
| [[VisualOn AAC]] ||{{maybe|Very poor}} ||{{no}} ||{{yes}} ||{{no}} ||{{no}} ||2 ||{{maybe|Yes}} ||Linux, Mac, Windows || CBR is actually a really poor VBR at about 64kbps with lots of padding added to hit whatever target is requested. VisualOn claims to have the right to release the code under a Free Software license. | |||
|- | |||
| Microsoft MFT AAC ||{{yes}} ||{{no}} ||{{yes}} ||{{no}} ||{{no}} ||6 (5.1) ||{{no}} ||Windows || Only 2 channels in Windows 7, 6(5.1) in Windows 10. Only 44.1kHz and 48kHz sample rates supported. [https://msdn.microsoft.com/en-us/library/windows/desktop/dd742785(v=vs.85).aspx] | |||
|} | |||
==FFmpeg/Libav native AAC encoder== | |||
:''See [[Libavcodec AAC]].'' | |||
The native AAC encoder created in FFmpeg, and forked with Libav, was considered experimental and poor. A significant amount of work was done for the 3.0 release of FFmpeg (February 2016) to make its version usable and competitive with the rest of the AAC encoders. Libav has not merged this work and continues to use the older version of the AAC encoder. These encoders are LGPL-licensed open-source and can be built for any platform that the FFmpeg or Libav frameworks can be built. | |||
Both FFmpeg and Libav can use the [[Fraunhofer FDK AAC]] library via libfdk-aac, and while the FFmpeg native encoder has become stable and good enough for common use, FDK is still considered the highest quality encoder available for use with FFmpeg. [https://trac.ffmpeg.org/wiki/Encode/AAC#fdk_aac] Libav also recommends using FDK AAC if it is available. [https://wiki.libav.org/Encoding/aac] | |||
==Fraunhofer AAC Encoders== | |||
:''See [[Fraunhofer]].'' | |||
[[Fraunhofer|Fraunhofer IIS]] develops two related AAC encoders: | |||
* The licensed AAC encoder that is included in Winamp. | |||
* The [[Fraunhofer FDK AAC|FDK AAC]] encoder included in Android. | |||
The licensed encoder included with Winamp is optimized for encoding music on desktop-class processors, while the Android version includes low-delay encoding for real-time communication on embedded systems/mobile phones. | |||
: - | According to the July 2011 96kbps [[Hydrogenaudio Listening Tests|listening tests]] by IgorC, Winamp's Fraunhofer encoder is better than [[Nero AAC]] and tied with the [[Apple AAC|Apple encoder]] (then part of QuickTime) [http://listening-tests.hydrogenaud.io/igorc/aac-96-a/results.html]. | ||
==== | ==Nero AAC== | ||
:''See [[Nero AAC]].'' | |||
A commercial implementation of both LC AAC and HE AAC, Nero AAC is produced by Nero AG as part of their Nero Digital line of products. When it was new, it was generally perceived to have the highest quality VBR LC AAC implementation (although [[QuickTime AAC]] outperformed it in CBR mode at 128kbps). The codec can also create HEv1/v2 AAC streams for extremely low bitrates and supports multi-channel surround sound encoding. Nero AAC is available for free as a suite of command line tools called "Nero AAC Codec" [http://www.nero.com/enu/company/about-nero/nero-aac-codec.php] (formerly Nero Digital Audio). | |||
The Nero AAC encoder was based on the earlier PsyTEL AAC encoder by Ivan Dimkovic. | |||
==Apple's AAC Encoder== | |||
:''See [[Apple AAC]].'' | |||
Apple's proprietary AAC implementation, formerly part of QuickTime, is known to be one of the highest quality medium-bitrate [[CBR]] LC AAC encoders. | |||
The codec is available for free through the [[iTunes]] Digital Jukebox. | The codec is available for free through the [[iTunes]] Digital Jukebox. | ||
==FAAC== | ==FAAC== | ||
[[FAAC]] is a free LC AAC encoder under the Lesser GPL license. Its quality has improved drastically over the last few years and FAAC is nowadays a viable alternative to the commercial encoders (although, at 128kbps or lower bitrates, not at the same quality level as some of them, according to Guruboolez's [http://www.hydrogenaudio.org/forums/index.php?showtopic=29924 last listening test]). | [[FAAC]] is a free LC AAC encoder under the Lesser GPL license. Its quality has improved drastically over the last few years and FAAC is nowadays a viable alternative to the commercial encoders (although, at 128kbps or lower bitrates, not at the same quality level as some of them, according to Guruboolez's [http://www.hydrogenaudio.org/forums/index.php?showtopic=29924 last listening test]). | ||
==PsyTEL== | ==PsyTEL== | ||
[[PsyTEL]] was one of the first AAC encoders. It was created by Ivan Dimkovic, who would later work on Nero AAC. Its multichannel support has bugs that make it unusable, but its stereo mode had the best quality available in its day. Since the implementation of Nero AAC, this codec has become obsolete. | |||
== | ==Coding Technologies derived== | ||
[[Coding Technologies]] (CT) was a Swedish/German company that worked closely with [[Fraunhofer|Fraunhofer IIS]] in development and research of new audio compression techniques. | |||
They have licensed their encoding and decoding tools to several companies including Real Networks and Magix. | |||
=== | ===Real/Helix Producer=== | ||
RealNetworks has incorporated Coding Technologies/FhG's MPEG-4 AAC / [[aacPlus]]™ technology and software within RealNetworks’ software products. As a result, in the newest version of RealProducer 10, AAC has replaced [[ATRAC]]3 as the high bitrate audio codec, and that software can encode AAC files wrapped in the [[MP4]] container. In addition, the Producer SDK on Windows also includes HE-AAC encoding. More info can be found at [http://www.realnetworks.com/company/press/releases/2004/codingtech.html RealNetworks' press release], as well as Coding Technologies' [http://www.codingtechnologies.com/products/aacPlus.htm aacPlus page]. | |||
===NEC/Panasonic=== | |||
NEC Corporation has developed an LC AAC decoding algorithm for mobile devices. They have also developed a codec named MPEG-4 AAC Ext.1, which they claim decreases bitrate while maintaining the same audio quality. The new MPEG-4 AAC Ext.1 coding technology also features high compatibility with current MPEG-4 AAC. For more information, see [http://www.neceurope.com/release.asp?parentid=671&Area=1 NEC's press release]. | |||
Panasonic has developed an HE AAC codec together with NEC and Coding Technologies as described in | |||
: | [http://www.telos-systems.com/techtalk/hosted/m4-in-30100%20(M4IF_HE_AAC_paper).pdf this MPEG Industry Forum paper]. | ||
===Others=== | |||
* [[Aacplusenc]], which is based on the Coding Technologies reference code. | |||
==Others== | |||
===HHI/zPlane (Compaact!)=== | |||
Compaact! was a short-lived closed-source AAC encoder that could compete with FAAC in it's day. It is no longer developed. | |||
===Imagine=== | |||
==Imagine== | |||
Imagine Technology provided an [[MPEG-4]] LC AAC plugin for [[Adobe Audition]]. This plugin provided file input and output for the MPEG-4 AAC specification, defined in ISO/IEC 14496-3. After Imagine was bought by Ingenient Technologies, they stopped marketing the Audition plugin. | Imagine Technology provided an [[MPEG-4]] LC AAC plugin for [[Adobe Audition]]. This plugin provided file input and output for the MPEG-4 AAC specification, defined in ISO/IEC 14496-3. After Imagine was bought by Ingenient Technologies, they stopped marketing the Audition plugin. | ||
===Emuzed=== | |||
== | |||
== | |||
Emuzed develops and sells various products and technologies for the PC multimedia and embedded multimedia markets. They have ported and optimized codecs for MPEG-4 ASP and AAC LC for a chip vendor preparing to offer bundled multimedia hardware and software. More info can be found at their [http://www.emuzed.com/encoders.html encoders & decoders] page. | Emuzed develops and sells various products and technologies for the PC multimedia and embedded multimedia markets. They have ported and optimized codecs for MPEG-4 ASP and AAC LC for a chip vendor preparing to offer bundled multimedia hardware and software. More info can be found at their [http://www.emuzed.com/encoders.html encoders & decoders] page. | ||
[[Category:Encoder/Decoder]] | [[Category:Encoder/Decoder]] |
Latest revision as of 22:17, 29 January 2017
Current AAC encoders (most to least recommended) | |
---|---|
1 | Apple AAC M/W |
2 | FhG AAC (Winamp) W |
3 | Fraunhofer FDK AAC S/L/M/W |
4 | Nero AAC L/W |
5 | FFmpeg 3.0+ AAC encoder S/L/M/W |
6 | FAAC S/L/M/W |
7 | Libav (pre-3.0 FFmpeg) AAC encoder S/L/M/W |
S Source code available; L Linux; M macOS; W Windows | |
List of AAC encoders |
These are some known AAC encoder implementations.
Features
Encoder | Bitrate Modes | Audio Object Types | Channels | Open Source | Platforms | Notes | |||
---|---|---|---|---|---|---|---|---|---|
CBR | VBR | LC | HEv1 (SBR) | HEv2 (SBR+PS) | |||||
Apple AAC | Yes | Yes | Yes | Yes | Maybe | 8 | No | Mac, Windows | Distributed as binary library only, included in QuickTime/iTunes. Can be extracted and used with a CLI wrapper. |
Fraunhofer FDK AAC | Yes | Yes | Yes | Yes | Yes | 8 (7.1) | Yes, but non-free | Linux, Mac, Windows | Fraunhofer dumps its code into the Android Open Source Project now and then, but it is not developed in the open, and its license is considered non-free. |
Fraunhofer "FhG" AAC | Yes | Yes | Yes | Yes | Yes | 6 (5.1) | No | Windows | Distributed as binary library only, included in Winamp. Can be extracted and used with a CLI wrapper. |
Nero AAC | Yes | Yes | Yes | Yes | Yes | 6 (5.1) | No | Linux, Windows | Distributed as CLI encoder utility |
FFmpeg 3.0+ AAC encoder | Yes | Poor | Yes | No | No | 8 (7.1) | Yes | Linux, Mac, Windows | |
FAAC | Not true CBR | Yes | Yes | No | No | 6 (5.1) | Yes, but non-free | Linux, Mac, Windows | FAAC contains some code which is published as Free Software, but as a whole it is only distributed under a proprietary license. |
Libav (pre-3.0 FFmpeg) AAC encoder | Poor | Poor | Yes | No | No | 2 | Yes | Linux, Mac, Windows | |
VisualOn AAC | Very poor | No | Yes | No | No | 2 | Yes | Linux, Mac, Windows | CBR is actually a really poor VBR at about 64kbps with lots of padding added to hit whatever target is requested. VisualOn claims to have the right to release the code under a Free Software license. |
Microsoft MFT AAC | Yes | No | Yes | No | No | 6 (5.1) | No | Windows | Only 2 channels in Windows 7, 6(5.1) in Windows 10. Only 44.1kHz and 48kHz sample rates supported. [1] |
FFmpeg/Libav native AAC encoder
- See Libavcodec AAC.
The native AAC encoder created in FFmpeg, and forked with Libav, was considered experimental and poor. A significant amount of work was done for the 3.0 release of FFmpeg (February 2016) to make its version usable and competitive with the rest of the AAC encoders. Libav has not merged this work and continues to use the older version of the AAC encoder. These encoders are LGPL-licensed open-source and can be built for any platform that the FFmpeg or Libav frameworks can be built.
Both FFmpeg and Libav can use the Fraunhofer FDK AAC library via libfdk-aac, and while the FFmpeg native encoder has become stable and good enough for common use, FDK is still considered the highest quality encoder available for use with FFmpeg. [2] Libav also recommends using FDK AAC if it is available. [3]
Fraunhofer AAC Encoders
- See Fraunhofer.
Fraunhofer IIS develops two related AAC encoders:
- The licensed AAC encoder that is included in Winamp.
- The FDK AAC encoder included in Android.
The licensed encoder included with Winamp is optimized for encoding music on desktop-class processors, while the Android version includes low-delay encoding for real-time communication on embedded systems/mobile phones.
According to the July 2011 96kbps listening tests by IgorC, Winamp's Fraunhofer encoder is better than Nero AAC and tied with the Apple encoder (then part of QuickTime) [4].
Nero AAC
- See Nero AAC.
A commercial implementation of both LC AAC and HE AAC, Nero AAC is produced by Nero AG as part of their Nero Digital line of products. When it was new, it was generally perceived to have the highest quality VBR LC AAC implementation (although QuickTime AAC outperformed it in CBR mode at 128kbps). The codec can also create HEv1/v2 AAC streams for extremely low bitrates and supports multi-channel surround sound encoding. Nero AAC is available for free as a suite of command line tools called "Nero AAC Codec" [5] (formerly Nero Digital Audio).
The Nero AAC encoder was based on the earlier PsyTEL AAC encoder by Ivan Dimkovic.
Apple's AAC Encoder
- See Apple AAC.
Apple's proprietary AAC implementation, formerly part of QuickTime, is known to be one of the highest quality medium-bitrate CBR LC AAC encoders.
The codec is available for free through the iTunes Digital Jukebox.
FAAC
FAAC is a free LC AAC encoder under the Lesser GPL license. Its quality has improved drastically over the last few years and FAAC is nowadays a viable alternative to the commercial encoders (although, at 128kbps or lower bitrates, not at the same quality level as some of them, according to Guruboolez's last listening test).
PsyTEL
PsyTEL was one of the first AAC encoders. It was created by Ivan Dimkovic, who would later work on Nero AAC. Its multichannel support has bugs that make it unusable, but its stereo mode had the best quality available in its day. Since the implementation of Nero AAC, this codec has become obsolete.
Coding Technologies derived
Coding Technologies (CT) was a Swedish/German company that worked closely with Fraunhofer IIS in development and research of new audio compression techniques.
They have licensed their encoding and decoding tools to several companies including Real Networks and Magix.
Real/Helix Producer
RealNetworks has incorporated Coding Technologies/FhG's MPEG-4 AAC / aacPlus™ technology and software within RealNetworks’ software products. As a result, in the newest version of RealProducer 10, AAC has replaced ATRAC3 as the high bitrate audio codec, and that software can encode AAC files wrapped in the MP4 container. In addition, the Producer SDK on Windows also includes HE-AAC encoding. More info can be found at RealNetworks' press release, as well as Coding Technologies' aacPlus page.
NEC/Panasonic
NEC Corporation has developed an LC AAC decoding algorithm for mobile devices. They have also developed a codec named MPEG-4 AAC Ext.1, which they claim decreases bitrate while maintaining the same audio quality. The new MPEG-4 AAC Ext.1 coding technology also features high compatibility with current MPEG-4 AAC. For more information, see NEC's press release.
Panasonic has developed an HE AAC codec together with NEC and Coding Technologies as described in this MPEG Industry Forum paper.
Others
- Aacplusenc, which is based on the Coding Technologies reference code.
Others
HHI/zPlane (Compaact!)
Compaact! was a short-lived closed-source AAC encoder that could compete with FAAC in it's day. It is no longer developed.
Imagine
Imagine Technology provided an MPEG-4 LC AAC plugin for Adobe Audition. This plugin provided file input and output for the MPEG-4 AAC specification, defined in ISO/IEC 14496-3. After Imagine was bought by Ingenient Technologies, they stopped marketing the Audition plugin.
Emuzed
Emuzed develops and sells various products and technologies for the PC multimedia and embedded multimedia markets. They have ported and optimized codecs for MPEG-4 ASP and AAC LC for a chip vendor preparing to offer bundled multimedia hardware and software. More info can be found at their encoders & decoders page.