AWS::IVS::RecordingConfiguration - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::IVS::RecordingConfiguration

The AWS::IVS::RecordingConfiguration resource specifies an Amazon IVS recording configuration. A recording configuration enables the recording of a channel’s live streams to a data store. Multiple channels can reference the same recording configuration. For more information, see RecordingConfiguration in the Amazon IVS Low-Latency Streaming API Reference.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IVS::RecordingConfiguration", "Properties" : { "DestinationConfiguration" : DestinationConfiguration, "Name" : String, "RecordingReconnectWindowSeconds" : Integer, "RenditionConfiguration" : RenditionConfiguration, "Tags" : [ Tag, ... ], "ThumbnailConfiguration" : ThumbnailConfiguration } }

Properties

DestinationConfiguration

A destination configuration describes an S3 bucket where recorded video will be stored. See the DestinationConfiguration property type for more information.

Required: Yes

Type: DestinationConfiguration

Update requires: Replacement

Name

Recording-configuration name. The value does not need to be unique.

Required: No

Type: String

Pattern: ^[a-zA-Z0-9-_]*$

Minimum: 0

Maximum: 128

Update requires: Replacement

RecordingReconnectWindowSeconds

If a broadcast disconnects and then reconnects within the specified interval, the multiple streams will be considered a single broadcast and merged together.

Default: 0

Required: No

Type: Integer

Minimum: 0

Maximum: 300

Update requires: Replacement

RenditionConfiguration

A rendition configuration describes which renditions should be recorded for a stream. See the RenditionConfiguration property type for more information.

Required: No

Type: RenditionConfiguration

Update requires: Replacement

Tags

An array of key-value pairs to apply to this resource.

For more information, see Tag.

Required: No

Type: Array of Tag

Maximum: 50

Update requires: No interruption

ThumbnailConfiguration

A thumbnail configuration enables/disables the recording of thumbnails for a live session and controls the interval at which thumbnails are generated for the live session. See the ThumbnailConfiguration property type for more information.

Required: No

Type: ThumbnailConfiguration

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the recording-configuration ARN. For example:

{ "Ref": "myRecordingConfiguration" }

For the Amazon IVS recording configuration myRecordingConfiguration, Ref returns the recording-configuration ARN.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

The recording configuration ARN. For example: arn:aws:ivs:us-west-2:123456789012:recording-configuration/abcdABCDefgh

State

Indicates the current state of the recording configuration. When the state is ACTIVE, the configuration is ready to record a channel stream. Valid values: CREATING | CREATE_FAILED | ACTIVE.

Examples

Recording Configuration Template Examples

The following examples specify an Amazon IVS Channel that records live-channel streams to an S3 bucket.

JSON

{ "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket" }, "RecordingConfiguration": { "Type": "AWS::IVS::RecordingConfiguration", "DependsOn": "S3Bucket", "Properties": { "Name": “MyRecordingConfiguration”, "DestinationConfiguration": { "S3": { "BucketName": { "Ref": "S3Bucket" } } }, "ThumbnailConfiguration": { "RecordingMode": "INTERVAL", "TargetIntervalSeconds": 60, "Storage": ["SEQUENTIAL", "LATEST"], "Resolution": "HD" }, "RenditionConfiguration": { "RenditionSelection": "CUSTOM", "Renditions": ["HD", "SD"] } } }, "Channel": { "Type": "AWS::IVS::Channel", "DependsOn": "RecordingConfiguration", "Properties": { "Name": "MyRecordedChannel", "RecordingConfigurationArn": { "Ref": "RecordingConfiguration" } } } } }

YAML

Resources: S3Bucket: Type: AWS::S3::Bucket RecordingConfiguration: Type: AWS::IVS::RecordingConfiguration DependsOn: S3Bucket Properties: Name: MyRecordingConfiguration DestinationConfiguration: S3: BucketName: !Ref S3Bucket ThumbnailConfiguration: RecordingMode: INTERVAL TargetIntervalSeconds: 60 Resolution: HD Storage: - SEQUENTIAL - LATEST RenditionConfiguration: RenditionSelection: CUSTOM Renditions: - HD - SD Channel: Type: AWS::IVS::Channel DependsOn: RecordingConfiguration Properties: Name: MyRecordedChannel RecordingConfigurationArn: !Ref RecordingConfiguration

See also