[Bug 681247] [0.11] pulsesrc breaks when reconfiguring
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Tue Aug 14 04:47:15 PDT 2012
https://bugzilla.gnome.org/show_bug.cgi?id=681247
GStreamer | gst-plugins-good | git
--- Comment #6 from Arun Raghavan <arun at accosted.net> 2012-08-14 11:47:13 UTC ---
Created an attachment (id=221129)
View: https://bugzilla.gnome.org/attachment.cgi?id=221129
Review: https://bugzilla.gnome.org/review?bug=681247&attachment=221129
This makes renegotiation work. Tested with the attached case -- you'll get a
warning message when the stream is killed, but a new stream is set up and
seems to work fine. Not sure if we can make a testcase of this (needs a
running PulseAudio server), but doing so would be nice.
The patch sits on a few other minor fixes that I've got, pending review at:
http://cgit.collabora.com/git/user/arun/gst-plugins-good.git/log/?h=pulse
----
pulsesrc: Handle negotiation events
This makes sure that we:
a) Destroy an existing stream if a negotiate() request comes in: this is
required when receiving a downstream renegotiation request after a
stream has been created.
b) Create a new stream on prepare(): this is required since we do a
setcaps() in negotiate(), which causes the stream to be dropped by a
ringbuffer release() call (this does not happen during first negotiation
since the release is only done on a running ringbuffer). The subsequent
call to ringbuffer acquire() fails because the stream was lost on
release().
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list