[gstreamer-bugs] [Bug 576180] New: [playbin2] Uses unref'd audiosink volume if using gconfaudiosink & audio sink supports volume
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Sat Mar 21 05:29:04 PDT 2009
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=576180
GStreamer | gst-plugins-base | Ver: git
Summary: [playbin2] Uses unref'd audiosink volume if using
gconfaudiosink & audio sink supports volume
Product: GStreamer
Version: git
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: major
Priority: Normal
Component: gst-plugins-base
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: slomo at circular-chaos.org
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME version: Unspecified
GNOME milestone: Unspecified
Hi,
playbin2 currently uses an unref'd volume element in the following scenario:
a) playbin2 is created, audio-sink is set to gconfaudiosink. gconfaudiosink
uses pulsesink.
b) Play some file with audio
c) reuse playbin2 for some other files with audio
=> crash as playsink->audiochain->volume points to an invalid memory area.
This is caused by gconfaudiosink creating a new audiosink everytime it goes to
PAUSED (or something like that). The problem now is, that playsink sets
audiochain->volume only when the chain is created, i.e. it will contain the
pulsesink of first file that was played.
The proposed fix would be in gstplaysink.c:1518. If create_chain is FALSE we
should call some kind of update_audio_chain() function that updates the volume
element. Similar issues might also exist for the text/video sinks but I didn't
look at them.
OTOH this proposed fix will only work if the volume element changes only when
the sink is reconfigured. In theory it could change always, so maybe we should
add some callback to the sinks that is called when it's a bin and the children
are changing (is this signal emitted also if a children of a children of a bin
changes?).
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=576180.
More information about the Gstreamer-bugs
mailing list