ffmpeg | branch: master | Jerome Borsboom <jerome.borsb...@carpalis.nl> | Mon Apr 23 20:59:13 2018 +0200| [79f8074cc4055e96d55752554afeee4db9d4e0c8] | committer: Paul B Mahol
avcodec/vc1: store color-difference reference field type The loop filter for P interlace field pictures needs the reference field type. For luma, the reference field type was already available. Store the reference field type for color-difference as well. Signed-off-by: Jerome Borsboom <jerome.borsb...@carpalis.nl> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=79f8074cc4055e96d55752554afeee4db9d4e0c8 --- libavcodec/vc1_mc.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libavcodec/vc1_mc.c b/libavcodec/vc1_mc.c index 75c74cad8d..5eacaaa8ee 100644 --- a/libavcodec/vc1_mc.c +++ b/libavcodec/vc1_mc.c @@ -344,6 +344,10 @@ void ff_vc1_mc_1mv(VC1Context *v, int dir) v->vc1dsp.put_no_rnd_vc1_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); v->vc1dsp.put_no_rnd_vc1_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); } + if (v->field_mode) { + v->mv_f[dir][s->block_index[4] + v->mb_off] = v->cur_field_type != v->ref_field_type[dir]; + v->mv_f[dir][s->block_index[5] + v->mb_off] = v->cur_field_type != v->ref_field_type[dir]; + } } /** Do motion compensation for 4-MV macroblock - luminance block @@ -636,6 +640,10 @@ void ff_vc1_mc_4mv_chroma(VC1Context *v, int dir) v->vc1dsp.put_no_rnd_vc1_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); v->vc1dsp.put_no_rnd_vc1_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); } + if (v->field_mode) { + v->mv_f[dir][s->block_index[4] + v->mb_off] = v->cur_field_type != chroma_ref_type; + v->mv_f[dir][s->block_index[5] + v->mb_off] = v->cur_field_type != chroma_ref_type; + } } /** Do motion compensation for 4-MV interlaced frame chroma macroblock (both U and V) _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog