Hello, the video decoders deliver the decoded pictures mostly in YUV 4:2:0 planar format as we all know. Depending on the interlaced state of the picture the UV data must be associated differently to the Y-lines:
progressive: Y0 UV0 Y1 UV0 Y2 UV1 Y3 UV1 interlaced: Y0 UV0 Y1 UV1 Y2 UV0 Y3 UV1 But how is this when giving data to the encoder, especially for h264? If the data is interlaced, we need to tell the encoder, is it sufficient to set the flags CODEC_FLAG_INTERLACED_DCT | CODEC_FLAG_INTERLACED_ME and to set AVFrame.interlaced_frame to 1? What about h264, that choses MBAFF on its own, which format must the YUV data have for that codec, always progressive or always interlaced? What happens on MBAFF/PAFF? Can some of the h264 experts give me a hint here please? thanks libx264.c doesn't use the INTERLACED flags mentioned above, so i can't tell the encoder what to use... This is also important for the upcoming libavfilter, it needs to handle the two different ways of storing UV and/or it needs a converter. Any comments regarding this matter? -- Regards, Thorsten _______________________________________________ libav-user mailing list [email protected] https://lists.mplayerhq.hu/mailman/listinfo/libav-user
