François Laignel
b9cd71d8eb
net/aws/transcriber: fix eos not being sent
...
For eos to be sent from the srcpad task loop, we need to go through `dequeue`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1122 >
2023-03-09 13:07:03 +01:00
François Laignel
2ea9f147ab
net/aws/transcriber: fix deadlock when the pipeline is interrupted
...
... also makes sure to abort the taks_iter Future.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1122 >
2023-03-09 13:07:03 +01:00
Sebastian Dröge
3ef8a48ded
Fix a few new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1120 >
2023-03-07 08:47:01 +00:00
François Laignel
4a988aaeb8
net/aws/transcriber: use a TranscriberLoop struct
...
This helps gather together the details related to the `TranscriberLoop`.
One difference with previous implementation is that the ws `Client` is
build each time the loop is started instead of being reused. With the new
approach, we don't keep the connection open after EOS and we should be
more resistant in case of a connection failure.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
f1a080c94e
net/aws/transcriber: own transcription items
...
So that we can avoid copying the content.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
36ae29d746
net/aws: enqueue transcribed buffers within the ws loop
...
Instead of sending transcription events to the src pad loop, this commit
enqueues the transcribed buffers immediately in the ws loop, then notifies
the src pad loop. The src pad loop is only in charge of dequeuing the buffers.
This should help with upcoming evolutions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
00153754bb
net/aws: use aws-sdk-transcribestreaming
...
Switch from manual webservice client impl to `aws-sdk-transcribestreaming`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
57f365979c
net/aws: remove aws_ from the aws_transcribe* folder names
...
Those folders reside under `aws`, so there's shouldn't be any confusion.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
Sebastian Dröge
9fc1404415
Update minimum supported Rust version to 1.66
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096 >
2023-02-20 11:09:01 +02:00
Sebastian Dröge
ac8afc4ac0
Update to async-tungstenite 0.20
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1087 >
2023-02-10 13:03:07 +02:00
Sebastian Dröge
1e13dbb99c
Update versions to 0.11.0-alpha.1
2023-02-10 00:23:56 +02:00
rajneeshksoni
994c79569e
awss3sink: Add properties to set content-Type and content-disposition.
...
for uploaded object default content-type is set to binary/octet-stream,
which is correct.
metadata cannot be used to set content-type and content-disposition as
setting metadata add a prefix x-amz-meta to key
e.g. setting metadate "content-type=video/mp4" actually set value as
x-amz-meta-content-type. So these has to be seaprate property.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1085 >
2023-02-09 19:04:07 +00:00
Sanchayan Maity
6006a0ba36
aws/s3hlssink: Fix deadlock on EOS
...
In state change to NULL, we take state lock and call stop. When stop
is called, we will try to upload queued segments in S3 request thread.
That tries to take the state lock again and deadlocks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1076 >
2023-02-03 19:09:18 +05:30
Sanchayan Maity
41aa1e51da
aws/s3hlssink: Use factory name when checking name of child element
...
Commit ad3f1cf
fixed the name of hlssink child element to be the same
for hlssink2 and hlssink3. However, we rely on element name to return
boolean in case of hlssink3 or None in case of hlssink2 as the return
value of the delete-fragment closure.
Fix this by using the factory name instead of the element name.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1076 >
2023-02-03 19:08:40 +05:30
Sebastian Dröge
a1cce9b796
aws: Update to AWS SDK 0.54/0.24
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1066 >
2023-01-27 22:10:23 +02:00
Sebastian Dröge
3b4c48d9f5
Fix various new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1062 >
2023-01-25 10:31:19 +02:00
Arun Raghavan
ad3f1cf534
aws: s3hlssink: Fix the name of the hlssink child element
...
It's easier to set child element properties if the name doesn't depend
on the factory.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1061 >
2023-01-24 18:56:46 +00:00
Sebastian Dröge
4582ae91ab
Move remaining plugins to ParamSpec
builders
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1054 >
2023-01-21 18:34:55 +02:00
Sebastian Dröge
458b2386ed
Update for glib API changes
2023-01-21 18:13:48 +02:00
Sebastian Dröge
0c954135a3
aws: Update to AWS SDK 0.53/0.23
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1047 >
2023-01-14 18:58:30 +02:00
Sebastian Dröge
781fd1df9a
aws: Update to test-with 0.9
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1035 >
2023-01-05 12:35:42 +02:00
rajneeshksoni
d846f527af
awss3hlssink: Add stats property.
...
application can monitor the progress of hls segment generation
and upload progress.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1022 >
2023-01-04 12:36:13 +00:00
Sebastian Dröge
4e444a066c
aws: Update to AWS SDK 0.52/0.22
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1020 >
2022-12-18 07:54:30 +00:00
Sebastian Dröge
3f904553ea
Fix various new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1011 >
2022-12-13 11:43:16 +02:00
Sebastian Dröge
fb42cd8a0f
net: Update to async-tungstenite 0.19
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1005 >
2022-12-11 12:54:24 +02:00
Sebastian Dröge
0e2a00cbc8
aws: Update to env_logger 0.10 for the tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/984 >
2022-11-25 11:08:19 +02:00
Arun Raghavan
3abd13e57b
aws: s3sink: Treat stopping without EOS as an error for multipart upload
...
This allows us to try to clean up based on configuration (abort /
complete / do nothing) if the pipeline is shut down without an EOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/970 >
2022-11-15 02:28:35 +00:00
Arun Raghavan
54c84a7211
aws: Skip s3 test on Windows until we figure out why it times out
2022-11-02 13:14:08 -04:00
Sebastian Dröge
a8250abbf1
Fix various new clippy warnings
2022-11-01 10:27:48 +02:00
Sebastian Dröge
6ceeadc0f0
aws: Update to aws 0.21/0.51
2022-10-31 14:11:29 +02:00
Guillaume Desmottes
d46857d3b1
aws: fix title in README
...
The title was not matching the actual plugin name which was confusing.
2022-10-26 11:13:47 +02:00
Sebastian Dröge
f2223cf2cb
Update versions to 0.10.0-alpha.1
2022-10-24 19:31:19 +03:00
Sebastian Dröge
b64f951160
Update to async-tungstenite 0.18
2022-10-24 18:03:33 +03:00
Sebastian Dröge
9a68f6e221
Move from imp.instance()
to imp.obj()
...
It's doing the same thing and is shorter.
2022-10-23 23:08:46 +03:00
Sebastian Dröge
f045099fc1
Fix GObject type names, GStreamer debug category names and element factory names
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/198
2022-10-23 20:46:08 +03:00
Sebastian Dröge
20ad9175d8
Make GStreamer plugin/crate/library/directory names and descriptions consistent
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/238
2022-10-23 20:25:08 +03:00
François Laignel
6319d104a8
Take advantage of Into<Option<_>>
args
...
Commit 24b7cfc8
applied changes related to nullability as declared
by gir. One consequence was that some functions signature ended up
requiring users to pass `Some(val)` when they could use `val`
before.
This commit applies changes on `gstreamer-rs` which, will honoring
the nullability stil allow users to pass `val` for the few affected
functions.
This commit also fixes the signature for `Element::request_new_pad`
which was updated upstream.
2022-10-21 11:54:24 +02:00
Sebastian Dröge
12400b6b87
Update everything for element factory builder API changes
...
And set properties as part of object construction wherever it makes
sense.
2022-10-19 19:43:29 +03:00
François Laignel
8011eadfd2
Use new format constructors
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1128
2022-10-18 10:36:59 +00:00
Arun Raghavan
e66378d254
aws: Add a test for s3src/s3sink
...
This does rely on AWS credentials being provided in the environment, but
the test will be ignored if those are missing.
2022-10-18 09:51:34 +00:00
Vivia Nikolaidou
f11b0fa5eb
plugins, examples, tutorials: Use AudioCapsBuilder and VideoCapsBuilder
...
Simplify caps creation code
2022-10-13 19:24:57 +00:00
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
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
6a10728d94
aws: Update to aws 0.48/0.18
2022-09-21 11:17:44 +03:00
rajneeshksoni
45962eca1c
s3sink, s3src: Max 1 (re)try when retry-duration < request_timeout.
...
When retry-duration is less than request_timeout, only 1 try
is attempted.
2022-09-13 08:02:54 +00:00
rajneeshksoni
62f76e1e8b
s3sink: Dont set call_timeout,call_attempt_timeout is enough with retry.
...
When call_timeout is triggered, request will fail
irrespective of the retry setting. call_timeout define
max time request can take along with retry.
It can be solved by either setting call_timeout to
retry * call_attempt_timeout or not setting the call_timeout.
As per thread call_attempt and rety setting is enough.
https://github.com/awslabs/aws-sdk-rust/issues/558
2022-09-13 08:02:54 +00:00
Mathieu Duponchelle
419cc03133
awstranscriber: only set vocabulary filter when vocabulary is set
...
AWS otherwise refuses to start the transcription.
2022-09-09 06:53:54 +00:00
Mathieu Duponchelle
72b659b3ea
awstranscriber: fix set_property for language-code
2022-09-09 06:53:54 +00: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
Xavier Claessens
16f9c37c71
Fix missing pkgconfig requires
2022-09-02 22:00:57 +00:00
Sebastian Dröge
827099d22d
aws: Update to aws 0.18/0.48
2022-09-02 10:46:02 +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
Arun Raghavan
56e7a2f6ab
aws: Document the s3hlssink element in README
2022-08-23 06:19:39 -04:00
Vivia Nikolaidou
5606111345
plugins: Simplify code using ParamSpecBuilder
2022-08-22 17:58:43 +03:00
Sebastian Dröge
8b11aee04d
aws: Update to aws 0.17/0.47
2022-08-09 13:40:39 +00:00
Mathieu Duponchelle
f646cabb3d
aws_transcriber: expose filtering related properties
...
- vocabulary-filter-name allows picking a vocabulary to filter words
- vocabulary-filter-method allows controlling how words are filtered
2022-08-09 12:14:31 +00:00
Sanchayan Maity
d240bbc4e2
aws_transcriber: Fix regression with credentials mechanism
...
A regression was introduced during the migration to AWS SDK. One used
to be able to provide credentials in multiple ways with the earlier
Rusoto ChainProvider (config file / environment variables). Now one
has to explicitly set the properties.
Use the DefaultCredentialsChain from AWS SDK to restore the previous
functionality.
See
https://docs.rs/aws-config/0.46.0/aws_config/default_provider/credentials/struct.DefaultCredentialsChain.html .
2022-08-04 12:15:32 +00:00
Sanchayan Maity
a4893f30c8
net/aws: Add support for specifying endpoint
...
Allow specifying an endpoint to be used for S3 requests. This makes
it possible to use integrations providing object storage based on S3
API like MinIO.
When the endpoint-uri property is specified, the endpoint resolver to
use will be overridden when making S3 requests.
2022-08-04 10:37:37 +05:30
Sebastian Dröge
88bb91a5cb
aws: Update to aws 0.15/0.45
2022-07-04 10:20:43 +03:00
Sebastian Dröge
51c7d0652e
Fix/silence a couple new clippy warnings
2022-06-30 16:07:32 +03:00
Sanchayan Maity
a85a647794
net/aws: Add support for S3 HLS sink
...
This is a helper bin allowing the output of HLS sink to be uploaded
to S3.
2022-06-29 17:35:37 +00:00
Sanchayan Maity
e0594ef349
net/aws/aws_transcriber: Fix clippy warning
2022-06-29 17:35:37 +00:00
Sanchayan Maity
7bc785fba3
net/aws: Clean up pending rusoto references
2022-06-29 17:35:37 +00:00
Sebastian Dröge
5c00db62b7
aws: Update to aws 0.14/0.44
2022-06-27 10:11:16 +03:00
Rajneesh Soni
b3e558bec0
aws: s3sink,s3src,transcriber: Add property to set temporary credentials.
...
STS provide temporary credentials to access AWS resource. Temporary
credentials include, AccessKeyId, SecretAccessKey and SessionToken.
With session-token property, element will be able to use temporary
credentials. When session-token is not set, element can use long
term credentials.
2022-06-22 18:45:41 +00:00
Sebastian Dröge
d902ecca4f
aws: Update to aws 0.13/0.43
2022-06-21 06:45:24 +00:00
Sanchayan Maity
19f69614a2
aws: s3sink: Add a deprecation warning for retry duration properties
...
Keeping the upload-part-retry-duration & complete-upload-retry-duration
properties changes the semantics in comparison to their usage in
rusotos3sink. Deprecate these two properties and add a warning while
making them noop.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/759 >
2022-06-14 08:03:49 +00:00
Sanchayan Maity
511ee766df
Rename rusoto to aws
...
Now that migration to AWS SDK is complete, rename directory and
references to aws/AWS SDK.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/759 >
2022-06-14 08:03:49 +00:00