diff options
author | Lynne <dev@lynne.ee> | 2025-02-08 04:42:54 +0100 |
---|---|---|
committer | Lynne <dev@lynne.ee> | 2025-02-26 17:12:04 +0100 |
commit | 9b11fefb88c770b9c1d4d4583c61c6abde6c033c (patch) | |
tree | 1d165c2410b823929f244dd12ec8c5efac528f7a /libavformat/rtpenc.c | |
parent | e24920375cd2bbdd579424c16cf0f9c66579ea24 (diff) | |
download | ffmpeg-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/rtpenc.c')
0 files changed, 0 insertions, 0 deletions