Commit graph

1376 commits

Author SHA1 Message Date
Guillaume Desmottes
f9a39b1138 add uriplaylistbin plugin
uriplaylistbin plays a list of URIs sequentially, ensuring gapless transitions
and proper streams synchronization.
2021-11-29 10:55:01 +01:00
Mathieu Duponchelle
97e6a89cac aws_transcriber: sanity check alternative length
The design of the element is based on the assumption that when
receiving a partial result, the following result will contain
at least as many items as there were stable items in the previous
result.

This patch adds a sanity check to make sure our "partial index"
isn't larger than the new received result, and errors out otherwise.

partial_index will eventually be reset to 0 once we receive a
new non-partial result.
2021-11-24 13:10:00 +00:00
Sebastian Dröge
3cf2ad3b77 deny: Update 2021-11-24 09:57:44 +02:00
Tomasz Andrzejak
4668da45ef audiofx: Add HRTF renderer element
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/128
2021-11-23 08:19:29 +00:00
Guillaume Desmottes
0b348406ef s3sink: add metadata property
This property can be used to set metadata on the S3 storage object.
2021-11-22 17:03:24 +01:00
Guillaume Desmottes
11bef9066c s3sink: log when setting properties 2021-11-22 16:52:04 +01:00
Sanchayan Maity
2c2cd8c2be Implement rounded corners
This plugin takes I420/YUV and appends an alpha plane to give YUVA/A420
to round the corners analogous to the border-radius in CSS. Other video
formats like NV12 not supported yet. Support for other planar formats
will follow.

Not all ways of specifying border-radius as in CSS are implemented at
the moment. Currently, we only support specifying it in pixels and it
gets applied uniformly to all corners.
2021-11-22 17:04:07 +05:30
Sebastian Dröge
86f422592b Update for glib::Enum / glib::Boxed / glib::flags! macro renames 2021-11-22 11:04:26 +02:00
Sebastian Dröge
651ea7de5f hlssink3: Minor cleanup of debug output
Pass the object instance to the debug logs too to be able to distinguish
multiple instances.
2021-11-21 18:18:56 +02:00
Sebastian Dröge
c68f6b2631 Update for GLib signal emit_by_name() API changes 2021-11-21 18:15:04 +02:00
Sebastian Dröge
55aad51141 Update for glib constructor renames
See https://github.com/gtk-rs/gtk-rs-core/pull/384
2021-11-20 14:31:06 +02:00
Sebastian Dröge
288acaa7cc cdg: Update test for child proxy property API changes 2021-11-20 10:47:02 +02:00
Jan Alexander Steffens (heftig)
5285fab8b3 fallbackswitch: Correct immediate-fallback default value
Only affects the claimed default in the properties, not the actual
default.
2021-11-18 21:02:54 +00:00
Sebastian Dröge
8722206be8 hlssink3: Update to m3u8-rs 3
This uses nom 7 now.
2021-11-18 21:44:09 +02:00
Jan Alexander Steffens (heftig)
29d310a2ab
version-helper: Specify chrono's features
Using the default-features implies `oldtime`, which adds a dependency on
the deprecated `time` 0.1 crate.
2021-11-18 19:06:10 +01:00
François Laignel
31172bb011 deny.toml: ignore RUSTSEC-2021-0124 again
The vulnerability was handled as part of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/602
and
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/603
but the tokio fork used in threadshare is based on an earlier
version which prevents cargo-deny from assuming that the vulnerability
is fixed.

See https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/604
2021-11-18 12:57:10 +01:00
François Laignel
8d9a7fefa1 deny.toml: remove RUSTSEC-2021-0124
Fixed by https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/602
2021-11-17 16:23:48 +01:00
François Laignel
53bfb58751 ts: update tokio fork for RUSTSEC-2021-0124
A data race condition was discovered in tokio, which can lead
to memory corruption. This vulnerability affects our fork.

See:

- https://rustsec.org/advisories/RUSTSEC-2021-0124
- https://github.com/tokio-rs/tokio/issues/4225
- https://github.com/tokio-rs/tokio/pull/4226
- https://github.com/fengalin/tokio/pull/1

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/174
2021-11-17 14:51:03 +01:00
Sebastian Dröge
88ecd79090 deny: Update 2021-11-17 10:16:26 +02:00
Sebastian Dröge
41a37db2c7 hlssink3: Use local version of gst-plugin-version-helper 2021-11-17 10:11:43 +02:00
Sebastian Dröge
f817f6e9b9 Update to rav1e 0.5 and async-tungstenite 0.16
Also add an asm feature to rav1e, which requires nasm to be in place.
2021-11-17 10:10:00 +02:00
58322bcc96
Fix license in hlssink3 plugin 2021-11-16 19:52:30 +01:00
e87a7afe3e Add hlssink3 plugin 2021-11-16 08:23:44 +00:00
Mathieu Duponchelle
b738d5933d tttojson: fix row computation
I hadn't really tested the element with pop-on mode, and the row
for each line in the input text was hardcoded to 13, which was
clearly wrong.

Switch to incrementing it properly.
2021-11-16 07:51:41 +00:00
Sebastian Dröge
e3fbf2078d Add new fmp4 plugin with muxers for ISO fragmented MP4, DASH and CMAF containers 2021-11-15 14:04:03 +02:00
Sebastian Dröge
e81047b8a2 cea608overlay: Fix compilation after Pango API changes 2021-11-13 12:33:55 +02:00
Mathieu Duponchelle
78d7cbd7dd cea608overlay: expose timeout property
C.9 Automatic Caption Erasure (Preferred)

[...]

Some manufacturers have suggested building automatic timeout into their
decoders. They propose that if no data are received for the selected caption
channel within a given time, the decoder should automatically erase the
caption. Such erasure may supersede the intentions of the caption service
providers and institute one maximum display time for all captioning services.

If such a timeout is deemed necessary, however, the time limit should be no less
than 16 seconds, an amount of time said by caption service providers to be longer
than their most enduring caption. It is preferred, when automatic caption erasure
is used in a decoder, that only displayed memory be erased, since some caption
service providers may, contrary to recommended practice (see Section B.8.3), send
pop-on style caption data to non-displayed memory more than 16 seconds before
sending the EOC command which causes the caption to display.
2021-11-13 00:15:47 +01:00
Arun Raghavan
44b4a4eb7e meson: Specify minimum cargo-c version
We need newer versions that support '-p' to select the package to build.
2021-11-09 16:14:20 -05:00
Bilal Elmoussaoui
82be7b3ac5 adapt to ObjectExt improvements 2021-11-08 14:43:53 +02:00
Sebastian Dröge
d9bda62a47 Update for GLib/GStreamer API changes
And clean up a lot of related property/caps/structure code.
2021-11-06 09:34:10 +02:00
Guillaume Desmottes
c99b7785f9 ci: add gst-build job schedule job 2021-11-02 14:25:32 +01:00
Guillaume Desmottes
32ef12e738 meson: fix out of tree build
Needed for gst-build integration. Thanks to Michael Farrell for the fix
suggestion.

Fix #171
2021-11-02 10:18:13 +01:00
Sebastian Dröge
0a7d1639e7 Update to Rust edition 2021 and minimum supported Rust version to 1.56 2021-10-31 17:40:05 +02:00
Michael Farrell
5ae1f72162 cea608overlay: Update for multiple Pango API changes in gtk-rs-core#308
https://github.com/gtk-rs/gtk-rs-core/pull/308
2021-10-31 12:50:50 +02:00
Sebastian Dröge
da4122a721 closedcaption/mccenc: Update for glib::DateTime / TimeSpan API changes 2021-10-23 13:07:01 +03:00
Sebastian Dröge
b9541b2ca4 Update for GstObjectImpl API change 2021-10-23 12:31:33 +03:00
Sebastian Dröge
db30cfcc74 ci: Install cargo-c 0.9.4 until our minimum supported Rust version is 1.56 2021-10-23 10:37:55 +03:00
Guillaume Desmottes
acce0ab4fc meson: build all workspaces all together
It's now possible thanks to cargo-c 0.9.3. Should reduce build time of
all plugins.

Fix #165
2021-10-19 07:49:22 +00:00
Guillaume Desmottes
97f45a0f77 README: newer cargo-c can now take the workspace name
Easier to use than the manifest path.
2021-10-19 07:49:22 +00:00
Sebastian Dröge
6111d0f4ed deny: Also ignore RUSTSEC-2020-0159 for now
Also waiting for https://github.com/chronotope/chrono/pull/578
2021-10-19 09:44:54 +03:00
François Laignel
27b9f0d868 Improve usability thanks to opt-ops
The crate option-operations simplifies usage when dealing with
`Option`s, which is often the case with `ClockTime`.
2021-10-18 15:09:47 +02:00
Sebastian Dröge
bd8a7e8df7 deny: Ignore RUSTSEC-2020-0071 for now
Waiting for https://github.com/chronotope/chrono/pull/578
2021-10-18 09:46:49 +03:00
Michael Farrell
b0cebbedbc readme: Fix GST_PLUGIN_PATH instructions to include target triple.
This change also puts the `target/` directory first, for locally-built
plugins to take priority over distribution-provided plugins. It also
encloses the environment variable in quotes, in case it contains paths with
spaces.
2021-10-18 03:01:05 +00:00
Sebastian Dröge
70f0aa9758 gtk4: Add support for rendering overlay composition rectangles directly via GTK 2021-10-17 19:03:24 +00:00
Sebastian Dröge
54c8f5b3ab fallbackswitch: Remove bundled aggregator copy and require GStreamer 1.18
1.18 is old enough at this point and carrying around a copy of
 aggregator is not sustainable.
2021-10-17 17:35:45 +03:00
Sebastian Dröge
c5d3a2efce Update for event API changes 2021-10-17 17:30:38 +03:00
Sebastian Dröge
01a551f2ac rav1enc/gifenc: Add VideoMeta to the supported metas in propose_allocation() 2021-10-16 16:21:49 +03:00
Sebastian Dröge
fe0075ad15 closedcaption/cea608overlay: Proxy the allocation query 2021-10-16 16:21:49 +03:00
Sebastian Dröge
cecacf5430 hsv: Port detecter/filter to VideoFilter base class 2021-10-16 16:21:49 +03:00
Sebastian Dröge
76a33e8f47 tutorial: Port Rgb2Gray to VideoFilter base class 2021-10-16 15:24:00 +03:00