mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-22 16:26:39 +00:00
gst/playback/gstdecodebin.c: Make decodebin reusable when going from PAUSE_TO_READY and then back to PAUSED.
Original commit message from CVS: 2006-05-15 Julien MOUTTE <julien@moutte.net> * gst/playback/gstdecodebin.c: (cleanup_decodebin), (gst_decode_bin_change_state): Make decodebin reusable when going from PAUSE_TO_READY and then back to PAUSED. Fixes #331678.
This commit is contained in:
parent
ddf3ac792c
commit
2e02bce5f0
2 changed files with 9 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2006-05-15 Julien MOUTTE <julien@moutte.net>
|
||||||
|
|
||||||
|
* gst/playback/gstdecodebin.c: (cleanup_decodebin),
|
||||||
|
(gst_decode_bin_change_state): Make decodebin reusable
|
||||||
|
when going from PAUSE_TO_READY and then back to PAUSED.
|
||||||
|
Fixes #331678.
|
||||||
|
|
||||||
2006-05-15 Wim Taymans <wim@fluendo.com>
|
2006-05-15 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
* ext/vorbis/vorbisdec.c: (vorbis_get_query_types),
|
* ext/vorbis/vorbisdec.c: (vorbis_get_query_types),
|
||||||
|
|
|
@ -1386,6 +1386,7 @@ cleanup_decodebin (GstDecodeBin * decode_bin)
|
||||||
if (element != decode_bin->typefind && element != decode_bin->fakesink) {
|
if (element != decode_bin->typefind && element != decode_bin->fakesink) {
|
||||||
GST_DEBUG_OBJECT (element, "removing autoplugged element");
|
GST_DEBUG_OBJECT (element, "removing autoplugged element");
|
||||||
g_signal_handlers_disconnect_by_func (element, unlinked, decode_bin);
|
g_signal_handlers_disconnect_by_func (element, unlinked, decode_bin);
|
||||||
|
gst_element_set_state (element, GST_STATE_NULL);
|
||||||
gst_bin_remove (GST_BIN (decode_bin), element);
|
gst_bin_remove (GST_BIN (decode_bin), element);
|
||||||
}
|
}
|
||||||
gst_object_unref (element);
|
gst_object_unref (element);
|
||||||
|
@ -1472,8 +1473,8 @@ gst_decode_bin_change_state (GstElement * element, GstStateChange transition)
|
||||||
|
|
||||||
switch (transition) {
|
switch (transition) {
|
||||||
case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
|
case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
|
||||||
case GST_STATE_CHANGE_PAUSED_TO_READY:
|
|
||||||
break;
|
break;
|
||||||
|
case GST_STATE_CHANGE_PAUSED_TO_READY:
|
||||||
case GST_STATE_CHANGE_READY_TO_NULL:
|
case GST_STATE_CHANGE_READY_TO_NULL:
|
||||||
free_dynamics (decode_bin);
|
free_dynamics (decode_bin);
|
||||||
free_pad_probes (decode_bin);
|
free_pad_probes (decode_bin);
|
||||||
|
|
Loading…
Reference in a new issue