diff options
| author | Tim Redfern <tim@eclectronics.org> | 2013-12-29 12:19:38 +0000 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2013-12-29 12:19:38 +0000 |
| commit | f7813a5324be39d13ab536c245d15dfc602a7849 (patch) | |
| tree | fad99148b88823d34a5df2f0a25881a002eb291b /ffmpeg/libavcodec/cook.c | |
| parent | b7a5a477b8ff4d4e3028b9dfb9a9df0a41463f92 (diff) | |
basic type mechanism working
Diffstat (limited to 'ffmpeg/libavcodec/cook.c')
| -rw-r--r-- | ffmpeg/libavcodec/cook.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/ffmpeg/libavcodec/cook.c b/ffmpeg/libavcodec/cook.c index 08cd401..402093c 100644 --- a/ffmpeg/libavcodec/cook.c +++ b/ffmpeg/libavcodec/cook.c @@ -51,6 +51,7 @@ #include "fft.h" #include "internal.h" #include "sinewin.h" +#include "unary.h" #include "cookdata.h" @@ -228,7 +229,7 @@ static av_cold int init_cook_mlt(COOKContext *q) /* Initialize the MDCT. */ if ((ret = ff_mdct_init(&q->mdct_ctx, av_log2(mlt_size) + 1, 1, 1.0 / 32768.0))) { - av_free(q->mlt_window); + av_freep(&q->mlt_window); return ret; } av_log(q->avctx, AV_LOG_DEBUG, "MDCT initialized, order = %d.\n", @@ -302,8 +303,8 @@ static av_cold int cook_decode_close(AVCodecContext *avctx) av_log(avctx, AV_LOG_DEBUG, "Deallocating memory.\n"); /* Free allocated memory buffers. */ - av_free(q->mlt_window); - av_free(q->decoded_bytes_buffer); + av_freep(&q->mlt_window); + av_freep(&q->decoded_bytes_buffer); /* Free the transform. */ ff_mdct_end(&q->mdct_ctx); @@ -331,11 +332,7 @@ static void decode_gain_info(GetBitContext *gb, int *gaininfo) { int i, n; - while (get_bits1(gb)) { - /* NOTHING */ - } - - n = get_bits_count(gb) - 1; // amount of elements*2 to update + n = get_unary(gb, 0, get_bits_left(gb)); // amount of elements*2 to update i = 0; while (n--) { @@ -1279,6 +1276,7 @@ static av_cold int cook_decode_init(AVCodecContext *avctx) AVCodec ff_cook_decoder = { .name = "cook", + .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"), .type = AVMEDIA_TYPE_AUDIO, .id = AV_CODEC_ID_COOK, .priv_data_size = sizeof(COOKContext), @@ -1286,7 +1284,6 @@ AVCodec ff_cook_decoder = { .close = cook_decode_close, .decode = cook_decode_frame, .capabilities = CODEC_CAP_DR1, - .long_name = NULL_IF_CONFIG_SMALL("Cook / Cooker / Gecko (RealAudio G2)"), .sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_NONE }, }; |
