gst-plugins-rs/net/rusoto
Arun Raghavan 724c6d6e32 rusoto: s3sink: Make remaining requests bounded in time
This implements a default timeout and retry duration for the remaining
S3 requests that were still able to be blocked indefinitely. There are 3
classes of operations: multipart upload creation/abort (should not take
too long), uploads (duration depends on part size), multipart upload
completion (can take several minutes according to documentation).

We currently only expose the part upload times as configurable, and hard
code the rest. If it seems sensible, we can expose the other two sets of
parameters as well.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/690>
2022-03-21 13:50:07 +05:30
..
src rusoto: s3sink: Make remaining requests bounded in time 2022-03-21 13:50:07 +05:30
build.rs fix-getters-calls 0.3.0 pass 2021-04-20 18:19:58 +02:00
Cargo.toml Update versions to 0.8.3 2022-03-08 19:49:16 +02:00
LICENSE-MPL-2.0 rusoto: Add missing license file 2022-01-16 13:53:04 +02:00
README.md rusoto: s3sink: Implement support for GstUriHandler interface 2021-05-01 13:55:49 +05:30

gst-plugin-s3

This is a GStreamer plugin to interact with Amazon Web Services. We currently have elements to interact with S3 and Transcribe.

AWS Credentials

AWS credentials are picked up using the mechanism that rusoto's ChainProvider uses. At the moment, that is:

  1. Environment variables: AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
  2. AWS credentials file. Usually located at ~/.aws/credentials.
  3. IAM instance profile. Will only work if running on an EC2 instance with an instance profile/role.

An example credentials file might look like:

[default]
aws_access_key_id = ...
aws_secret_access_key = ...

s3src

Reads from a given S3 (region, bucket, object, version?) tuple. The version may be omitted, in which case the default behaviour of fetching the latest version applies.

$ gst-launch-1.0 \
    s3src uri=s3://ap-south-1/my-bucket/my-object-key/which-can-have-slashes?version=my-optional-version !
    filesink name=my-object.out

s3sink

Writes data to a specified S3 (region, bucket, object, version?) tuple. The version may be omitted.

$ gst-launch-1.0 \
    videotestsrc ! \
    theoraenc ! \
    oggmux ! \
    s3sink uri=s3://us-west-1/example-bucket/my/file.ogv?version=my-optional-version

awstranscriber

Transcribes audio to text.