mp3enc: mux a XING header
authorPeter Belkner <pbelkner@snafu.de>
Sat, 7 May 2011 00:23:28 +0000 (02:23 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 7 May 2011 01:27:38 +0000 (03:27 +0200)
commitd62bf5d4e73250295c0a652e151498c5b19cbd63
tree08d484e42fea8a72e8db42b3c5f852e6f39ad1d6
parentc34cb130b6bf3e957484fd236c1ba477720882c0
mp3enc: mux a XING header

The patch below provides exactly that to the MP3 muxer. A XING header
containing

   * the numer of frames,
   * the size, and
   * a TOC

is generated.

It's based on an idea by Anton Khirnov (restricted to the number of
frames) found at

   http://patches.ffmpeg.org/patch/1891/

The TOC is generated as found in lame's "VbrTag.c".

According to my tests the following reproduces the number of frames, the
size and the TOC in "c.mp3" from "b.mp3" (except a shift due to shorter
XING header generated by FFmpeg):

   lame -V2 a.wav b.mp3
   ffmpeg -i b.mp3 -acodec copy -y c.mp3
libavformat/mp3enc.c