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 Interactive Video Service
API Reference.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::IVS::RecordingConfiguration", "Properties" : { "DestinationConfiguration" :
DestinationConfiguration
, "Name" :String
, "RecordingReconnectWindowSeconds" :Integer
, "RenditionConfiguration" :RenditionConfiguration
, "Tags" :[ Tag, ... ]
, "ThumbnailConfiguration" :ThumbnailConfiguration
} }
YAML
Type: AWS::IVS::RecordingConfiguration Properties: DestinationConfiguration:
DestinationConfiguration
Name:String
RecordingReconnectWindowSeconds:Integer
RenditionConfiguration:RenditionConfiguration
Tags:- Tag
ThumbnailConfiguration:ThumbnailConfiguration
Properties
DestinationConfiguration
-
A destination configuration contains information about 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
Minimum:
0
Maximum:
128
Pattern:
[a-zA-Z0-9-_]*
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
-
An array of key-value pairs to apply to this resource.
For more information, see Tag.
Required: No
Type: List of Tag
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
-
RecordingConfiguration API data type
-
DestinationConfiguration API data type
-
S3DestinationConfiguration API data type
-
CreateRecordingConfiguration API endpoint