avformat/iamf_writer: disallow Opus extradata with mapping family other than 0

Clause 3.11.1 of IAMF[1] states the Opus ID Header should conform to  ChannelMappingFamily == 0.

[1]https://aomediacodec.github.io/iamf/#opus-specific

Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer 2024-07-19 20:50:52 -03:00
parent 9ce065c90d
commit 2aab4e4cc0

View File

@ -39,7 +39,7 @@ static int update_extradata(IAMFCodecConfig *codec_config)
switch(codec_config->codec_id) {
case AV_CODEC_ID_OPUS:
if (codec_config->extradata_size < 19)
if (codec_config->extradata_size != 19)
return AVERROR_INVALIDDATA;
codec_config->extradata_size -= 8;
AV_WB8(codec_config->extradata + 0, AV_RL8(codec_config->extradata + 8)); // version