[FFmpeg-devel] [PATCH 198/281] cng: convert to new channel layout API
James Almer
jamrial at gmail.com
Thu Jan 13 04:02:31 EET 2022
From: Anton Khirnov <anton at khirnov.net>
Signed-off-by: Vittorio Giovara <vittorio.giovara at gmail.com>
Signed-off-by: James Almer <jamrial at gmail.com>
---
libavcodec/cngdec.c | 3 ++-
libavcodec/cngenc.c | 6 +-----
2 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/libavcodec/cngdec.c b/libavcodec/cngdec.c
index ecfd4abfc9..30d36f7326 100644
--- a/libavcodec/cngdec.c
+++ b/libavcodec/cngdec.c
@@ -56,7 +56,8 @@ static av_cold int cng_decode_init(AVCodecContext *avctx)
CNGContext *p = avctx->priv_data;
avctx->sample_fmt = AV_SAMPLE_FMT_S16;
- avctx->channels = 1;
+ av_channel_layout_uninit(&avctx->ch_layout);
+ avctx->ch_layout = (AVChannelLayout)AV_CHANNEL_LAYOUT_MONO;
avctx->sample_rate = 8000;
p->order = 12;
diff --git a/libavcodec/cngenc.c b/libavcodec/cngenc.c
index 830311f955..d77bbac40e 100644
--- a/libavcodec/cngenc.c
+++ b/libavcodec/cngenc.c
@@ -48,11 +48,6 @@ static av_cold int cng_encode_init(AVCodecContext *avctx)
CNGContext *p = avctx->priv_data;
int ret;
- if (avctx->channels != 1) {
- av_log(avctx, AV_LOG_ERROR, "Only mono supported\n");
- return AVERROR(EINVAL);
- }
-
avctx->frame_size = 640;
p->order = 10;
if ((ret = ff_lpc_init(&p->lpc, avctx->frame_size, p->order, FF_LPC_TYPE_LEVINSON)) < 0)
@@ -113,5 +108,6 @@ const AVCodec ff_comfortnoise_encoder = {
.close = cng_encode_close,
.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16,
AV_SAMPLE_FMT_NONE },
+ .ch_layouts = (const AVChannelLayout[]){ AV_CHANNEL_LAYOUT_MONO, { 0 } },
.caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,
};
--
2.34.1
More information about the ffmpeg-devel
mailing list