本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
GStreamer元素参数参考
要向 Amazon Kinesis Video Streams Video Streams 制作人 SDK C++ 发送视频,请将视频kvssink
指定为管道的接收方或最终目的地。此参考提供了有关 kvssink
必需参数和可选参数的信息。有关更多信息,请参阅 示例:Kinesis Video Streams SDK GStreamer 制作人插件-kvssink。
主题
向提供凭证 kvssink
要允许kvssink
GStreamer元素向其发出请求 Amazon,请提供 Amazon 凭证供其在调用 Amazon Kinesis Video Streams 服务时使用。凭证提供商链按以下顺序查找证书:
要设置 Amazon IoT 凭证,请参阅使用控制对 Kinesis Video Streams 资源的访问权限 Amazon IoT。
iot-credentials
参数值必须以以下逗号分隔的iot-certificate,
列表开头,后面跟着一个以逗号分隔的列表 key
=value
对。
键 | 必需 | 描述 |
---|---|---|
ca-path |
是 | 用于通过后端服务建立信任的 CA 证书的文件路径TLS。 示例: |
cert-path |
是 | X.509 证书的文件路径。 示例: |
endpoint |
是 | 您 Amazon 账户的 Amazon IoT Core 凭证终端节点提供商终端节点。请参阅《Amazon IoT 开发人员指南》。 示例: |
key-path |
是 | 公钥/私钥对中使用的私钥的文件路径。 示例: |
role-aliases |
是 | 指向连接时要使用的 Amazon IAM角色的角色别名的名称 Amazon IoT Core。 示例: |
iot-thing-name |
否 |
示例: |
示例:
gst-launch-1.0 -v ... ! kvssink stream-name="
YourStream
" aws-region="YourRegion
" iot-certificate="iot-certificate,endpoint=credential-account-specific-prefix
.credentials.iot.aws-region
.amazonaws.com,cert-path=certificateID
-certificate.pem.crt,key-path=certificateID
-private.pem.key,ca-path=certificate
.pem,role-aliases=YourRoleAlias
,iot-thing-name=YourThingName
"
要kvssink
使用来自环境的凭证,请设置以下环境变量:
环境变量名 | 必需 | 描述 |
---|---|---|
AWS_ACCESS_KEY_ID |
是 | 用于 Amazon 访问亚马逊 Kinesis Video Streams 的访问密钥。 |
AWS_SECRET_ACCESS_KEY |
是 | 与访问 Amazon 密钥关联的密钥。 |
AWS_SESSION_TOKEN |
否 | 如果您直接使用 Amazon STS 操作中的临时安全证书,则指定所需的会话令牌值。 |
设置环境变量会更改使用的值,直到 Shell 会话结束或直到您将该变量设置为其他值。要使变量在 future 会话中保持不变,请在 shell 的启动脚本中对其进行设置。
要直接将凭据指定为kvssink
参数,请设置以下参数:
kvssink 参数名 |
必需 | 描述 |
---|---|---|
access-key |
是 | 用于 Amazon 访问亚马逊 Kinesis Video Streams 的访问密钥。 |
secret-key |
是 | 与访问 Amazon 密钥关联的密钥。 |
session-token |
否 | 如果您直接使用 Amazon STS 操作中的临时安全证书,则指定所需的会话令牌值。 |
使用静态凭证:
gst-launch-1.0 -v ... ! kvssink stream-name="
YourStream
" aws-region="YourRegion
" access-key="AKIDEXAMPLE
" secret-key="SKEXAMPLE
"
使用临时证书:
gst-launch-1.0 -v ... ! kvssink stream-name="
YourStream
" aws-region="YourRegion
" access-key="AKIDEXAMPLE
" secret-key="SKEXAMPLE
" session-token="STEXAMPLE
"
重要
如果您选择了前面的方法之一,则无法使用该credential-file
kvssink
参数。
kvssink 参数名 |
必需 | 描述 |
---|---|---|
credential-file |
是 | 包含特定格式凭据的文本文件的路径。 |
文本文件必须包含以下格式之一的凭据:
-
CREDENTIALS
YourAccessKey
YourSecretKey
-
CREDENTIALS
YourAccessKey
Expiration
YourSecretKey
SessionToken
示例:您的
文件位于credentials
.txt/home/ubuntu
并包含以下内容:
CREDENTIALS
AKIDEXAMPLE 2023-08-10T22:43:00Z
SKEXAMPLE STEXAMPLE
要在中使用它kvssink
,请键入:
gst-launch-1.0 -v ... ! kvssink stream-name="
YourStream
" aws-region="YourRegion
" credential-file="/home/ubuntu/credentials
.txt"
注意
将来的到期时间应至少为 5 + 30 + 3 = 38 秒。宽限期定义为中的IOT_CREDENTIAL_FETCH_GRACE_PERIOD
变量IotCredentialProvider.h
kvssink
,则会收到错误代码0x52000049 -
STATUS_INVALID_TOKEN_EXPIRATION
。
重要
kvssink
不会修改凭据文件。如果您使用的是临时证书,则证书文件必须在到期时间减去宽限期之前由外部来源更新。
提供一个区域给 kvssink
以下是区域查询顺序:
-
AWS_DEFAULT_REGION
首先审查环境变量。如果已设置,则使用该区域来配置客户端。 -
aws-region
接下来将查看参数。如果已设置,则使用该区域来配置客户端。 如果前面的方法均未使用,
kvssink
则默认为us-west-2
。
kvssink
可选参数
kvssink
元素具有以下可选参数。有关这些参数的更多信息,请参阅 Kinesis 视频流结构。
参数 | 描述 | 单位/类型 | 默认 |
---|---|---|---|
stream-name |
目标 Amazon Kinesis 视频流的名称。重要如果未指定直播名称,则将使用默认的直播名称:“DEFAULT_STREAM”。如果使用该默认名称的直播尚不存在,则会创建该流。 |
|
|
absolute-fragment-times |
是否使用绝对片段时间。 | 布尔值 | true |
access-key |
用于 Amazon 访问 Kinesis Video Streams 的访问密钥。 您必须设置 Amazon 凭据或提供此参数。要提供此信息,请键入以下内容:
|
||
avg-bandwidth-bps |
流的预期平均带宽。 | 每秒位元数 | 4194304 |
aws-region |
Amazon Web Services 区域 要使用的。 注意您也可以为该区域提供 重要
|
String | "us-west-2" |
buffer-duration |
流缓冲持续时间。 | 秒 | 120 |
codec-id |
流的编解码器 ID。 | String | "V_MPEG4/ISO/AVC" |
connection-staleness |
之后调用直播陈旧回调的时间。 | 秒 | 60 |
content-type |
流的内容类型。 | String | "video/h264" |
fragment-acks |
是否使用片段ACKs。 | 布尔值 | true |
fragment-duration |
所需的片段持续时间。 | 毫秒 | 2000 |
framerate |
预期的帧率。 | 每秒帧数 | 25 |
frame-timecodes |
是否使用帧时间码或者使用当前时间回调生成时间戳。 | 布尔值 | true |
key-frame-fragmentation |
是否在关键帧上生成片段。 | 布尔值 | true |
log-config |
日志配置路径。 | String | "../kvs_log_configuration" |
max-latency |
流的最大延迟。 | 秒 | 60 |
recalculate-metrics |
是否重新计算指标。 | 布尔值 | true |
replay-duration |
启用重新启动时,在出错时回滚当前阅读器以重放的持续时间。 | 秒 | 40 |
restart-on-error |
发生错误时是否重新启动。 | 布尔值 | true |
retention-period |
保留流的时间长度。 | 小时 | 2 |
rotation-period |
密钥轮换周期。有关更多信息,请参阅轮换 Amazon KMS 密钥。 | 秒 | 3600 |
secret-key |
用于访问 Kinesis Video Streams 的 Amazon 密钥。 您必须设置 Amazon 凭据或提供此参数。
|
||
session-token |
如果您直接使用 Amazon STS 操作中的临时安全证书,则指定所需的会话令牌值。 | ||
storage-size |
以兆字节 (MiB) 为单位的设备存储大小。有关配置设备存储的信息,请参阅StorageInfo。 | 兆字节 (MiB) | 128 |
streaming-type |
流式处理类型。有效值包括:
|
枚举 GstKvsSinkStreamingType |
0:实时 |
timecode-scale |
MKV时间码比例。 | 毫秒 | 1 |
track-name |
MKV曲目名称。 | String | "kinesis_video" |
iot-certificate |
Amazon IoT 要在
注意
|
String | 无 |