avformat/movenc: limit ISOBMFF AC-3 mapping to bsids <=8

This leaves out RealAudio DolbyNet, which utilizes bsids 9 and 10,

It is not clear whether the interpreted bit rate value (divided by
2 or 4 depending on the variant), or the original bit rate value
should be utilized to receive the bit_rate_code index.

Signed-off-by: Jan Ekström <jan.ekstrom@24i.com>
This commit is contained in:
Jan Ekström 2022-06-22 09:58:27 +03:00 committed by Jan Ekström
parent c9de096851
commit 5eb8da6a81
1 changed files with 8 additions and 0 deletions

View File

@ -374,6 +374,14 @@ static int mov_write_ac3_tag(AVFormatContext *s, AVIOContext *pb, MOVTrack *trac
return AVERROR(EINVAL);
}
if (info->substream[0].bsid > 8) {
av_log(s, AV_LOG_ERROR,
"RealAudio AC-3/DolbyNet with bsid %d is not defined by the "
"ISOBMFF specification in ETSI TS 102 366!\n",
info->substream[0].bsid);
return AVERROR(EINVAL);
}
if (info->ac3_bit_rate_code < 0) {
av_log(s, AV_LOG_ERROR,
"No valid AC3 bit rate code for data rate of %d!\n",