avformat/mxfenc: Check that the video codec in D-10 is MPEG-2

Others do not work, but nothing rejects them prior to this patch if the
parameters otherwise match

Reviewed-by: Matthieu Bouron <matthieu.bouron@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2017-08-29 02:13:20 +02:00
parent 7302d5e325
commit 429f3266c1
1 changed files with 4 additions and 0 deletions

View File

@ -2101,6 +2101,10 @@ static int mxf_write_header(AVFormatContext *s)
sc->video_bit_rate = st->codecpar->bit_rate; sc->video_bit_rate = st->codecpar->bit_rate;
if (s->oformat == &ff_mxf_d10_muxer) { if (s->oformat == &ff_mxf_d10_muxer) {
if (st->codecpar->codec_id != AV_CODEC_ID_MPEG2VIDEO) {
av_log(s, AV_LOG_ERROR, "error MXF D-10 only support MPEG-2 Video\n");
return AVERROR(EINVAL);
}
if ((sc->video_bit_rate == 50000000) && (mxf->time_base.den == 25)) { if ((sc->video_bit_rate == 50000000) && (mxf->time_base.den == 25)) {
sc->index = 3; sc->index = 3;
} else if ((sc->video_bit_rate == 49999840 || sc->video_bit_rate == 50000000) && (mxf->time_base.den != 25)) { } else if ((sc->video_bit_rate == 49999840 || sc->video_bit_rate == 50000000) && (mxf->time_base.den != 25)) {