Commit graph

1443 commits

Author SHA1 Message Date
Sebastian Dröge
45c8f3d49d deny: Ignore duplicated wasi dependency 2022-03-21 13:50:07 +05:30
Sebastian Dröge
b01b9711dc Use SPDX license format in Cargo.toml 2022-03-21 13:50:07 +05:30
Seungha Yang
801d928aac transcriberbin: Don't notify signal inside lock
That can potentially cause deadlock
2022-03-21 13:50:07 +05:30
Seungha Yang
76f09860b1 transcriberbin: Add caption-source property
By using this new property, application can select exclusive caption
source. There are three source types
- Both: Inband and transcription captions are combined if exist.
  This is default behavior.
- Inband: Transcription buffers will be dropped
- Transcription: Caption meta of each video buffer will be dropped

In this version, transcriberbin doesn't provide any hint
for application to help caption source decision. That can be done
by application's strategy, passthrough status or probing inband
caption meta for example.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/684>
2022-03-21 13:50:07 +05:30
Sebastian Dröge
210f2ccb38 Update Cargo.lock 2022-03-08 19:50:16 +02:00
Sebastian Dröge
b9887e1057 Update versions to 0.8.3 2022-03-08 19:49:16 +02:00
Sebastian Dröge
3da3c2591c Update Cargo.lock 2022-03-08 19:23:26 +02:00
Seungha Yang
ce24ca965e transcriberbin: Fix deadlock
Fix race between latency query handler and setup_transcription()
method.

Locking order of setup_transcription() is
state lock -> setup_transcription() -> settings lock
So taking state lock inside of setting lock in src_query()
can cause deadlock.
2022-03-08 19:23:26 +02:00
Sebastian Dröge
1c2d4d4350 rusoto: Update async-tungstenite dependency to 0.17 2022-03-08 19:23:26 +02:00
Sebastian Dröge
8747b569b7 audiofx: Update nnoiseless dependency to 0.4 2022-03-08 19:23:26 +02:00
Sebastian Dröge
cb0a67fc31 textwrap: Update for textwrap 0.15 API changes 2022-03-08 19:23:26 +02:00
Seungha Yang
88262e596d fallbacksrc: Disconnect signals on ReadyToNull
Otherwise multiple signal handlers will be connected to the source
2022-03-08 19:23:26 +02:00
Sebastian Dröge
29006999a4 fallbacksrc: Changing the URI of the video fallback is supported in NULL state
And not just during construction.

This fixes switching from a failing video fallback to a dummy fallback,
which was added in c7fe08bf6.
2022-03-08 19:23:26 +02:00
Arun Raghavan
249b0ac4c1 rusoto: s3sink: Implement timeout/retry for part uploads
Rusoto does not implement timeouts or retries for any of its HTTP
requests. This is particularly problematic for the part upload stage of
multipart uploads, as a blip in the network could cause part uploads to
freeze for a long duration and eventually bail.

To avoid this, for part uploads, we add (a) (configurable) timeouts for
each request, and (b) retries with exponential backoff, upto a
configurable duration.

It is not clear if/how we want to do this for other types of requests.
The creation of a multipart upload should be relatively quick, but the
completion of an upload might take several minutes, so there is no
one-size-fits-all configuration, necessarily.

It would likely make more sense to implement some sensible hard-coded
defaults for these other sorts of requests.
2022-03-08 19:23:26 +02:00
Guillaume Desmottes
930bfce629 ci: run tests with RUST_BACKTRACE
Handy to debug failing tests.
2022-03-08 18:58:34 +02:00
Guillaume Desmottes
94fce11b25 uriplaylistbin: display invalid state when panicing
Will help debugging failing tests such as #184
2022-03-08 18:58:25 +02:00
François Laignel
92ca54f0ba generic/threadshare: fix for nightly build 2022-03-08 18:58:09 +02:00
François Laignel
91ead3da7a ci: cargo test --all-features too...
... and replace the deprecated --all argument with --workspace.

Also use --all-targets so that code, unit tests, integration tests
and examples can all be compiled or tested in one go.
2022-03-08 18:57:56 +02:00
Guillaume Desmottes
54ebb1c254 fallbackswitch: properly handle GAP events
Handle GAP events from the active pad as activity and forward
downstream.
2022-03-03 15:10:20 +01:00
Guillaume Desmottes
4e7141f0e3 fallbackswitch: factor out handle_main_timed_item()
No semantic change, I'll re-use this to handle GAP events.
2022-03-03 15:09:18 +01:00
Guillaume Desmottes
e097feea1f fallbackswitch: add support for buffers without pts
Re-use the previously seen PTS.

Fix #186
2022-03-03 15:07:08 +01:00
Guillaume Desmottes
ac1c6e513e fallbackswitch: export GEnum used in properties
Rust applications will be able to use those directly.
2022-03-02 11:08:30 +01:00
Guillaume Desmottes
8c738b7a2e uriplaylistbin: disable test deadlocking 2022-03-02 11:08:30 +01:00
Sebastian Dröge
7d093ffcc6 Update Cargo.lock 2022-02-21 12:51:52 +02:00
Sebastian Dröge
4ef0fcd22e Update versions to 0.8.2 2022-02-21 12:51:40 +02:00
Sebastian Dröge
0a8f2164a3 ci: Use correct gstreamer-rs images template 2022-02-21 09:29:58 +02:00
Sebastian Dröge
b80ed2cc19 Update Cargo.lock 2022-02-20 23:02:48 +02:00
Sebastian Dröge
488b1fc5f5 deny: Remove num-rational override 2022-02-20 20:50:44 +02:00
Sebastian Dröge
171e6409c6 deny: Update 2022-02-20 20:50:34 +02:00
Sebastian Dröge
df16fdf1bc deny: Update 2022-02-20 20:50:34 +02:00
Sebastian Dröge
51ba558b21 dav1ddec: Use AtomicRefCell instead of Mutex for the state
It's only accessed from the streaming thread.
2022-02-20 20:50:02 +02:00
Sebastian Dröge
c25966ef6e dav1ddec: Fix compilation after some API changes 2022-02-20 20:49:42 +02:00
Sebastian Dröge
730d0832ae dav1ddec: Release input frames that immediately caused a decoding error
We're not going to get any output for them.
2022-02-20 20:49:33 +02:00
Sebastian Dröge
556b39332d dav1ddec: Update for fixed dav1d-rs API
As a side effect this allows us also to handle errors more gracefully
and to reduce memory load by outputting decoded frames immediately.

Also the code was changed a bit to reduce the number of redundant mutex
lock/unlocks.
2022-02-20 20:49:22 +02:00
Sebastian Dröge
5740d06db2 rav1eenc: Use AtomicRefCell instead of Mutex for the state
It's only accessed from the streaming thread.
2022-02-20 20:47:34 +02:00
Sebastian Dröge
af703d3da2 rav1enc: Put container sequence header into the caps 2022-02-20 20:47:24 +02:00
Sebastian Dröge
2e9418603a dav1ddec: Switch to dav1d 0.7 2022-02-20 20:47:15 +02:00
Sebastian Dröge
fa59fb016e rav1enc: Don't handle NeedMoreData as "soft" error 2022-02-20 20:46:44 +02:00
Sebastian Dröge
b90a670de0 rav1enc: Simplify code
Sending a `None` frame is equivalent to calling `flush()` so no need to
do both.
2022-02-20 20:46:38 +02:00
Sebastian Dröge
1019374324 rav1enc: Set mastering display info, content light level and HDR related colorimetry
Configurable behind the "hdr" cargo feature that is enabled by default
but requires GStreamer 1.18.
2022-02-20 20:46:32 +02:00
Sebastian Dröge
78897820a1 rav1enc: Expose various new settings 2022-02-20 20:46:32 +02:00
Sebastian Dröge
34cf38cc5e rav1enc: Switch from speed preset 5 to 6 as default
This is the default of rav1e nowadays.
2022-02-20 20:46:32 +02:00
fb1cbe1a4c rusoto: Export AwsTranscriberResultStability enum 2022-02-20 20:46:32 +02:00
Sebastian Dröge
9824c23ee5 Update Cargo.lock 2022-02-04 18:48:43 +02:00
Sebastian Dröge
f0add79b7d Update versions to 0.8.1 2022-02-04 18:46:12 +02:00
Sebastian Dröge
1a9b5c6eab Update Cargo.lock 2022-02-04 18:10:29 +02:00
Guillaume Desmottes
d8c4293d6a cdg: update image and cdg_renderer
I pushed a cdg_renderer release using latest image.
2022-02-04 18:09:08 +02:00
Sebastian Dröge
34f8c4beac gtk4: Attach main context receiver from the main context's thread
Otherwise it will fail if the sink's state is changed from a different
thread.

See https://gitlab.freedesktop.org/dabrain34/GstPipelineStudio/-/issues/2
2022-02-04 18:09:02 +02:00
Sebastian Dröge
7bb42f3f5e dav1ddec: Add 8/16 bit grayscale support 2022-02-04 18:08:54 +02:00
Sebastian Dröge
9570fcaddd rav1enc: Support 8 bit grayscale input 2022-02-04 18:08:48 +02:00