[FFmpeg-cvslog] avcodec/audiotoolboxenc: remove CAP_VARIABLE_FRAME_SIZE from alac

Zhao Zhili git at videolan.org
Thu Feb 22 14:59:54 EET 2024


ffmpeg | branch: master | Zhao Zhili <zhilizhao at tencent.com> | Mon Feb  5 19:57:25 2024 +0800| [338e33b084b18b7dcc4a38c0fd9d0320ada8766a] | committer: Zhao Zhili

avcodec/audiotoolboxenc: remove CAP_VARIABLE_FRAME_SIZE from alac

AV_CODEC_CAP_VARIABLE_FRAME_SIZE has been set for alac_at encoder,
which means avctx->frame_size should be zero. However, alac_at
encoder also set avctx->frame_size. This leading to assert failure
in ffmpeg_sched.c
	av_assert0(enc->sq_idx[0] >= 0);

Actually, the implementation of audiotoolboxenc.c doesn't support
frame_size been zero.

Fix #10720.

Signed-off-by: Zhao Zhili <zhilizhao at tencent.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=338e33b084b18b7dcc4a38c0fd9d0320ada8766a
---

 libavcodec/audiotoolboxenc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/audiotoolboxenc.c b/libavcodec/audiotoolboxenc.c
index 5e86da4416..a197d167f6 100644
--- a/libavcodec/audiotoolboxenc.c
+++ b/libavcodec/audiotoolboxenc.c
@@ -676,7 +676,7 @@ static const uint64_t aac_at_channel_layouts[] = {
 
 FFAT_ENC(aac,          AV_CODEC_ID_AAC,          aac_profiles, , aac_at_channel_layouts, aac_at_ch_layouts)
 //FFAT_ENC(adpcm_ima_qt, AV_CODEC_ID_ADPCM_IMA_QT, NULL)
-FFAT_ENC(alac,         AV_CODEC_ID_ALAC,         NULL, | AV_CODEC_CAP_VARIABLE_FRAME_SIZE, NULL, NULL)
+FFAT_ENC(alac,         AV_CODEC_ID_ALAC,         NULL, , NULL, NULL)
 FFAT_ENC(ilbc,         AV_CODEC_ID_ILBC,         NULL, , NULL, NULL)
 FFAT_ENC(pcm_alaw,     AV_CODEC_ID_PCM_ALAW,     NULL, , NULL, NULL)
 FFAT_ENC(pcm_mulaw,    AV_CODEC_ID_PCM_MULAW,    NULL, , NULL, NULL)



More information about the ffmpeg-cvslog mailing list