From 1034b144ff73aeae201ecbf132b3ca89b321ec16 Mon Sep 17 00:00:00 2001 From: James Almer Date: Sun, 14 Jun 2026 10:06:27 -0300 Subject: [PATCH] avformat/iamf_writer: reject muxing PCM streams Supporting PCM streams requires API changes present in newer releases that can't be backported, so don't create invalid files. Signed-off-by: James Almer --- libavformat/iamf_writer.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/libavformat/iamf_writer.c b/libavformat/iamf_writer.c index 8d152c14a8..ef7cecab27 100644 --- a/libavformat/iamf_writer.c +++ b/libavformat/iamf_writer.c @@ -90,12 +90,6 @@ static int populate_audio_roll_distance(IAMFCodecConfig *codec_config) codec_config->audio_roll_distance = -1; break; case AV_CODEC_ID_FLAC: - case AV_CODEC_ID_PCM_S16BE: - case AV_CODEC_ID_PCM_S24BE: - case AV_CODEC_ID_PCM_S32BE: - case AV_CODEC_ID_PCM_S16LE: - case AV_CODEC_ID_PCM_S24LE: - case AV_CODEC_ID_PCM_S32LE: codec_config->audio_roll_distance = 0; break; default: @@ -535,35 +529,12 @@ static int iamf_write_codec_config(const IAMFContext *iamf, avio_write(dyn_bc, codec_config->extradata, codec_config->extradata_size); break; case AV_CODEC_ID_PCM_S16LE: - avio_w8(dyn_bc, 1); - avio_w8(dyn_bc, 16); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; case AV_CODEC_ID_PCM_S24LE: - avio_w8(dyn_bc, 1); - avio_w8(dyn_bc, 24); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; case AV_CODEC_ID_PCM_S32LE: - avio_w8(dyn_bc, 1); - avio_w8(dyn_bc, 32); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; case AV_CODEC_ID_PCM_S16BE: - avio_w8(dyn_bc, 0); - avio_w8(dyn_bc, 16); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; case AV_CODEC_ID_PCM_S24BE: - avio_w8(dyn_bc, 0); - avio_w8(dyn_bc, 24); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; case AV_CODEC_ID_PCM_S32BE: - avio_w8(dyn_bc, 0); - avio_w8(dyn_bc, 32); - avio_wb32(dyn_bc, codec_config->sample_rate); - break; + return AVERROR(ENOSYS); default: break; }