After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 695412 - mpegtsmux AAC ADTS header seems incorrect
mpegtsmux AAC ADTS header seems incorrect
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 1.0.8
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Reported: 2013-03-07 22:31 UTC by Kevin Thornberry
Modified: 2013-07-05 09:48 UTC
See Also:
GNOME target: ---
GNOME version: ---

Fix ADTS header (1.69 KB, patch)
2013-03-07 22:31 UTC, Kevin Thornberry
committed Details | Review

Description Kevin Thornberry 2013-03-07 22:31:44 UTC
Created attachment 238346 [details] [review]
Fix ADTS header

I don't think mpegtsmux_prepare_aac() extracts the info from the codec_data correctly. I get a bad ADTS header when muxing a 16kHz AAC-LC stream.

Please see attached patch - I've changed it so the codec_data parsing matches that in gst_qtdemux_handle_esds(). This makes my 16kHz LC stream play ok, and doesn't appear to break other streams. The generated header bytes also match those created by ffmpeg doing a similar muxing.
Comment 1 Tim-Philipp Müller 2013-03-18 10:33:34 UTC
Looks good, thanks.

I removed the channel change because it doesn't make a difference (and because the current code matches aacparse).

frequency index == 15 for a custom sample rate with 24 extra bits isn't handled here, but then it's not handled in many other places either it seems.

commit 72c5c70b90c79efcf013e0e414809931815be797
Author: Kevin Thornberry <>
Date:   Thu Mar 7 22:19:15 2013 +0000

    mpegtsmux: fix creation of ADTS header for AAC audio in MPEG-TS
Comment 2 Tim-Philipp Müller 2013-07-05 09:48:20 UTC
Picked it into 1.0 as well.