aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>2009-02-13 07:13:36 +0000
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>2009-02-13 07:13:36 +0000
commit6249143da8ba20ef8b1b88226246661deddb378c (patch)
treedd1f0e2de5a70c8cc9fbb4aa01151bf7e419f24b
parentdb6db7e505497ea06452db20069d3ba8c5588405 (diff)
downloadffmpeg-6249143da8ba20ef8b1b88226246661deddb378c.tar.gz
store display height without vbi
Originally committed as revision 17203 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavformat/mxfenc.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
index 723d6bd355..755c63c5ed 100644
--- a/libavformat/mxfenc.c
+++ b/libavformat/mxfenc.c
@@ -710,6 +710,7 @@ static void mxf_write_cdci_common(AVFormatContext *s, AVStream *st, const UID ke
MXFStreamContext *sc = st->priv_data;
ByteIOContext *pb = s->pb;
int stored_height = (st->codec->height+15)/16*16;
+ int display_height;
AVRational dar;
int f1, f2;
@@ -724,8 +725,15 @@ static void mxf_write_cdci_common(AVFormatContext *s, AVStream *st, const UID ke
mxf_write_local_tag(pb, 4, 0x3209);
put_be32(pb, st->codec->width);
+ if (st->codec->height == 608) // PAL + VBI
+ display_height = 576;
+ else if (st->codec->height == 512) // NTSC + VBI
+ display_height = 486;
+ else
+ display_height = st->codec->height;
+
mxf_write_local_tag(pb, 4, 0x3208);
- put_be32(pb, st->codec->height>>sc->interlaced);
+ put_be32(pb, display_height>>sc->interlaced);
// component depth
mxf_write_local_tag(pb, 4, 0x3301);