aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorLynne <dev@lynne.ee>2025-02-08 04:42:54 +0100
committerLynne <dev@lynne.ee>2025-02-26 17:12:04 +0100
commit9b11fefb88c770b9c1d4d4583c61c6abde6c033c (patch)
tree1d165c2410b823929f244dd12ec8c5efac528f7a /libavformat
parente24920375cd2bbdd579424c16cf0f9c66579ea24 (diff)
downloadffmpeg-9b11fefb88c770b9c1d4d4583c61c6abde6c033c.tar.gz
aacenc: remove support for AAC Main profile
The Main profile of AAC is... terrible. It enables the use of delta coding across coefficients of two frames to try to increase compression, and it enabled one more pole for TNS filters. What the AAC authors failed to take into account were basic mathematics, as MDCT leakage (e.g. the spread of each frequency when represented in a discrete spectrum) is significant in most audio codecs. This leads to huge variations between each frame, basically rendering prediction completely pointless. In fact, enabling AAC-Main prediction does not, in general, even recoup the metadata losses from signalling the profile and prediction properties in the first place. So you lose efficiency by using AAC Main. The rumor is that it was put in the AAC spec for patent reasons, though patent-wise, it has about as much use as a patent for a bicycle designed for use by snakes. The only other thing AAC Main changes is it permits 3-pole TNS filters. When AAC's bands are absolutely tiny, except for very high frequency bands, where you're likely to use PNS instead. Just get rid of it.
Diffstat (limited to 'libavformat')
0 files changed, 0 insertions, 0 deletions