2004-10-06 Wim Taymans <wim at fluendo dot com>
+ * gst/elements/gsttypefindelement.c: (stop_typefinding):
+ Push the buffer store instead of clearing it in case that
+ the stream is not seekable.
+
+2004-10-06 Wim Taymans <wim at fluendo dot com>
+
* gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
(gst_thread_main_loop):
Lock the iteration and the state change so that automatic
static const GstEventMask *gst_type_find_element_src_event_mask (GstPad * pad);
static gboolean gst_type_find_element_src_event (GstPad * pad,
GstEvent * event);
+static void push_buffer_store (GstTypeFindElement * typefind);
static void gst_type_find_element_chain (GstPad * sinkpad, GstData * data);
static GstElementStateReturn
GST_WARNING_OBJECT (typefind,
"could not seek to required position %u, hope for the best", size);
typefind->mode = MODE_NORMAL;
- gst_buffer_store_clear (typefind->store);
+ /* push out our queued buffers here */
+ push_buffer_store (typefind);
} else {
typefind->waiting_for_discont_offset = size;
}
static const GstEventMask *gst_type_find_element_src_event_mask (GstPad * pad);
static gboolean gst_type_find_element_src_event (GstPad * pad,
GstEvent * event);
+static void push_buffer_store (GstTypeFindElement * typefind);
static void gst_type_find_element_chain (GstPad * sinkpad, GstData * data);
static GstElementStateReturn
GST_WARNING_OBJECT (typefind,
"could not seek to required position %u, hope for the best", size);
typefind->mode = MODE_NORMAL;
- gst_buffer_store_clear (typefind->store);
+ /* push out our queued buffers here */
+ push_buffer_store (typefind);
} else {
typefind->waiting_for_discont_offset = size;
}