mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-30 04:45:36 +00:00
Update for indexable change
This commit is contained in:
parent
71b615515a
commit
c36325f0aa
5 changed files with 23 additions and 13 deletions
|
@ -185,6 +185,8 @@ gst_avi_demux_init (GstAviDemux * avi)
|
|||
avi->adapter = gst_adapter_new ();
|
||||
|
||||
gst_avi_demux_reset (avi);
|
||||
|
||||
GST_OBJECT_FLAG_SET (avi, GST_ELEMENT_FLAG_INDEXABLE);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -4206,7 +4208,7 @@ avi_demux_handle_seek_push (GstAviDemux * avi, GstPad * pad, GstEvent * event)
|
|||
gst_segment_do_seek (&seeksegment, rate, format, flags,
|
||||
cur_type, cur, stop_type, stop, &update);
|
||||
|
||||
keyframe = !!(flags & GST_SEEK_FLAG_KEY_UNIT);
|
||||
keyframe = ! !(flags & GST_SEEK_FLAG_KEY_UNIT);
|
||||
cur = seeksegment.position;
|
||||
|
||||
GST_DEBUG_OBJECT (avi,
|
||||
|
|
|
@ -3252,6 +3252,8 @@ gst_flv_demux_init (GstFlvDemux * demux)
|
|||
|
||||
demux->own_index = FALSE;
|
||||
|
||||
GST_OBJECT_FLAG_SET (demux, GST_ELEMENT_FLAG_INDEXABLE);
|
||||
|
||||
gst_flv_demux_cleanup (demux);
|
||||
}
|
||||
|
||||
|
|
|
@ -445,7 +445,6 @@ gst_qtdemux_class_init (GstQTDemuxClass * klass)
|
|||
gobject_class->dispose = gst_qtdemux_dispose;
|
||||
|
||||
gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_qtdemux_change_state);
|
||||
|
||||
gstelement_class->set_index = GST_DEBUG_FUNCPTR (gst_qtdemux_set_index);
|
||||
gstelement_class->get_index = GST_DEBUG_FUNCPTR (gst_qtdemux_get_index);
|
||||
|
||||
|
@ -492,6 +491,8 @@ gst_qtdemux_init (GstQTDemux * qtdemux)
|
|||
qtdemux->mdatoffset = GST_CLOCK_TIME_NONE;
|
||||
qtdemux->mdatbuffer = NULL;
|
||||
gst_segment_init (&qtdemux->segment, GST_FORMAT_TIME);
|
||||
|
||||
GST_OBJECT_FLAG_SET (qtdemux, GST_ELEMENT_FLAG_INDEXABLE);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -226,7 +226,6 @@ gst_matroska_demux_class_init (GstMatroskaDemuxClass * klass)
|
|||
GST_DEBUG_FUNCPTR (gst_matroska_demux_element_send_event);
|
||||
gstelement_class->query =
|
||||
GST_DEBUG_FUNCPTR (gst_matroska_demux_element_query);
|
||||
|
||||
gstelement_class->set_index =
|
||||
GST_DEBUG_FUNCPTR (gst_matroska_demux_set_index);
|
||||
gstelement_class->get_index =
|
||||
|
@ -275,6 +274,8 @@ gst_matroska_demux_init (GstMatroskaDemux * demux)
|
|||
/* property defaults */
|
||||
demux->max_gap_time = DEFAULT_MAX_GAP_TIME;
|
||||
|
||||
GST_OBJECT_FLAG_SET (demux, GST_ELEMENT_FLAG_INDEXABLE);
|
||||
|
||||
/* finish off */
|
||||
gst_matroska_demux_reset (GST_ELEMENT (demux));
|
||||
}
|
||||
|
@ -1472,7 +1473,8 @@ gst_matroska_demux_send_event (GstMatroskaDemux * demux, GstEvent * event)
|
|||
GST_DEBUG_OBJECT (demux, "Sending pending_tags %p for pad %s:%s : %"
|
||||
GST_PTR_FORMAT, stream->pending_tags,
|
||||
GST_DEBUG_PAD_NAME (stream->pad), stream->pending_tags);
|
||||
gst_pad_push_event (stream->pad, gst_event_new_tag (stream->pending_tags));
|
||||
gst_pad_push_event (stream->pad,
|
||||
gst_event_new_tag (stream->pending_tags));
|
||||
stream->pending_tags = NULL;
|
||||
}
|
||||
}
|
||||
|
@ -2158,7 +2160,8 @@ gst_matroska_demux_handle_seek_push (GstMatroskaDemux * demux, GstPad * pad,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
gst_matroska_demux_handle_src_event (GstPad * pad, GstObject * parent, GstEvent * event)
|
||||
gst_matroska_demux_handle_src_event (GstPad * pad, GstObject * parent,
|
||||
GstEvent * event)
|
||||
{
|
||||
GstMatroskaDemux *demux = GST_MATROSKA_DEMUX (parent);
|
||||
gboolean res = TRUE;
|
||||
|
@ -3496,8 +3499,8 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
|
|||
/* align segment view with downstream,
|
||||
* prevents double-counting base time when closing segment */
|
||||
/* FIXME: in 0.10, the segment base/accum got updated here, but
|
||||
* maybe we don't need that because of the double accounting
|
||||
* mentioned above? */
|
||||
* maybe we don't need that because of the double accounting
|
||||
* mentioned above? */
|
||||
demux->common.segment = segment;
|
||||
}
|
||||
}
|
||||
|
@ -4693,13 +4696,13 @@ gst_matroska_demux_sink_activate_mode (GstPad * sinkpad, GstObject * parent,
|
|||
switch (mode) {
|
||||
case GST_PAD_MODE_PULL:
|
||||
if (active) {
|
||||
/* if we have a scheduler we can start the task */
|
||||
demux->segment_running = TRUE;
|
||||
gst_pad_start_task (sinkpad, (GstTaskFunction) gst_matroska_demux_loop,
|
||||
sinkpad);
|
||||
/* if we have a scheduler we can start the task */
|
||||
demux->segment_running = TRUE;
|
||||
gst_pad_start_task (sinkpad, (GstTaskFunction) gst_matroska_demux_loop,
|
||||
sinkpad);
|
||||
} else {
|
||||
demux->segment_running = FALSE;
|
||||
gst_pad_stop_task (sinkpad);
|
||||
demux->segment_running = FALSE;
|
||||
gst_pad_stop_task (sinkpad);
|
||||
}
|
||||
return TRUE;
|
||||
case GST_PAD_MODE_PUSH:
|
||||
|
|
|
@ -220,6 +220,8 @@ gst_matroska_parse_init (GstMatroskaParse * parse)
|
|||
|
||||
parse->common.adapter = gst_adapter_new ();
|
||||
|
||||
GST_OBJECT_FLAG_SET (parse, GST_ELEMENT_FLAG_INDEXABLE);
|
||||
|
||||
/* finish off */
|
||||
gst_matroska_parse_reset (GST_ELEMENT (parse));
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue