[Ffmpeg-devel] I want to know what data set to AVCodecContext for H.264

bond b-o-n-d
Sat Jun 25 11:54:50 CEST 2005

> >as i wrote already very often: even if there are some small patches here
> >and
> >there for avc/h.264 support in the mp4 muxer, ffmpeg does NOT produce
> >correct mp4 files for avc (and also not for mpeg-4 part2)
> >eg the most important bug for avc is the missing of the avcC atom, which
> >is
> >very very important
> >
> >so until someone seriously starts to read the iso 14496-14 (for mpeg-4
> >video) and 14496-15 (for avc video) specs and starts implementing the mp4
> >muxing following the specs, i can only repeat to not use ffmpeg for
> >.mp4 files
> are those the specs that state that mpeg4 should be stored stripping the
> VOL header from the bitstream (except in the avcC) ?
> According to the draft I have the VOL header is NOT optional
> so stripping it would make the video stream non-standard, unless the
> specs were pulled by the hair to make quicktime and mp4 happy

i am not sure if i understand you correctly, cause there is no VOL in AVC,
vol is only there in mpeg-4 part2 video.
its indeed often the case that mpeg-4 part2 encoders outputting to .avi
place the vol together with the i-frames, because avi seems to require this
when placing mpeg-4 part2 in .mp4 you are not allowed to place the vol
together with the video data (i-frames), but it has to be stored only once
on a seperated place from the video data. ffmpeg doesnt do this, which is
also one of the problems with its .mp4 muxing

with avc the NAL also has to be stored seperated from the video data (afaik
in avcC), which ffmpeg doesnt do too, but in contrary to part2 you are
allowed to store the PPS/SPS (i think it can be seens as the equivalent to
the vol) multiple times in a stream (on every i-frame) and not only once,
also because it can change throughout the stream afaik

More information about the ffmpeg-devel mailing list