[FFmpeg-devel] H.264 interlaced PAFF development and donations

Daniel Cardenas Daniel.Car
Mon Jul 2 22:35:26 CEST 2007

Mike Melanson wrote:
> Daniel Cardenas wrote:
>> I'm wondering if we could do a team approach here.  Michael in the past has said the first step is the read the spec and 
>> then implement the functionality.
>> How about a game plan that looks like:
>> 1. Someone summarizing what needs to be done from a spec standpoint.
>> 2. Someone design the high level changes that need to be done in the code.
>> 3. Someone codes it.
>> 4. Several of us help test it.
>> 5. We provide feedback on each step.
> Step 0. Figure out what PAFF stands for.
Picture adaptive frame field mode (PAFF).  Deals with interlace content.
 From slide 15 of: http://www.cs.sfu.ca/~johnnyz/personal/cmpt880-2/Overview%20of%20the%20AVC.ppt
Adaptive Frame/Field Coding
Three choices:
1 To combine the two fields together and to code them as one single coded frame (frame mode).
2 To not combine the two fields and to code them as separate coded fields (field mode).
3 To combine the two fields together and compress them as a single frame, but when coding the frame to split the pairs 
of two vertically adjacent macroblocks into either pairs of two field macroblocks or frame macroblocks before coding them.

PAFF (Picture-Adaptive Frame/Field)
The choice between first 2
 >16% better than field only in general

MBAFF (MacroBlock-Adaptive Frame/Field )
Non-moving: frame mode, moving: field mode
Use a pair of MBs (16x32 luma)
 >14% better than PAFF in general

More information about the ffmpeg-devel mailing list