[FFmpeg-cvslog] avcodec/liblc3enc: don't force unspec channel layouts
James Almer
git at videolan.org
Thu Apr 4 19:57:53 EEST 2024
ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Thu Apr 4 13:26:49 2024 -0300| [3db674614d52577dc844df34d11e7aa617923ae6] | committer: James Almer
avcodec/liblc3enc: don't force unspec channel layouts
We only care about channel count. Layout details will be ignored either way.
Signed-off-by: James Almer <jamrial at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3db674614d52577dc844df34d11e7aa617923ae6
---
libavcodec/liblc3enc.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/libavcodec/liblc3enc.c b/libavcodec/liblc3enc.c
index 63d1645b10..3c0bcc6840 100644
--- a/libavcodec/liblc3enc.c
+++ b/libavcodec/liblc3enc.c
@@ -61,6 +61,12 @@ static av_cold int liblc3_encode_init(AVCodecContext *avctx)
"Unsupported frame duration %.1f ms.\n", frame_us / 1000.f);
return AVERROR(EINVAL);
}
+ if (channels < 0 || channels > ENCODER_MAX_CHANNELS) {
+ av_log(avctx, AV_LOG_ERROR,
+ "Invalid number of channels %d. Max %d channels are accepted\n",
+ channels, ENCODER_MAX_CHANNELS);
+ return AVERROR(EINVAL);
+ }
hr_mode |= srate_hz > 48000;
hr_mode &= srate_hz >= 48000;
@@ -195,9 +201,6 @@ const FFCodec ff_liblc3_encoder = {
.p.type = AVMEDIA_TYPE_AUDIO,
.p.id = AV_CODEC_ID_LC3,
.p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY,
- .p.ch_layouts = (const AVChannelLayout[])
- { { AV_CHANNEL_ORDER_UNSPEC, 1 },
- { AV_CHANNEL_ORDER_UNSPEC, 2 }, { 0 } },
.p.supported_samplerates = (const int [])
{ 96000, 48000, 32000, 24000, 16000, 8000, 0 },
.p.sample_fmts = (const enum AVSampleFormat[])
More information about the ffmpeg-cvslog
mailing list