summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMatthieu Bouron <matthieu.bouron@gmail.com>2015-07-22 15:29:42 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-08-04 13:03:29 +0200
commitf6518e51b8ed9909bb70ddeae24cff2a15bfa391 (patch)
tree530b9fa8e6dae07055df46db0a215b237bd67fc9 /libavformat
parent2480da12a41edc084a7b697187ef1844fb6779a5 (diff)
lavf/mxfdec: support segmented frame layout as separate fields layout
According to S377M, segmented frame layout is identical to separate field layout except that the two fields are taken from a single scan of the incoming image, ie: they are coincident in time. Thus the resulting frame is progressive. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/mxfdec.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 2e46b0eaec..2d921dbd68 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -2002,10 +2002,6 @@ static int mxf_parse_structural_metadata(MXFContext *mxf)
st->codec->width = descriptor->width;
st->codec->height = descriptor->height; /* Field height, not frame height */
switch (descriptor->frame_layout) {
- case SegmentedFrame:
- /* This one is a weird layout I don't fully understand. */
- av_log(mxf->fc, AV_LOG_INFO, "SegmentedFrame layout isn't currently supported\n");
- break;
case FullFrame:
st->codec->field_order = AV_FIELD_PROGRESSIVE;
break;
@@ -2017,6 +2013,8 @@ static int mxf_parse_structural_metadata(MXFContext *mxf)
It's also for compatibility with the old behavior. */
case MixedFields:
break;
+ case SegmentedFrame:
+ st->codec->field_order = AV_FIELD_PROGRESSIVE;
case SeparateFields:
switch (descriptor->field_dominance) {
case MXF_TFF: