From 7cdf7cd0b63d4e4ef1feef539d79e28e9ff80985 Mon Sep 17 00:00:00 2001 From: Maksym Veremeyenko Date: Mon, 17 Feb 2014 10:55:48 +0200 Subject: [PATCH] fix samples number calculation for 24 and 32 bit output --- src/modules/avformat/consumer_avformat.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c index 8776de88..b4753fa9 100644 --- a/src/modules/avformat/consumer_avformat.c +++ b/src/modules/avformat/consumer_avformat.c @@ -709,6 +709,20 @@ static int open_audio( mlt_properties properties, AVFormatContext *oc, AVStream case AV_CODEC_ID_PCM_U16BE: audio_input_frame_size >>= 1; break; +#if LIBAVCODEC_VERSION_INT >= ((54<<16)+(59<<8)+0) + case AV_CODEC_ID_PCM_S24LE: + case AV_CODEC_ID_PCM_S24BE: + case AV_CODEC_ID_PCM_U24LE: + case AV_CODEC_ID_PCM_U24BE: + audio_input_frame_size /= 3; + break; + case AV_CODEC_ID_PCM_S32LE: + case AV_CODEC_ID_PCM_S32BE: + case AV_CODEC_ID_PCM_U32LE: + case AV_CODEC_ID_PCM_U32BE: + audio_input_frame_size >>= 2; + break; +#endif default: break; } -- 2.39.2