[FFmpeg-cvslog] r21663 - trunk/libavcodec/h264_direct.c
michael
subversion
Sun Feb 7 02:17:13 CET 2010
Author: michael
Date: Sun Feb 7 02:17:13 2010
New Revision: 21663
Log:
Fix reference selection for colocated MBs from frames to fields.
Modified:
trunk/libavcodec/h264_direct.c
Modified: trunk/libavcodec/h264_direct.c
==============================================================================
--- trunk/libavcodec/h264_direct.c Sun Feb 7 02:14:58 2010 (r21662)
+++ trunk/libavcodec/h264_direct.c Sun Feb 7 02:17:13 2010 (r21663)
@@ -123,6 +123,12 @@ void ff_h264_direct_ref_list_init(H264Co
if(cur->pict_type != FF_B_TYPE || h->direct_spatial_mv_pred)
return;
+ if(s->picture_structure == PICT_FRAME){
+ int cur_poc = s->current_picture_ptr->poc;
+ int *col_poc = h->ref_list[1]->field_poc;
+ ref1sidx=sidx= (FFABS(col_poc[0] - cur_poc) >= FFABS(col_poc[1] - cur_poc));
+ }
+
for(list=0; list<2; list++){
fill_colmap(h, h->map_col_to_list0, list, sidx, ref1sidx, 0);
for(field=0; field<2; field++)
More information about the ffmpeg-cvslog
mailing list