[FFmpeg-cvslog] r14041 - trunk/libavcodec/ra288.c
vitor
subversion
Mon Jun 30 21:30:28 CEST 2008
Author: vitor
Date: Mon Jun 30 21:30:27 2008
New Revision: 14041
Log:
Remove useless wrapper around ra288_decode_frame()
Modified:
trunk/libavcodec/ra288.c
Modified: trunk/libavcodec/ra288.c
==============================================================================
--- trunk/libavcodec/ra288.c (original)
+++ trunk/libavcodec/ra288.c Mon Jun 30 21:30:27 2008
@@ -205,14 +205,24 @@ static void update(Real288_internal *glo
colmult(glob->pr2, glob->st2, table2a, 10);
}
-static void * decode_block(AVCodecContext * avctx, const unsigned char *in,
- signed short int *out, unsigned len)
+/* Decode a block (celp) */
+static int ra288_decode_frame(AVCodecContext * avctx, void *data,
+ int *data_size, const uint8_t * buf,
+ int buf_size)
{
+ int16_t *out = data;
int x, y;
Real288_internal *glob = avctx->priv_data;
GetBitContext gb;
- init_get_bits(&gb, in, len * 8);
+ if (buf_size < avctx->block_align) {
+ av_log(avctx, AV_LOG_ERROR,
+ "Error! Input buffer is too small [%d<%d]\n",
+ buf_size, avctx->block_align);
+ return 0;
+ }
+
+ init_get_bits(&gb, buf, avctx->block_align * 8);
for (x=0; x < 32; x++) {
int amp_coef = get_bits(&gb, 3);
@@ -226,27 +236,7 @@ static void * decode_block(AVCodecContex
update(glob);
}
- return out;
-}
-
-/* Decode a block (celp) */
-static int ra288_decode_frame(AVCodecContext * avctx, void *data,
- int *data_size, const uint8_t * buf,
- int buf_size)
-{
- void *datao;
-
- if (buf_size < avctx->block_align) {
- av_log(avctx, AV_LOG_ERROR,
- "Error! Input buffer is too small [%d<%d]\n",
- buf_size, avctx->block_align);
- return 0;
- }
-
- datao = data;
- data = decode_block(avctx, buf, (signed short *)data, avctx->block_align);
-
- *data_size = (char *)data - (char *)datao;
+ *data_size = (char *)out - (char *)data;
return avctx->block_align;
}
More information about the ffmpeg-cvslog
mailing list