Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorclsid2 <clsid2@users.sourceforge.net>2010-04-19 23:29:00 +0400
committerclsid2 <clsid2@users.sourceforge.net>2010-04-19 23:29:00 +0400
commite220e2c9e47b5c1f98eec2c8deead4074fa07c76 (patch)
treecf616685c536ce5089d76c46dfe3df14b17a3924 /src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c
parent0b7b1d06b32b43517f7b584207533ecfe5ce20fa (diff)
Updated FFmpeg
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1792 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c')
-rw-r--r--src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c
index 519833bdc..5a2c07f45 100644
--- a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c
+++ b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/vp6.c
@@ -234,6 +234,7 @@ static void vp6_build_huff_tree(VP56Context *s, uint8_t coeff_model[],
nodes[map[2*i+1]].count = b + !b;
}
+ free_vlc(vlc);
/* then build the huffman tree accodring to probabilities */
ff_huff_build_tree(s->avctx, vlc, size, nodes, vp6_huff_cmp,
FF_HUFFMAN_FLAG_HNODE_FIRST);
@@ -608,6 +609,23 @@ static av_cold int vp6_decode_init(AVCodecContext *avctx)
return 0;
}
+static av_cold int vp6_decode_free(AVCodecContext *avctx)
+{
+ VP56Context *s = avctx->priv_data;
+ int pt, ct, cg;
+
+ vp56_free(avctx);
+
+ for (pt=0; pt<2; pt++) {
+ free_vlc(&s->dccv_vlc[pt]);
+ free_vlc(&s->runv_vlc[pt]);
+ for (ct=0; ct<3; ct++)
+ for (cg=0; cg<6; cg++)
+ free_vlc(&s->ract_vlc[pt][ct][cg]);
+ }
+ return 0;
+}
+
AVCodec vp6_decoder = {
"vp6",
CODEC_TYPE_VIDEO,
@@ -615,7 +633,7 @@ AVCodec vp6_decoder = {
sizeof(VP56Context),
vp6_decode_init,
NULL,
- vp56_free,
+ vp6_decode_free,
vp56_decode_frame,
/*.capabilities = */CODEC_CAP_DR1,
/*.next = */NULL,
@@ -633,7 +651,7 @@ AVCodec vp6f_decoder = {
sizeof(VP56Context),
vp6_decode_init,
NULL,
- vp56_free,
+ vp6_decode_free,
vp56_decode_frame,
/*.capabilities = */CODEC_CAP_DR1,
/*.next = */NULL,
@@ -651,7 +669,7 @@ AVCodec vp6a_decoder = {
sizeof(VP56Context),
vp6_decode_init,
NULL,
- vp56_free,
+ vp6_decode_free,
vp56_decode_frame,
/*.capabilities = */CODEC_CAP_DR1,
/*.next = */NULL,