Sebastian Dröge
e49138516c
Update for pad default functions API changes
2022-10-12 19:50:15 +03:00
Sebastian Dröge
7ee4afacf4
Change *Impl trait methods to only take &self and not Self::Type in addition
2022-10-10 15:03:25 +03:00
François Laignel
7818ac658b
Use GFV::none_for_format
where applicable
2022-10-08 18:29:10 +02:00
Sebastian Dröge
4c57a97d4d
Update for glib::Object::new() API changes
2022-10-07 23:54:53 +03:00
Sebastian Dröge
0b13bfe9dc
fallbacksrc: Always restart the fallback stream on EOS and make sure to EOS all streams if the main stream is EOS
2022-10-05 19:13:36 +03:00
Sebastian Dröge
9719b055c5
fallbacksrc: Retry fallback stream on errors too
...
It was retrying but then nonetheless handling the error as fatal.
2022-10-04 16:31:09 +00:00
Nirbheek Chauhan
1d4d3e4cb0
build: Update versions to be 0.9.0-alpha.1
...
0.9.0 is the next release, so we can't name things that already.
Also the version in meson.build was 0.13.0, which is completely wrong.
2022-10-04 21:27:23 +05:30
Sebastian Dröge
f66aafb039
tracers: queue-levels: Update for gst::TracerImpl
API changes
2022-10-02 11:44:34 +03:00
Sebastian Dröge
4ba4b00235
examples: Update to clap 4
2022-09-29 09:48:53 +03:00
Sebastian Dröge
7479888200
uriplaylistbin: Port example from structopt to clap
2022-09-27 13:30:38 +03:00
Sebastian Dröge
38753b08ac
fallbacksrc: Implement support for fallback streams
2022-09-27 12:56:15 +03:00
Sebastian Dröge
00411523d4
fallbackswitch: Make sure to flush/reset pads during pad (de)activation
...
Otherwise this can potentially deadlock or delay state changes for a
longer time.
2022-09-27 12:56:01 +03:00
Sebastian Dröge
1f7126a8a1
fallbackswitch: Flush and deactivate pads before releasing them
2022-09-27 12:56:01 +03:00
Sebastian Dröge
b6ebad2761
fallbackswitch: Fix lock order problem between state and stream lock
...
The order is first stream lock, then state lock. Everything else can
lead to deadlocks.
2022-09-27 12:54:21 +03:00
Thibault Saunier
adb4cb8691
tracers: Fix documentation comment using gtk-doc style
...
So the online documentation works
2022-09-24 16:30:50 -03:00
Jordan Petridis
d8e3894209
togglerecord: Port example to GTK 4
2022-09-05 11:47:37 +03:00
Jordan Petridis
a60f4e9ae8
fallbackswitch: Port the example to GTK 4
2022-09-05 11:47:28 +03:00
Sebastian Dröge
1a40186485
Update for GLib ParamSpec builder API changes
2022-09-05 11:45:47 +03:00
Sebastian Dröge
46dddaf31c
Update minimum supported Rust version to 1.63
2022-09-04 21:31:55 +03:00
Thibault Saunier
67e651f57c
Allow "unused_doc_comments" as we use hotdoc and not rustdoc
2022-08-29 18:33:22 -04:00
Thibault Saunier
31a53bba8a
Generate plugins documentation using hotdoc
...
Which will automatically be integrated in gstreamer documentation
2022-08-29 18:33:22 -04:00
Vivia Nikolaidou
5606111345
plugins: Simplify code using ParamSpecBuilder
2022-08-22 17:58:43 +03:00
Sebastian Dröge
374bb8323f
Fix build after glib SignalBuilder::param_types() API change
2022-08-17 23:37:39 +03:00
Sebastian Dröge
2a54d57968
tracers: queue_levels.py: cycle colors
...
Fix crash when drawing more dataset than the number of colors.
2022-08-11 09:34:46 +00:00
Seungha Yang
a9a41a54be
tracers: Enable PipelineSnapshot only for unix target
...
This implementation does not support the other targets
(it uses SIGUSR1 which does not exist on Windows)
and would not be compiled
2022-08-09 11:47:02 +00:00
Guillaume Desmottes
7eea27aefc
tracers: buffer_lateness.py: cycle colors
...
Fix crash when drawing more dataset than the number of colors.
Fix #221
2022-08-09 13:13:14 +02:00
Bilal Elmoussaoui
52973d975e
Update per glib::SignalBuilder changes
2022-07-21 20:03:13 +02:00
Sebastian Dröge
7d666ce517
tracers: queue-levels: Fix analysis script if only a single plot should be created
2022-07-21 12:26:22 +03:00
Sebastian Dröge
a45443251b
tracers: queue-levels: Add support for multiqueue and queue2
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/218
2022-07-21 12:26:22 +03:00
Guillaume Desmottes
fe210a5715
tracers: queue_levels: log when file is being written
...
Help debugging when nothing is generated.
2022-07-20 17:05:29 +02:00
Guillaume Desmottes
bdd47d69ce
tracers: buffer_lateness: log when file is being written
...
Help debugging when nothing is generated.
2022-07-20 16:37:49 +02:00
Sebastian Dröge
02990f8fcc
tracers: queue-levels: Output bytes/buffers/time graphs in separate plots
...
Much easier to read.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/220
2022-07-20 16:03:51 +03:00
Sebastian Dröge
320cb73527
tracers: Add new tracer for logging the lateness of each buffer when it leaves a pad
2022-07-19 18:03:40 +03:00
Sebastian Dröge
2f987b09ee
tracers: Add queue levels tracer and Python script for plotting
2022-07-19 18:03:40 +03:00
François Laignel
5c5c15d36a
Simplify Formatted value handling
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1059
2022-07-11 21:21:54 +02:00
Sebastian Dröge
cb84206457
Fix a couple of new 1.62 clippy warnings
2022-06-28 14:52:20 +03:00
Sebastian Dröge
5dac064a49
fallbackswitch: Remove unused libc dependency/feature
2022-06-15 09:48:19 +03:00
Mathieu Duponchelle
abf872130a
fallbackswitch: fix gap processing regression
...
This was broken by the rewrite, receiving gaps on the main pad
should let the position progress, reset timeouts and keep the main
pad active.
This picks the simplest solution, transforming gap events into GAP
buffers and letting them go through chain(), this achieves the desired
effect.
2022-06-15 06:21:04 +00:00
Sebastian Dröge
427ebcd759
uriplaylistbin: Update to more-asserts 0.3
2022-06-06 11:55:52 +03:00
Seungha Yang
4072f1df34
fallbacksrc: Add fallback-{audio,video}-caps properties
...
Add new properties so that user can specify output raw audio and/or
video format of fallback stream (output of testsrc or still image)
2022-06-03 13:18:38 +00:00
Jan Alexander Steffens (heftig)
a5dd92f479
fallbackswitch: Reset timeout_clock_id on timeout
...
We shouldn't leave the used clock ID around. Otherwise, we might never
schedule a new timeout from an inactive pad if the active pad doesn't
get a buffer.
2022-06-02 11:07:20 +02:00
Jan Alexander Steffens (heftig)
90ad761d83
fallbackswitch: Use cancel_timeout in schedule_timeout
...
Dedupe the code and use the function that does the exact same thing.
2022-06-02 11:07:20 +02:00
Guillaume Desmottes
0dd0acd738
uriplaylistbin: disable more tests
...
Those are not reliable either.
2022-05-30 09:23:52 +02:00
Jan Alexander Steffens (heftig)
68c55ca413
fallbackswitch: Recheck active_sinkpad after schedule_timeout
...
`schedule_timeout` can synchronously call `handle_timeout` and change the
active pad. We need to update `is_active` afterwards.
After calling `schedule_timeout` with `end_running_time`, we used to
assume there was no pad switch and reset `switched_pad` immediately. If
the pad actually got switched, this would make us miss a sticky events
update.
2022-05-25 17:53:55 +02:00
Guillaume Desmottes
351453c132
add snapshotting tracer
...
Convenient tracer to dump all the existing pipelines when receiving the
SIGUSR1 Unix signal.
2022-05-23 13:52:52 +02:00
Jan Alexander Steffens (heftig)
d27e279272
fallbackswitch: Move active_sinkpad out of State into its own Mutex
...
As described in issue #200 , we hold the srcpad's stream lock in some
situations where we notify the `active-pad` property.
If there's a handler installed it will most likely attempt to read the
property, which had to take the `state` lock. Another thread could
already be holding this lock and attempting to obtain the srcpad's
stream lock. This resulted in a deadlock.
To avoid this, move the `active_sinkpad` field into its own Mutex, which
we never hold for long.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/200
2022-05-12 16:52:07 +02:00
Guillaume Desmottes
d69b4edfbc
uriplaylistbin: fix number of streaming items
...
One more item than intended was allowed.
2022-04-22 14:50:42 +02:00
Guillaume Desmottes
03fcc2cb9a
uriplaylistbin: implement Debug on State
...
Help debugging.
2022-04-22 14:50:28 +02:00
Vivia Nikolaidou
385a983e5f
fallbackswitch: Fix racy manual switching test
...
The element has a small race condition where it might output two buffers
with the same running time during e.g. a manual switch. In practice this
is not a problem, so the test takes this race into account.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/195
2022-04-18 16:13:00 +03:00
Sebastian Dröge
e82678586f
fallbackswitch: Remove a redundant pad state unlock/lock
2022-04-14 08:14:26 +00:00