|
|
|
@@ -888,6 +888,10 @@ static int mov_read_ddts(MOVContext *c, AVIOContext *pb, MOVAtom atom) |
|
|
|
st = c->fc->streams[c->fc->nb_streams-1]; |
|
|
|
|
|
|
|
st->codecpar->sample_rate = get_bits_long(&gb, 32); |
|
|
|
if (st->codecpar->sample_rate <= 0) { |
|
|
|
av_log(c->fc, AV_LOG_ERROR, "Invalid sample rate %d\n", st->codecpar->sample_rate); |
|
|
|
return AVERROR_INVALIDDATA; |
|
|
|
} |
|
|
|
skip_bits_long(&gb, 32); /* max bitrate */ |
|
|
|
st->codecpar->bit_rate = get_bits_long(&gb, 32); |
|
|
|
st->codecpar->bits_per_coded_sample = get_bits(&gb, 8); |
|
|
|
@@ -2273,6 +2277,10 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries) |
|
|
|
} else if (st->codecpar->codec_type==AVMEDIA_TYPE_AUDIO) { |
|
|
|
st->codecpar->codec_id = id; |
|
|
|
mov_parse_stsd_audio(c, pb, st, sc); |
|
|
|
if (st->codecpar->sample_rate < 0) { |
|
|
|
av_log(c->fc, AV_LOG_ERROR, "Invalid sample rate %d\n", st->codecpar->sample_rate); |
|
|
|
return AVERROR_INVALIDDATA; |
|
|
|
} |
|
|
|
} else if (st->codecpar->codec_type==AVMEDIA_TYPE_SUBTITLE){ |
|
|
|
st->codecpar->codec_id = id; |
|
|
|
mov_parse_stsd_subtitle(c, pb, st, sc, |
|
|
|
|