[FFmpeg-devel] [PATCH 11/19] 8svx: remove useless rounding code.
Nicolas George
nicolas.george at normalesup.org
Sun Jul 29 15:57:29 CEST 2012
samples_size and samples_idx are supposed to be multiple of
channels at all time. If they are, the division is exact;
if they are not, something is very wrong in the code.
Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
---
libavcodec/8svx.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavcodec/8svx.c b/libavcodec/8svx.c
index 3bece41..967b8c9 100644
--- a/libavcodec/8svx.c
+++ b/libavcodec/8svx.c
@@ -37,6 +37,7 @@
* http://aminet.net/mods/smpl/
*/
+#include "libavutil/avassert.h"
#include "avcodec.h"
/** decoder context */
@@ -150,7 +151,8 @@ static int eightsvx_decode_frame(AVCodecContext *avctx, void *data,
}
/* get output buffer */
- esc->frame.nb_samples = (FFMIN(MAX_FRAME_SIZE, esc->samples_size - esc->samples_idx) +avctx->channels-1) / avctx->channels;
+ av_assert1(!(esc->samples_size % avctx->channels || esc->samples_idx % avctx->channels));
+ esc->frame.nb_samples = FFMIN(MAX_FRAME_SIZE, esc->samples_size - esc->samples_idx) / avctx->channels;
if ((ret = avctx->get_buffer(avctx, &esc->frame)) < 0) {
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
return ret;
--
1.7.10.4
More information about the ffmpeg-devel
mailing list