Arun Raghavan
5d01bfcb79
dav1ddec: Move decoder init from start() to set_format()
...
We need a successful LATENCY query to be able to correctly initialise
max frame delay, so let's defer decoder init until we know upstream is
readier for it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/698 >
2022-05-11 10:01:51 -04:00
Arun Raghavan
05258756ce
dav1ddec: Report latency based on frame delay
...
This is not strictly correct as we might not use the same mechanism that
dav1d is using to detect the number of CPUs. We can drop the num_cpus
based approach once
https://code.videolan.org/videolan/dav1d/-/merge_requests/1407 is merged
upstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/698 >
2022-05-11 08:29:48 -04:00
Arun Raghavan
7d681c5ce4
dav1ddec: Expose a couple of decoder settings as properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/698 >
2022-05-11 08:29:16 -04:00
Arun Raghavan
ea98a0b596
dav1ddec: Bump dependency for dav1d 1.0.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/698 >
2022-05-11 08:29:15 -04:00
Mathieu Duponchelle
943a138d49
ts-jitterbuffer: set jbuf delay when instantiating it
...
The internal (C) jitterbuffer needs to know about the configured
latency when calculating a PTS, as it otherwise may consider that
the packet is too late, trigger a resync and cause the element to
discard the packet altogether.
I could not identify when this was broken, but the net effect was
that in the current state, ts-jitterbuffer was discarding up to
half of all the incoming packets.
2022-05-11 06:29:22 +00:00
Mathieu Duponchelle
05ece5560e
tttocea608: expose roll-up timeout property
...
In roll-up mode, when no more timed text comes in, the closed
captions may remain displayed on screen indefinitely (unless the
decoder implements a timeout, but that is not mandatory).
Expose a property to erase the display memory after a configurable
amount of time has elapsed instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/754 >
2022-05-11 01:47:52 +02:00
Mathieu Duponchelle
6b80fdc270
cea608overlay: handle CLEAR status
...
+ log errors
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/754 >
2022-05-10 18:52:56 +02:00
Mathieu Duponchelle
7425b31173
onvifaggregator: always push current media buffer on timeout
...
Even when aggregator.meta_frames is empty
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/751 >
2022-05-10 14:35:50 +00:00
Sebastian Dröge
e93544cfc6
tutorial/sinesrc: Use pushsrc as direct superclass in the glib::wrapper macro too
2022-05-10 10:05:48 +00:00
Jordan Petridis
a4aa45d27f
ci: remove the david checkot after install
...
Makes the docker image slightly smaller
2022-05-10 12:34:03 +03:00
Sebastian Dröge
ce50a3003c
textahead: PadTemplate::caps()
returns a caps reference now
2022-05-08 13:31:10 +03:00
Sebastian Dröge
2f16b5dd3e
threadshare: Use into_glib_ptr()
instead of into_ptr()
2022-05-08 13:31:10 +03:00
Sebastian Dröge
817231b4d0
hlssink3: PadTemplate::name_template()
returns a &str
now instead of Option<String>
2022-05-08 13:31:10 +03:00
Sebastian Dröge
92c66be943
onvifaggregator: Update for minor PadTemplate
API changes
...
`PadTemplate::caps()` returns a reference to the caps now instead of a
new strong reference, so keeping the template in scope as long as the
caps reference is required.
2022-05-08 13:31:03 +03:00
Mathieu Duponchelle
a4a5caec53
net/onvif: implement ONVIF metadata processing elements
...
- RTP payloader and depayloader
- Aggregator to pair per-frame metadata with media frames
- Overlay to render detected shapes
2022-05-06 11:17:04 +03:00
Sebastian Dröge
4a2c93299e
mccparse/sccparse: Don't log gst::FlowError::Flushing or Eos as error to the debug logs
2022-05-03 15:32:07 +03:00
Julien Vary
f908cbaffd
fmp4mux: adding headers when data resumes after EOS
2022-04-28 11:39:55 -04:00
Tim-Philipp Müller
90c203857a
threadshare: fix build on Windows
2022-04-27 00:13:46 +01:00
Philippe Normand
5aa1b7cd3b
README: Mention the colordetect element
2022-04-26 14:59:45 +01:00
Sebastian Dröge
3e10efa134
rusoto: Update to crc 3 and rusoto 0.48
2022-04-26 11:22:24 +03:00
Sebastian Dröge
5feca3f74b
deny: Update
2022-04-22 13:18:26 +00:00
Sebastian Dröge
ae32cc7f2b
closedcaption: Update to uuid 1.0
2022-04-22 13:18:26 +00: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
Thibault Saunier
7ff998f925
meson: Cleanup our meson integration
...
Writing a proper "depfile" to follow depending files, based on depfiles
generated by rustc.
This is based on work done while working on gobject-examples-rs
2022-04-20 10:21:59 -04: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
Philippe Normand
b423febfbe
videofx: Add colordetect video filter
...
This new video filter is able to detect the dominant color in a video frame.
When the color has changed from the previous frame the filter posts an Element
message on the bus, the associated structure is named `colordetect` and has two
fields:
* a string field named `dominant-color`
* a list field containing the whole color palette, stored as uint values, sorted
by dominance, with more dominant colors first
2022-04-16 17:40:34 +01:00
Sebastian Dröge
e82678586f
fallbackswitch: Remove a redundant pad state unlock/lock
2022-04-14 08:14:26 +00:00
Sebastian Dröge
279dd7d053
fallbackswitch: Set end running time as current running time once a buffer has passed
2022-04-14 08:14:26 +00:00
Sebastian Dröge
4aa00c9eca
fallbackswitch: Don't configure a framerate in the test
...
The tests assume that buffers have no known duration and would deadlock
otherwise because timeouts are scheduled to the end of a buffer.
2022-04-14 08:14:26 +00:00
Sebastian Dröge
f5260f9b36
fallbackswitch: Explictly set priority of pads in the test
2022-04-14 08:14:26 +00:00
Sebastian Dröge
0ca0d485a0
fallbackswitch: Log affected pad when scheduling buffer waiting for it
2022-04-14 08:14:26 +00:00
Sebastian Dröge
d73bce2985
fallbackswitch: Only update the output running time if it's increasing
2022-04-14 08:14:26 +00:00
Sebastian Dröge
930cdca750
fallbackswitch: Only drop raw audio/video buffers if they're trailing
...
Otherwise this can cause decoding errors further downstream.
2022-04-14 08:14:26 +00:00
Sebastian Dröge
bbb7ced95a
fallbackswitch: Improve some debug outputs
...
Don't print "buffer buffer ...".
2022-04-14 08:14:26 +00:00
Sebastian Dröge
ca7cf7dee7
fallbackswitch: Fix clipping of buffers against the output running time
...
To handle buffers outside the segment correctly.
Also fix debug output to print the correct value.
2022-04-14 08:14:26 +00:00
Sebastian Dröge
617a2ef49e
fallbackswitch: Clip buffers against the segment
...
Also clip raw audio/video buffers according to the caps if they have the
relevant information in the caps, and drop raw audio samples if they're
outside the segment too.
In addition also set durations on raw audio/video buffers based on the
caps if no duration is set.
2022-04-14 08:14:26 +00:00
Sebastian Dröge
6ce523a7a8
fallbackswitch: Improve debug output of clock times and simplify some code
2022-04-14 08:14:26 +00:00
Sebastian Dröge
9e3f713aa9
Update to m3u8-rs 4.0
2022-04-14 07:41:18 +00:00
Thibault Saunier
94b7677318
meson: Fix building when git isn't available
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/178
2022-04-13 17:01:34 -04:00
Guillaume Desmottes
5004479c6f
uriplaylistbin: disable more tests
...
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/194
2022-04-13 07:55:27 +00:00
Sebastian Dröge
a4fd144647
deny: Remove now unneeded miniz_oxide override
2022-04-13 10:40:29 +03:00
Seungha Yang
930cc41aaa
fallbacksrc: Don't forward manual flush events to downstream
...
fallbackswitch might forward flush event if it's for the currently
active pad. But forwarded flush event will be problematic in various
reasons and that's not a behavior we expected.
2022-04-12 23:21:32 +09:00
Sebastian Dröge
5788837fb6
fallbacksrc: Unflush downstream pads of the source after shutting down everything
...
Otherwise the pads might still be flushing on the next try and the
source would never recover.
2022-04-12 14:40:08 +03:00
Sebastian Dröge
7233d6936c
fallbacksrc: Remove imagefreeze if it becomes unneeded
2022-04-12 14:37:29 +03:00
Sebastian Dröge
874063668b
Update license text in the README.md
2022-04-12 12:24:55 +03:00
Sebastian Dröge
28dbbe33db
Update README.md with all the new plugins/elements
2022-04-12 12:21:00 +03:00
Vivia Nikolaidou
de936f42e9
fallbackswitch: Minor cleanup in get_sync_time
2022-04-11 15:57:20 +03:00
Sebastian Dröge
3de317b3c9
fallbacksrc: Don't panic when shutting down the source and there are source pad blocks but no actual source pads
...
This can happen if the source removed the actual source pad already but
our downstream pad that is blocked still exists.
2022-04-11 11:01:27 +00:00
Sebastian Dröge
84402f39ef
fallbacksrc: Reset state in fallbacksrc custom source also if changing the state to READY before failed
...
Otherwise it will panic on the next try because always pads are already
linked to the ghostpads.
2022-04-11 11:01:27 +00:00