mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-05-30 21:37:53 -04:00
Sometime cases were observed, where the time returned from pw_stream_get_time_n() had incorrect values. The root cause was not fully tracked down. Roughly the case was as follows: A gstreamer pipeline with two gstpipewiresrc elements. One audio and one libcamera besed video src, both fed into a mp4 encoding mux. The cock was provided by the audio gstpipewiresrc. Now between starting the pipewire video stream and receiving the first camera frame pw_stream_get_time_n() returned strange values (It seemed like it was using the audio rate for something internally). This wrong value was used to initialze pclock->start_time and therefore all following calls to gst_pipewire_clock_get_internal_time() returned completely wrong values. Add a warning to hopefully catch these cases. I don't have a proper use case to test the clock interpolation done in gst_pipewire_clock_get_internal_time() so I can't drop that (which would remove the bogus call to pw_stream_get_time_n() alltogether), although it feels like the right thing to do. Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> |
||
|---|---|---|
| .. | ||
| daemon | ||
| examples | ||
| gst | ||
| modules | ||
| pipewire | ||
| tests | ||
| tools | ||
| meson.build | ||