summaryrefslogtreecommitdiff
path: root/libavcodec/v210dec.c
diff options
context:
space:
mode:
authorTim.Nicholson <tim.nicholson@bbc.co.uk>2013-07-27 18:57:28 +0200
committerCarl Eugen Hoyos <cehoyos@ag.or.at>2013-07-27 18:57:28 +0200
commit84e345b38e581980b6ee2efb6d05ea3d25d4f88d (patch)
treeaa8f2dfaaa2816828a53a8ad5137929d178dbe9d /libavcodec/v210dec.c
parentb4bd21b7fe2ad8be59b16538448586814e5db65b (diff)
Forward interlaced field information from mov to v210 decoder.
Reported and tested by Dave Rice. Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
Diffstat (limited to 'libavcodec/v210dec.c')
-rw-r--r--libavcodec/v210dec.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libavcodec/v210dec.c b/libavcodec/v210dec.c
index 42e25cc017..c6dba23bd4 100644
--- a/libavcodec/v210dec.c
+++ b/libavcodec/v210dec.c
@@ -146,6 +146,13 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
v += pic->linesize[2] / 2 - avctx->width / 2;
}
+ if (avctx->field_order > AV_FIELD_PROGRESSIVE) {
+ /* we have interlaced material flagged in container */
+ pic->interlaced_frame = 1;
+ if (avctx->field_order == AV_FIELD_TT || avctx->field_order == AV_FIELD_TB)
+ pic->top_field_first = 1;
+ }
+
*got_frame = 1;
return avpkt->size;