François Laignel
a8146f333f
all: use builder conditional setters where applicable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1926 >
2024-11-21 12:57:16 +00:00
Thibault Saunier
1dcf0943db
tracers: buffers-lateness: Add a signal to force writing log file
...
This way applications can write the queue levels info whenever it wants
and does not need to wait for the application to quite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1912 >
2024-11-12 13:04:43 -03:00
Thibault Saunier
153d4c7ac5
tracers: queue-levels: Add a signal to force writing log file
...
This way applications can write the queue levels info whenever it wants
and does not need to wait for the application to quite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1912 >
2024-11-12 13:04:43 -03:00
Sebastian Dröge
ef39046e18
Update to thiserror 2
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1911 >
2024-11-06 11:02:41 +02:00
Thibault Saunier
93ade2526d
tracer: snapshot: Add some documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
f752516e31
tracer: snapshot: Add an explicit \xdg-cache\
parameter
...
Instead of that magically xdg-cache string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
344326434c
tracers: snapshot: Add an option to use folders for each snapshot
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
f6d550d571
tracers: snapshot: Add an option to add pipeline pts in file names
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
6551a4631c
tracers: pipeline_snapshot: Add a "cleanup-mode" to remove dot files when wanted
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
e531c7f625
tracers: pipeline_snapshot: Make it controllable inside apps
...
Exposing properties so that user can configure it when instantiating it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
27b02445d0
tracers: pipeline_snapshot: Allow passing dot-dir as a parameter
...
Overriding the default GST_DEBUG_DUMP_DOT_DIR env var
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Sebastian Dröge
7e59c3f0fd
Remove once_cell dependency
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1868 >
2024-10-21 17:53:18 +00:00
Sebastian Dröge
ec8759ae44
Fix various new clippy warnings due to MSRV bump
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1864 >
2024-10-20 19:53:15 +00:00
Sebastian Dröge
4603a60ebe
togglerecord: Remove obsolete comment
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1864 >
2024-10-20 19:53:15 +00:00
Guillaume Desmottes
2fc8d6a27d
togglerecord: provide details when RT assertion fails
...
We hit this assertion once during our tests but it's unclear why.
This change will hopefully help us understanding what's going on next
time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1809 >
2024-10-03 09:24:35 +00:00
Sebastian Dröge
b5586095bc
tracers: Update to etherparse 0.16
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1808 >
2024-09-25 09:05:56 +03:00
Sebastian Dröge
8fd2b7daa4
uriplaylistbin: Properly check for stream-collection/streams-selected events
...
There is only a new stream-collection event if the media has actually
changed, and that's also the only time in these tests when a
streams-selected event is sent as the default stream selection is always
used and never changed.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/597
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1769 >
2024-09-09 14:37:48 +03:00
Sebastian Dröge
2e0f52de2c
uriplaylistbin: Track actual caller in test assertion functions
...
Makes it easier to figure out from where it is actually called when the
assertion is failing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1769 >
2024-09-09 14:35:40 +03:00
Sebastian Dröge
7a959b9e9d
uriplaylistbin: Properly clean up the pipeline on panics/assertions too
...
Reduces log noise.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1769 >
2024-09-09 14:35:10 +03:00
Sebastian Dröge
87b72f768b
livesync: Report latency query results when handling latency query too
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1739 >
2024-08-22 07:33:47 +00:00
Sebastian Dröge
b83b6031e5
Update etherparse and async-tungstenite dependencies
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1691 >
2024-08-06 09:00:32 +03:00
Thibault Saunier
a05ab37b49
tracers: Add a tracer that dumps data flow into .pcap files
...
See documentation for more details
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/879 >
2024-07-31 20:27:27 +00:00
Sebastian Dröge
98b28d69ce
Update for new debug log macro syntax
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1658 >
2024-07-08 11:25:23 +03:00
Sebastian Dröge
bd2a039c8d
livesync: Use the actual output buffer duration of gap filler buffers
...
Otherwise the following can happen:
- 25fps stream
- buffer with PTS 0ms, duration 20ms arrives, is output
- buffer with PTS 40ms, duration 20ms arrives
- is considered early because 20ms < 40ms
- filler buffer with PTS 20ms and 40ms duration is output
- buffer with PTS 40ms is output
After this change no filler would be inserted because the gap is smaller
than the duration of a filler buffer.
Also, previously the 40ms duration would be used if a filler was
previously output because in that case the cached output buffer duration
would've already been patched from 20ms to 40ms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1647 >
2024-07-02 17:15:58 +03:00
Sebastian Dröge
960529d90d
livesync: Add sync property for allowing to output buffers as soon as they arrive
...
By default livesync will wait for each buffer on the clock. If sync is
set to false, it will output buffers immediately once they're available
and only waits on the clock for outputting gap filler buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1635 >
2024-06-26 16:21:42 +00:00
Sebastian Dröge
bbf131086a
livesync: Synchronize on the first buffer too
...
Previously the first buffer would be output immediately and
synchronization would only happen from the second buffer onwards.
This would mean that the first buffer would potentially be output too
early.
Instead, if there is no known output timestamp yet but a buffer with a
timestamp, first of all take its start as the initial output timestamp
and synchronize on that buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1635 >
2024-06-26 16:21:42 +00:00
Sebastian Dröge
7caf6b2073
livesync: Use let-else
in a few more places
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1635 >
2024-06-26 16:21:41 +00:00
Sebastian Dröge
505fab2e1c
livesync: Allow queueing up to latency buffers
...
This was already reported by the latency query, and not doing this would
require to always put a queue before livesync.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1635 >
2024-06-26 16:21:41 +00:00
Sebastian Dröge
9b323a6519
Use Option::is_some_and(...)
instead of Option::map_or(false, ...)
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1630 >
2024-06-19 13:03:37 +00:00
Sebastian Dröge
69c3c2ae46
Fix various new clippy 1.79 warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1620 >
2024-06-14 08:33:49 +03:00
Sebastian Dröge
66030f36ad
tracers: Add a pad push durations tracer
...
This tracer measures the time it takes for a buffer/buffer list push to return.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1506 >
2024-04-17 16:20:43 +03:00
Guillaume Desmottes
596a9177ce
uriplaylistbin: disable racy test
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1537 >
2024-04-12 10:17:40 +00:00
Guillaume Desmottes
61c9cbdc8f
uriplaylistbin: allow to change 'iterations' property while playing
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1492 >
2024-04-11 11:13:20 +02:00
Guillaume Desmottes
00b56ca845
uriplaylistbin: stop using an iterator to manage the playlist
...
Will make it easier to update the playlist while playing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1492 >
2024-04-11 10:48:50 +02:00
Philippe Normand
be12c0a5f7
Fix clippy warnings after upgrade to Rust 1.77
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1512 >
2024-03-21 17:33:32 +00:00
Sebastian Dröge
6556d31ab8
livesync: Ignore another racy test
...
Same problem as https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/328
2024-03-21 09:27:09 +02:00
Guillaume Desmottes
b29a739fb2
uriplaylistbin: disable racy test
...
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/514
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1494 >
2024-03-12 16:57:22 +01:00
Guillaume Desmottes
2629719b4e
livesync: disable racy tests
...
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/328
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/357
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1494 >
2024-03-12 16:32:47 +01:00
Guillaume Desmottes
9e6e8c618e
togglerecord: disable racy test_two_stream_close_open_nonlivein_liveout test
...
See https://gitlab.freedesktop.org/gdesmott/gst-plugins-rs/-/jobs/56183085
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1494 >
2024-03-12 16:21:52 +01:00
Guillaume Desmottes
7d0397e1ad
uriplaylistbin: re-enable all tests
...
They now seem to work reliably. \o/
Fix #194
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1471 >
2024-03-04 12:00:13 +01:00
Guillaume Desmottes
f6476f1e8f
uriplaylistbin: use vp9 in test media
...
The Windows CI runner does not have a Theora decoder so those tests were
failing there.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1471 >
2024-03-04 12:00:13 +01:00
Guillaume Desmottes
cfebc32b82
uriplaylistbin: tests: use fakesink sync=true
...
Tests is more reliable when using sync sink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1471 >
2024-03-04 11:17:11 +01:00
Guillaume Desmottes
721b7e9c8c
uriplaylistbin: rely on new uridecodebin3 gapless logic
...
uridecodebin3 can now properly handle gapless switches so use that
instead of our own very complicated logic.
Fix #268
Fix #193
Depends on gst 1.23.90 as the plugin requires recent fixes to work properly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1471 >
2024-03-04 11:17:11 +01:00
Guillaume Desmottes
1e88971ec8
uriplaylistbin: pass valid URI in tests
...
Fix critical raised by libsoup,
see https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/346
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1471 >
2024-03-04 11:06:19 +01:00
Sebastian Dröge
c0d111e2c1
utils: Update for renamed clippy lint in 1.76
2024-02-08 21:37:17 +02:00
Sebastian Dröge
92891a61e8
Fix a couple of compiler/clippy warnings with --no-default-features
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1452 >
2024-02-08 13:02:55 +02:00
Bilal Elmoussaoui
d25a222bf9
Drop direct muldiv dependency
...
It is re-exproted in gstreamer's prelude
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1446 >
2024-02-05 15:34:31 +01:00
Bilal Elmoussaoui
0615a16124
Use workspace features for crates metadata/deps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1446 >
2024-02-05 15:34:31 +01:00
Sebastian Dröge
1a55c70114
Switch git dependencies to explicitly name branch
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1445 >
2024-02-05 12:51:36 +02:00
Sebastian Dröge
4ad101b53b
Use once_cell crate directly again
...
The glib crate does not depend on it anymore and also does not re-export
it anymore.
Also switch some usages of OnceCell to OnceLock from std.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1441 >
2024-01-31 18:07:57 +02:00