From 57cd4f20f10a3f251e335cdd61439e47e91b6e3c Mon Sep 17 00:00:00 2001 From: Jan Schmidt Date: Fri, 25 Nov 2005 17:01:46 +0000 Subject: [PATCH] ext/mpeg2dec/gstmpeg2dec.c: Prime libmpeg2's pumps with some null custom buffers to ensure it ask us to discard garba... Original commit message from CVS: * ext/mpeg2dec/gstmpeg2dec.c: (handle_sequence): Prime libmpeg2's pumps with some null custom buffers to ensure it ask us to discard garbage later yay. --- ChangeLog | 6 ++++++ ext/mpeg2dec/gstmpeg2dec.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/ChangeLog b/ChangeLog index 88fcd7a..ec9d5b6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-11-25 Jan Schmidt + + * ext/mpeg2dec/gstmpeg2dec.c: (handle_sequence): + Prime libmpeg2's pumps with some null custom buffers + to ensure it ask us to discard garbage later yay. + 2005-11-25 Michael Smith * ext/a52dec/gsta52dec.c: (gst_a52dec_init), diff --git a/ext/mpeg2dec/gstmpeg2dec.c b/ext/mpeg2dec/gstmpeg2dec.c index e2fb8f2..fc23793 100644 --- a/ext/mpeg2dec/gstmpeg2dec.c +++ b/ext/mpeg2dec/gstmpeg2dec.c @@ -527,6 +527,7 @@ handle_sequence (GstMpeg2dec * mpeg2dec, const mpeg2_info_t * info) gint i; GstBuffer *buf; GstFlowReturn ret; + guint8 *dummybuf[3] = { NULL, NULL, NULL }; mpeg2dec->width = info->sequence->picture_width; mpeg2dec->height = info->sequence->picture_height; @@ -560,6 +561,11 @@ handle_sequence (GstMpeg2dec * mpeg2dec, const mpeg2_info_t * info) goto negotiate_failed; mpeg2_custom_fbuf (mpeg2dec->decoder, 1); + /* Pump in some null buffers, because otherwise libmpeg2 doesn't + * initialise the discard_fbuf->id */ + mpeg2_set_buf (mpeg2dec->decoder, dummybuf, NULL); + mpeg2_set_buf (mpeg2dec->decoder, dummybuf, NULL); + mpeg2_set_buf (mpeg2dec->decoder, dummybuf, NULL); ret = gst_mpeg2dec_alloc_buffer (mpeg2dec, mpeg2dec->offset, &buf); if (ret != GST_FLOW_OK) -- 2.7.4