Mercurial > libavcodec.hg
comparison mpegaudiodec_float.c @ 12187:fb3fcaf3c1b6 libavcodec
Fix memleak when using mp*float decoder.
Patch by flybird2k at gmail
| author | cehoyos |
|---|---|
| date | Sun, 18 Jul 2010 19:53:24 +0000 |
| parents | 49c528a39187 |
| children |
comparison
equal
deleted
inserted
replaced
| 12186:fb2f04f70afe | 12187:fb3fcaf3c1b6 |
|---|---|
| 78 | 78 |
| 79 ptr += 18; | 79 ptr += 18; |
| 80 } | 80 } |
| 81 } | 81 } |
| 82 | 82 |
| 83 static av_cold int decode_end(AVCodecContext * avctx) | |
| 84 { | |
| 85 MPADecodeContext *s = avctx->priv_data; | |
| 86 ff_dct_end(&s->dct); | |
| 87 return 0; | |
| 88 } | |
| 89 | |
| 83 #if CONFIG_MP1FLOAT_DECODER | 90 #if CONFIG_MP1FLOAT_DECODER |
| 84 AVCodec mp1float_decoder = | 91 AVCodec mp1float_decoder = |
| 85 { | 92 { |
| 86 "mp1float", | 93 "mp1float", |
| 87 AVMEDIA_TYPE_AUDIO, | 94 AVMEDIA_TYPE_AUDIO, |
| 88 CODEC_ID_MP1, | 95 CODEC_ID_MP1, |
| 89 sizeof(MPADecodeContext), | 96 sizeof(MPADecodeContext), |
| 90 decode_init, | 97 decode_init, |
| 91 NULL, | 98 NULL, |
| 92 NULL, | 99 decode_end, |
| 93 decode_frame, | 100 decode_frame, |
| 94 CODEC_CAP_PARSE_ONLY, | 101 CODEC_CAP_PARSE_ONLY, |
| 95 .flush= flush, | 102 .flush= flush, |
| 96 .long_name= NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"), | 103 .long_name= NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"), |
| 97 }; | 104 }; |
| 103 AVMEDIA_TYPE_AUDIO, | 110 AVMEDIA_TYPE_AUDIO, |
| 104 CODEC_ID_MP2, | 111 CODEC_ID_MP2, |
| 105 sizeof(MPADecodeContext), | 112 sizeof(MPADecodeContext), |
| 106 decode_init, | 113 decode_init, |
| 107 NULL, | 114 NULL, |
| 108 NULL, | 115 decode_end, |
| 109 decode_frame, | 116 decode_frame, |
| 110 CODEC_CAP_PARSE_ONLY, | 117 CODEC_CAP_PARSE_ONLY, |
| 111 .flush= flush, | 118 .flush= flush, |
| 112 .long_name= NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"), | 119 .long_name= NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"), |
| 113 }; | 120 }; |
| 119 AVMEDIA_TYPE_AUDIO, | 126 AVMEDIA_TYPE_AUDIO, |
| 120 CODEC_ID_MP3, | 127 CODEC_ID_MP3, |
| 121 sizeof(MPADecodeContext), | 128 sizeof(MPADecodeContext), |
| 122 decode_init, | 129 decode_init, |
| 123 NULL, | 130 NULL, |
| 124 NULL, | 131 decode_end, |
| 125 decode_frame, | 132 decode_frame, |
| 126 CODEC_CAP_PARSE_ONLY, | 133 CODEC_CAP_PARSE_ONLY, |
| 127 .flush= flush, | 134 .flush= flush, |
| 128 .long_name= NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"), | 135 .long_name= NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"), |
| 129 }; | 136 }; |
| 135 AVMEDIA_TYPE_AUDIO, | 142 AVMEDIA_TYPE_AUDIO, |
| 136 CODEC_ID_MP3ADU, | 143 CODEC_ID_MP3ADU, |
| 137 sizeof(MPADecodeContext), | 144 sizeof(MPADecodeContext), |
| 138 decode_init, | 145 decode_init, |
| 139 NULL, | 146 NULL, |
| 140 NULL, | 147 decode_end, |
| 141 decode_frame_adu, | 148 decode_frame_adu, |
| 142 CODEC_CAP_PARSE_ONLY, | 149 CODEC_CAP_PARSE_ONLY, |
| 143 .flush= flush, | 150 .flush= flush, |
| 144 .long_name= NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"), | 151 .long_name= NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"), |
| 145 }; | 152 }; |
