summaryrefslogtreecommitdiff
path: root/libavcodec/cavs.c
diff options
context:
space:
mode:
authorYao Wang <jiayaowang@gmail.com>2012-01-19 20:39:47 +0800
committerMichael Niedermayer <michaelni@gmx.at>2014-06-26 14:51:40 +0200
commite18b48c6fdfdc91fe56b1d1a1312b6d486d9fe43 (patch)
tree3ee66805b1214750c1646cef98d27e73ee858f1d /libavcodec/cavs.c
parent7e8fdf05e09a749ac74cf4b26797e44305a2b068 (diff)
avcodec/cavs: fix B_SUB_DIRECT col-MB is Intra MB case.
in this case current MB size is forced to 16x16 (AVS standard section 9.9.1) Signed-off-by: Yao Wang <jiayaowang@gmail.com> Fixes Ticket 1901 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/cavs.c')
-rw-r--r--libavcodec/cavs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/cavs.c b/libavcodec/cavs.c
index 7e162a8071..96acef2381 100644
--- a/libavcodec/cavs.c
+++ b/libavcodec/cavs.c
@@ -573,7 +573,7 @@ void ff_cavs_mv(AVSContext *h, enum cavs_mv_loc nP, enum cavs_mv_loc nC,
mvP->ref = ref;
mvP->dist = h->dist[mvP->ref];
- if (mvC->ref == NOT_AVAIL)
+ if (mvC->ref == NOT_AVAIL || (nP == MV_FWD_X3) || (nP == MV_BWD_X3 ))
mvC = &h->mv[nP - 5]; // set to top-left (mvD)
if (mode == MV_PRED_PSKIP &&
(mvA->ref == NOT_AVAIL ||