本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
本节介绍如何将媒体数据从摄像机发送到您在上一节中创建的 Kinesis 视频流。本节使用使用 C++ 制作人库作为示例:Kinesis Video Streams 制作人 GStreamer SDK 插件-kvssink插件。
要从各种操作系统上的各种设备发送媒体,本教程使用了 Kinesis Video Streams C++ 制作器库GStreamer
构建 SDK 和示例
您可以在计算机上或中构建 SDK 和示例 AWS Cloud9。请按照以下相应步骤操作。
运行示例将媒体上传到 Kinesis Video Streams
示例应用程序不支持 IMDS 凭证。在您的终端中,导出您的 IAM 用户或角色以及您的直播所在区域的 AWS 证书。
export AWS_ACCESS_KEY_ID=YourAccessKey
export AWS_SECRET_ACCESS_KEY=YourSecretKey
export AWS_DEFAULT_REGION=YourAWSRegion
如果您使用的是临时 AWS 证书,请同时导出您的会话令牌:
export AWS_SESSION_TOKEN=YourSessionToken
下载一个.mp4 视频样本上传到 Kinesis Video Streams。
wget https://awsj-iot-handson.s3-ap-northeast-1.amazonaws.com/kvs-workshop/sample.mp4
视频规格:
-
分辨率 ——1280 x 720 像素
-
帧速率-每秒 30 帧
-
持续时间-14.0 秒
-
视频编码-H.264,在轨道 1 中
-
关键帧-每 3 秒,片段持续时间(也称为一组图片 (GoP) 大小)为 3 秒,最后一个片段长为 2 秒。
使用您之前创建的直播的名称运行以下命令。如果您尚未创建直播,请参阅创建 Amazon Kinesis 视频流。
./kvs_gstreamer_sample
YourStreamName
./sample.mp4
注意
有关使用该 GStreamer 插件流式传输来自摄像机的 RTSP 流或 USB 摄像头的视频的更多信息,请参阅示例:Kinesis Video Streams 制作人 GStreamer SDK 插件-kvssink。
查看确认对象
在上传过程中,Kinesis Video Streams 会将确认对象发送回执行上传的客户端。您应该在命令输出中看到这些内容。一个例子如下所示:
{"EventType":"PERSISTED","FragmentTimecode":1711124585823
,"FragmentNumber":"12345678901234567890123456789012345678901234567
"}
如果确认EventType
是PERSISTED
,则表示 Kinesis Video Streams 已对这块媒体进行了持久存储和加密,以供检索、分析和长期存储。
有关致谢的更多信息,请参阅PutMedia。