aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-10-06 22:54:00 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-11-04 00:59:34 +0100
commit614ef0dc0d9f2d6ec7e2e41a00d285b7a6a2eea1 (patch)
tree241cfcc6d5acdf1b2c6e3ab7dee974e325079320
parent5d2b6006f0567629324613ee73b779acbaf8f039 (diff)
downloadffmpeg-614ef0dc0d9f2d6ec7e2e41a00d285b7a6a2eea1.tar.gz
h264: fix fill_colmap() to not store entries mbaff style when the reference is not mbaff at all
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit a3ba542af39ba4425cbb44d2a0ae09c212b40001) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/h264_direct.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/h264_direct.c b/libavcodec/h264_direct.c
index 34a4ff727f..0b19353656 100644
--- a/libavcodec/h264_direct.c
+++ b/libavcodec/h264_direct.c
@@ -89,7 +89,8 @@ static void fill_colmap(H264Context *h, int map[2][16+32], int list, int field,
for(j=start; j<end; j++){
if(4*h->ref_list[0][j].frame_num + (h->ref_list[0][j].reference&3) == poc){
int cur_ref= mbafi ? (j-16)^field : j;
- map[list][2*old_ref + (rfield^field) + 16] = cur_ref;
+ if(ref1->mbaff)
+ map[list][2*old_ref + (rfield^field) + 16] = cur_ref;
if(rfield == field || !interl)
map[list][old_ref] = cur_ref;
break;