From 8ad81db4b8dd62ee7b5f4787eec1324a948dc4d2 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 13 Feb 2006 15:59:48 +0000 Subject: [PATCH] gst/playback/gstplaybin.c: Update vis bin docs. Original commit message from CVS: * gst/playback/gstplaybin.c: (gen_vis_element): Update vis bin docs. Move queue after tee so we don't queue video buffers but audio samples instead. Fixes problems where the video queue is filled and the audio queue empty. --- ChangeLog | 8 ++++++++ gst/playback/gstplaybin.c | 37 ++++++++++++++++++------------------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/ChangeLog b/ChangeLog index f92e740782..71ac7538c3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-02-13 Wim Taymans + + * gst/playback/gstplaybin.c: (gen_vis_element): + Update vis bin docs. + Move queue after tee so we don't queue video buffers but + audio samples instead. Fixes problems where the video queue + is filled and the audio queue empty. + 2006-02-13 Tim-Philipp Müller * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): diff --git a/gst/playback/gstplaybin.c b/gst/playback/gstplaybin.c index 0c44a96c51..0857a94cb5 100644 --- a/gst/playback/gstplaybin.c +++ b/gst/playback/gstplaybin.c @@ -793,21 +793,21 @@ gen_audio_element (GstPlayBin * play_bin) * normal video bin. The video bin is run in a thread to make sure it does * not block the audio playback pipeline. * - * +--------------------------------------------------------------------------+ - * | visbin | - * | +------+ +----------------+ | - * | | tee | | abin ... | | - * | +-sink src-sink | | - * | | | | +----------------+ +-------------------+ | - * | | | | | vthread | | - * | | | | +---------+ +------+ +------+ | +--------------+ | | - * | | | | |audioconv| | vis | |vqueue| | | vbin ... | | | - * | | | src-sink src-sink src-sink src-sink | | | - * | | | | +---------+ +------+ +------+ | +--------------+ | | - * | | | | +-------------------+ | - * | | +------+ | - * sink-+ | - +--------------------------------------------------------------------------+ + * +--------------------------------------------------------------------+ + * | visbin | + * | +------+ +--------+ +----------------+ | + * | | tee | | aqueue | | abin ... | | + * | +-sink src-sink src-sink | | + * | | | | +--------+ +----------------+ | + * | | | | | + * | | | | +------+ +---------+ +------+ +-----------+ | + * | | | | |vqueue| |audioconv| | vis | | vbin ... | | + * | | | src-sink src-sink src-sink src-sink | | + * | | | | +------+ +---------+ +------+ +-----------+ | + * | | | | | + * | | +------+ | + * sink-+ | + +---------------------------------------------------------------------+ */ static GstElement * gen_vis_element (GstPlayBin * play_bin) @@ -853,10 +853,9 @@ gen_vis_element (GstPlayBin * play_bin) gst_bin_add (GST_BIN (element), conv); gst_bin_add (GST_BIN (element), vis); + gst_element_link_pads (vqueue, "src", conv, "sink"); gst_element_link_pads (conv, "src", vis, "sink"); - gst_element_link_pads (vis, "src", vqueue, "sink"); - - gst_element_link_pads (vqueue, "src", vsink, "sink"); + gst_element_link_pads (vis, "src", vsink, "sink"); pad = gst_element_get_pad (aqueue, "sink"); rpad = gst_element_get_request_pad (tee, "src%d"); @@ -865,7 +864,7 @@ gen_vis_element (GstPlayBin * play_bin) gst_object_unref (pad); gst_element_link_pads (aqueue, "src", asink, "sink"); - pad = gst_element_get_pad (conv, "sink"); + pad = gst_element_get_pad (vqueue, "sink"); rpad = gst_element_get_request_pad (tee, "src%d"); gst_pad_link (rpad, pad); gst_object_unref (rpad);