avformat/matroska: write FlagInterlaced element in WebM

It's listed as supported in both https://www.webmproject.org/docs/container/
and https://matroska.org/technical/specs/index.html

Reviewed-by: Dave Rice <dave@dericed.com>
Signed-off-by: James Almer <jamrial@gmail.com>
pull/237/merge
James Almer 8 years ago
parent ee72b6d187
commit 3cc9d6d382
  1. 7
      libavformat/matroskaenc.c

@ -791,7 +791,7 @@ static int mkv_write_video_color(AVIOContext *pb, AVCodecParameters *par, AVStre
return 0;
}
static void mkv_write_field_order(AVIOContext *pb,
static void mkv_write_field_order(AVIOContext *pb, int mode,
enum AVFieldOrder field_order)
{
switch (field_order) {
@ -809,6 +809,7 @@ static void mkv_write_field_order(AVIOContext *pb,
case AV_FIELD_BT:
put_ebml_uint(pb, MATROSKA_ID_VIDEOFLAGINTERLACED,
MATROSKA_VIDEO_INTERLACE_FLAG_INTERLACED);
if (mode != MODE_WEBM) {
switch (field_order) {
case AV_FIELD_TT:
put_ebml_uint(pb, MATROSKA_ID_VIDEOFIELDORDER,
@ -829,6 +830,7 @@ static void mkv_write_field_order(AVIOContext *pb,
}
}
}
}
static int mkv_write_stereo_mode(AVFormatContext *s, AVIOContext *pb,
AVStream *st, int mode, int *h_width, int *h_height)
@ -1088,8 +1090,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELWIDTH , par->width);
put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELHEIGHT, par->height);
if (mkv->mode != MODE_WEBM)
mkv_write_field_order(pb, par->field_order);
mkv_write_field_order(pb, mkv->mode, par->field_order);
// check both side data and metadata for stereo information,
// write the result to the bitstream if any is found

Loading…
Cancel
Save