[Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts (original) (raw)
Baptiste COUDURIER baptiste.coudurier
Mon Feb 20 11:49:21 CET 2006
- Previous message: [Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts
- Next message: [Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Luca Abeni wrote:
[...] I think the standard (MPEG4 part 10) defines a precise syntax for raw H.264 streams, and I think this is what the encoder should produce. Where is the avc syntax defined? I only have a draft of the standard, but the word "avc" appears in it only one time, in the title: "Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification (ITU-T Rec. H.264 | ISO/IEC 14496-10 AVC)". If the format needs to rearrange things in a different way, I think it is the mov muxer's job to do so...
Probably, I agree on that. But we need to define exactly what is a RAW H264 stream. With syncwords, without ? Also notice that, in that case, mov muxer needs to decode nals, find syncword, find size, erase syncword, write size, which I think would be faster and easier to do in x264.c, so I think 'If (is_avc)' is not that stupid after all.
[...]
instead of doing something like x264encoderheaders(x4->enc, &nal, &nnal); for(i = 0; i < nnal; i++){ int s = x264nalencode(p, &size, 1, nals + i); ... you are "opening the loop" explicitly encoding only the second and the third NAL, right? In this way, some information is lost. The MOV muxer does not need the first NAL, but I have at least one program needing it. In my opinion, if the muxer does not need some data it can discard it, but the codec still has to pass such data to the user.
If you are using MP4 file format then ISO-IEC 14496-15 AVC file format defines it. And you do not include a SEI in extradata ('avcC' atom). Since libx264 encodes SEI, SPS, PPS like I put in comments, I skip the SEI, you are right. Which program needs it ?
-- Baptiste COUDURIER GnuPG Key Id: 0x5C1ABAAA SMARTJOG S.A. http://www.smartjog.com Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA Phone: +33 1 49966312
- Previous message: [Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts
- Next message: [Ffmpeg-devel] Re: [PATCH] x264 avc encoding, movenc avcC, ctts
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]