[FFmpeg-cvslog] WavPack decoder: implement flush function

Kostya Shishkov git at videolan.org
Sun Aug 21 15:31:22 CEST 2011


ffmpeg | branch: master | Kostya Shishkov <kostya.shishkov at gmail.com> | Sat Aug 20 18:14:44 2011 +0200| [4ba8c521b1119c8235f8ad83c4edecb0bf9feb10] | committer: Luca Barbato

WavPack decoder: implement flush function

Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4ba8c521b1119c8235f8ad83c4edecb0bf9feb10
---

 libavcodec/wavpack.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c
index bd1e435..62f6880 100644
--- a/libavcodec/wavpack.c
+++ b/libavcodec/wavpack.c
@@ -1189,6 +1189,15 @@ static int wavpack_decode_frame(AVCodecContext *avctx,
     return s->samples_left > 0 ? 0 : avpkt->size;
 }
 
+static void wavpack_decode_flush(AVCodecContext *avctx)
+{
+    WavpackContext *s = avctx->priv_data;
+    int i;
+
+    for (i = 0; i < s->fdec_num; i++)
+        s->fdec[i]->samples_left = 0;
+}
+
 AVCodec ff_wavpack_decoder = {
     .name           = "wavpack",
     .type           = AVMEDIA_TYPE_AUDIO,
@@ -1197,6 +1206,7 @@ AVCodec ff_wavpack_decoder = {
     .init           = wavpack_decode_init,
     .close          = wavpack_decode_end,
     .decode         = wavpack_decode_frame,
+    .flush          = wavpack_decode_flush,
     .capabilities = CODEC_CAP_SUBFRAMES,
     .long_name = NULL_IF_CONFIG_SMALL("WavPack"),
 };



More information about the ffmpeg-cvslog mailing list