[FFmpeg-devel] [PATCH] Implement PAFF in H.264

Jeff Downs heydowns
Fri Oct 5 21:28:50 CEST 2007


On Fri, 5 Oct 2007, Andreas ?man wrote:

> Michael Niedermayer wrote:
[...]
> >> @@ -6666,7 +6673,7 @@
> >>                  s->mb_x = 0;
> >>                  ff_draw_horiz_band(s, 16*s->mb_y, 16);
> >>                  ++s->mb_y;
> >> -                if(FRAME_MBAFF) {
> >> +                if(FRAME_MBAFF || FIELD_PICTURE) {
> > 
> > this really should be FRAME_MBAFF_OR_FIELD or something like that
> 
> Michael, correct me if i'm wrong here, but isn't this already in
> place?
> 
> h264.h: #define MB_FIELD h->mb_field_decoding_flag
> 
> And h->mb_field_decoding_flag is already correctly computed,
> both for MBAFF and PAFF, in the beginning of decode_mb_cabac()
> and decode_mb_cavlc().

Not exactly. MB_FIELD == MB_MBAFF || FIELD_PICTURE (or, in english, the 
current macroblock is a field macroblock when its in an MBAFF frame and 
marked as an MBAFF macroblock or is part of a field picture).  This is 
where we said prior it might be nice to replace the several occurances of 
MB_MBAFF || FIELD_PICTURE with MB_FIELD, and rightfully so.

Contrast with the above, which simply says the current frame has some 
field macroblocks (FIELD_PICTURE || FRAME_MBAFF).

	-Jeff



More information about the ffmpeg-devel mailing list