summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-08-03 00:45:02 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-08-03 00:45:08 +0200
commitbdccfc3fc354632f49721fc435310fb958843b21 (patch)
tree620c1d613984edfbf1b6e873633290a43dbd7586
parent154c8bf60b65654ba28e47e5b38f70e1f1e5d90c (diff)
parentae4c912bcecb5048611c4491a818d489ec828f59 (diff)
Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master: Forward interlaced field information from mov to ffv1 decoder. Do not suggest to use gas-preprocessor if using it would break compilation. Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rwxr-xr-xconfigure4
-rw-r--r--libavcodec/ffv1dec.c7
2 files changed, 10 insertions, 1 deletions
diff --git a/configure b/configure
index e215a2aa16..f1ba054a03 100755
--- a/configure
+++ b/configure
@@ -3865,7 +3865,9 @@ elif enabled ppc; then
# AltiVec flags: The FSF version of GCC differs from the Apple version
if enabled altivec; then
- nogas=warn
+ if ! enabled_any pic ppc64; then
+ nogas=warn
+ fi
check_cflags -maltivec -mabi=altivec &&
{ check_header altivec.h && inc_altivec_h="#include <altivec.h>" ; } ||
check_cflags -faltivec
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index 17b894645f..2fe511ebd8 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -784,6 +784,13 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPac
f->cur = p = f->picture.f;
+ if (f->version < 3 && avctx->field_order > AV_FIELD_PROGRESSIVE) {
+ /* we have interlaced material flagged in container */
+ p->interlaced_frame = 1;
+ if (avctx->field_order == AV_FIELD_TT || avctx->field_order == AV_FIELD_TB)
+ p->top_field_first = 1;
+ }
+
f->avctx = avctx;
ff_init_range_decoder(c, buf, buf_size);
ff_build_rac_states(c, 0.05 * (1LL << 32), 256 - 8);