本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CreateStream
创建新的 Kinesis 视频流。
创建新流时,Kinesis Video Streams 会为其分配一个版本号。更改流的元数据时,Kinesis Video Streams 会更新该版本。
CreateStream
是一个异步操作。
有关服务工作方式的信息,请参阅工作方式。
您必须有 KinesisVideo:CreateStream
操作的权限。
请求语法
POST /createStream HTTP/1.1
Content-type: application/json
{
"DataRetentionInHours": number
,
"DeviceName": "string
",
"KmsKeyId": "string
",
"MediaType": "string
",
"StreamName": "string
",
"Tags": {
"string
" : "string
"
}
}
URI请求参数
该请求不使用任何URI参数。
请求正文
该请求接受以下JSON格式的数据。
- DataRetentionInHours
-
您希望在流中保留数据的小时数。Kinesis Video Streams 将数据保留在与流关联的数据存储中。
默认值为 0,表示流不保留数据。最短为 1 小时。
当该
DataRetentionInHours
值为 0 时,使用者仍然可以使用保留在服务主机缓冲区中的碎片,该缓冲区的保留时间限制为 5 分钟,保留内存限制为 200 MB。当达到任一限制时,片段将从缓冲区中移除。类型:整数
有效范围:最小值为 0。
必需:否
- DeviceName
-
正在写入流的设备的名称。
注意
在当前的实现中,Kinesis Video Streams 没有使用这个名称。
类型:字符串
长度限制:长度下限为 1。长度上限为 128。
模式:
[a-zA-Z0-9_.-]+
必需:否
- KmsKeyId
-
你希望 Kinesis Video Streams 用来加密直播数据的 AWS Key Management Service (AWS KMS) 密钥的 ID。
如果未指定密钥 ID,则使用默认的 Kinesis Video 托管密钥 ()
AWS/kinesisvideo
。有关更多信息,请参阅DescribeKey。
类型:字符串
长度限制:最小长度为 0。最大长度为 2048。
模式:
.+
必需:否
- MediaType
-
直播的媒体类型。直播的使用者可以在处理直播时使用此信息。有关媒体类型的更多信息,请参阅媒体类型
。如果您选择指定 MediaType
,请参阅命名要求以获取指南。 有效值示例包括 “video/h264" and "video/h264,audio/aac”。
此参数是可选的;默认值为
null
(或中为空JSON)。类型:字符串
长度限制:长度下限为 1。长度上限为 128。
模式:
[\w\-\.\+]+/[\w\-\.\+]+(,[\w\-\.\+]+/[\w\-\.\+]+)*
必需:否
- StreamName
-
您正在创建的直播的名称。
直播名称是直播的标识符,并且对于每个账户和地区都必须是唯一的。
类型:字符串
长度限制:最小长度为 1。最大长度为 256。
模式:
[a-zA-Z0-9_.-]+
必需:是
- Tags
-
要与指定直播关联的标签列表。每个标签都是一个键值对(该值是可选的)。
类型:字符串到字符串映射
映射条目:最多 50 项。
密钥长度限制:最小长度为 1。长度上限为 128。
键模式:
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
值长度限制:最小长度为 0。最大长度为 256。
价值模式:
[\p{L}\p{Z}\p{N}_.:/=+\-@]*
必需:否
响应语法
HTTP/1.1 200
Content-type: application/json
{
"StreamARN": "string"
}
响应元素
如果操作成功,服务将发回 HTTP 200 响应。
以下数据由服务以JSON格式返回。
- StreamARN
-
直播的 Amazon 资源名称 (ARN)。
类型:字符串
长度限制:长度下限为 1。长度上限为 1024。
模式:
arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+
错误
有关所有操作的常见错误的信息,请参阅常见错误。
- AccountStreamLimitExceededException
-
为该账户创建的直播数量过高。
HTTP状态码:400
- ClientLimitExceededException
-
Kinesis Video Streams 已限制该请求,因为您已超过允许的客户端调用限制。稍后再尝试拨打电话。
HTTP状态码:400
- DeviceStreamLimitExceededException
-
未实现。
HTTP状态码:400
- InvalidArgumentException
-
此输入参数的值无效。
HTTP状态码:400
- InvalidDeviceException
-
未实现。
HTTP状态码:400
- ResourceInUseException
-
如果输入
StreamARN
或ChannelARN
输入已映射到其他 Kinesis Video Stream 资源,或者提供的输入StreamARN
或未ChannelARN
处于 “活动” 状态,请尝试以下方法之一:CLOUD_STORAGE_MODE
-
DescribeMediaStorageConfiguration
API用于确定给定频道的直播映射到什么。 -
DescribeMappedResourceConfiguration
API用于确定给定直播映射到的频道。 -
DescribeStream
或DescribeSignalingChannel
API用于确定资源的状态。
HTTP状态码:400
-
- TagsPerResourceExceededLimitException
-
您已超出可以与资源关联的标签上限。一个 Kinesis 视频流最多可以支持 50 个标签。
HTTP状态码:400
另请参阅
有关API在一种特定语言中使用此功能的更多信息 AWS SDKs,请参阅以下内容: