pipewire/src
Stefan Klug 9e52e7ee7f gst/pipewiresrc: Improve base_time handling
It can not generically assumed that the gstreamer clock (and therefore
the base_time) is based on CLOCK_MONOTONIC.

It was tried to use the logic provided by
GstBaseSrc::gst_base_src_do_sync() in commit 004206db37
("gst/pipewiresrc: Let GstBaseSrc handle pseudo-live calculations").
This has the downside, that a potential jitter on the first buffer is
included in the calculated time offset. In gstreamer pipelines with
multiple pipewiresrc elements and big jitter on the first buffer the
streams will stay out of sync.

Improve that by checking if the gstreamer clock is provided by pipewire
and therefore known to be CLOCK_MONOTONIC or if it is provided by
gstreamer and we need to manually calculate the base_time.

Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>
2026-05-18 09:48:10 +02:00
..
daemon filter-graph: remove the pipe filter 2026-05-08 10:16:12 +02:00
examples impl-node: accept more node.passive values 2026-03-12 17:25:36 +01:00
gst gst/pipewiresrc: Improve base_time handling 2026-05-18 09:48:10 +02:00
modules modules: avoid double close when loop_add_io fails 2026-05-15 13:38:32 +02:00
pipewire impl-metadata: check PW_PERM_M permission on subject 2026-05-13 11:08:37 +02:00
tests treewide: make more file descriptors cloexec 2026-05-04 19:48:41 +02:00
tools pw-dump: also dump client permissions 2026-05-14 15:05:08 +02:00
meson.build