Merged requested to merge dv1/gstreamer:qtdemux-gapless-aac into main
These commits add gapless audio support to qtdemux. This is specific to single-stream audio-only .m4a data.
The most common way of supporting gapless AAC in MP4 is by relying on the iTunes
iTunSMPB tag. Older Nero AAC encoders did not use this, but they always used a specific a fixed encoder delay and padding. So, as fallback, if the AAC file is found to have been encoded with Nero AAC, and the
iTunSMPB is not present (newer Nero AAC versions did add it, older ones didn't), then that Nero AAC specific behavior is used. Similar fallbacks for other encoders could be added in the future.
This MR also adds unit tests to test for
iTunSMPB based and older NEro based gapless handling in qtdemux.
This replaces !4198 (closed) .