Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-02-01 20:48:23 +0300
committerMichael Niedermayer <michaelni@gmx.at>2015-02-01 20:48:23 +0300
commit61aca123fb30e6c99948b12a829ddf7afe1a4174 (patch)
treecfe010a58c70c88fdfa172430c05d73b97242f78 /libavcodec/h261dec.c
parent0182e5a740ff030c5384a90769c1b73ef8cede0e (diff)
avcodec/h261dec: Fix exported MVs for skipped MBs
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/h261dec.c')
-rw-r--r--libavcodec/h261dec.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libavcodec/h261dec.c b/libavcodec/h261dec.c
index 9064f1a012..e9a3a8bcaa 100644
--- a/libavcodec/h261dec.c
+++ b/libavcodec/h261dec.c
@@ -216,6 +216,13 @@ static int h261_decode_mb_skipped(H261Context *h, int mba1, int mba2)
s->mb_skipped = 1;
h->mtype &= ~MB_TYPE_H261_FIL;
+ if (s->current_picture.motion_val[0]) {
+ int b_stride = 2*s->mb_width + 1;
+ int b_xy = 2 * s->mb_x + (2 * s->mb_y) * b_stride;
+ s->current_picture.motion_val[0][b_xy][0] = s->mv[0][0][0];
+ s->current_picture.motion_val[0][b_xy][1] = s->mv[0][0][1];
+ }
+
ff_mpv_decode_mb(s, s->block);
}