mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-03-25 09:05:57 -04:00
gst: don't implement get_times() in pipewiresrc
When is_live is set, pipewiresrc is a live src not a pseudo-live src. I.e. don't sync on the timestamps.
This commit is contained in:
parent
47de1e15a4
commit
9ac7483509
1 changed files with 0 additions and 32 deletions
|
|
@ -116,8 +116,6 @@ static gboolean gst_pipewire_src_start (GstBaseSrc * basesrc);
|
|||
static gboolean gst_pipewire_src_stop (GstBaseSrc * basesrc);
|
||||
static gboolean gst_pipewire_src_event (GstBaseSrc * src, GstEvent * event);
|
||||
static gboolean gst_pipewire_src_query (GstBaseSrc * src, GstQuery * query);
|
||||
static void gst_pipewire_src_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
|
||||
GstClockTime * start, GstClockTime * end);
|
||||
|
||||
static void
|
||||
gst_pipewire_src_set_property (GObject * object, guint prop_id,
|
||||
|
|
@ -501,7 +499,6 @@ gst_pipewire_src_class_init (GstPipeWireSrcClass * klass)
|
|||
gstbasesrc_class->stop = gst_pipewire_src_stop;
|
||||
gstbasesrc_class->event = gst_pipewire_src_event;
|
||||
gstbasesrc_class->query = gst_pipewire_src_query;
|
||||
gstbasesrc_class->get_times = gst_pipewire_src_get_times;
|
||||
gstpushsrc_class->create = gst_pipewire_src_create;
|
||||
|
||||
GST_DEBUG_CATEGORY_INIT (pipewire_src_debug, "pipewiresrc", 0,
|
||||
|
|
@ -1515,35 +1512,6 @@ gst_pipewire_src_query (GstBaseSrc * src, GstQuery * query)
|
|||
return res;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_pipewire_src_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
|
||||
GstClockTime * start, GstClockTime * end)
|
||||
{
|
||||
GstPipeWireSrc *pwsrc = GST_PIPEWIRE_SRC (basesrc);
|
||||
|
||||
/* for live sources, sync on the timestamp of the buffer */
|
||||
if (gst_base_src_is_live (basesrc)) {
|
||||
GstClockTime timestamp = GST_BUFFER_PTS (buffer);
|
||||
|
||||
if (GST_CLOCK_TIME_IS_VALID (timestamp)) {
|
||||
/* get duration to calculate end time */
|
||||
GstClockTime duration = GST_BUFFER_DURATION (buffer);
|
||||
|
||||
if (GST_CLOCK_TIME_IS_VALID (duration)) {
|
||||
*end = timestamp + duration;
|
||||
}
|
||||
*start = timestamp;
|
||||
}
|
||||
} else {
|
||||
*start = GST_CLOCK_TIME_NONE;
|
||||
*end = GST_CLOCK_TIME_NONE;
|
||||
}
|
||||
|
||||
GST_LOG_OBJECT (pwsrc, "start %" GST_TIME_FORMAT " (%" G_GUINT64_FORMAT
|
||||
"), end %" GST_TIME_FORMAT " (%" G_GUINT64_FORMAT ")",
|
||||
GST_TIME_ARGS (*start), *start, GST_TIME_ARGS (*end), *end);
|
||||
}
|
||||
|
||||
static GstFlowReturn
|
||||
gst_pipewire_src_create (GstPushSrc * psrc, GstBuffer ** buffer)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue