View a markdown version of this page

示例:从 RTSP 来源进行流式传输 - Amazon Kinesis Video Streams

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

示例:从 RTSP 来源进行流式传输

C++包含连接到 Real-Time 流媒体协议 (RTSP) 网络摄像机的 Docker 容器的定义。使用 Docker 可以标准化 Kinesis Video Streams 的操作环境,从而简化应用程序的构建和使用。

以下过程演示如何设置和使用此 RTSP 演示应用程序。

教程视频

此视频展示了如何设置 Raspberry Pi 以将 RTSP 提要发送到 AWS 云端和 Amazon Kinesis Video Streams。这是一个端到端的演示。

本视频演示了如何从源中捕获图像以使用计算机视觉和 Amazon Rekognition 来处理图像和发送警报。

先决条件

要运行 Kinesis Video Streams RTSP 示例应用程序,必须具备以下条件:

构建 Docker 映像。

首先,构建演示应用程序将在其中运行的 Docker 镜像。

  1. 克隆 Amazon Kinesis Video Streams 演示存储库。

    git clone https://github.com/aws-samples/amazon-kinesis-video-streams-demos.git
  2. 切换到包含 Dockerfile 的目录。在本例中,它是 docker- rtsp 目录。

    cd amazon-kinesis-video-streams-demos/producer-cpp/docker-rtsp/
  3. 使用以下命令构建 Docker 镜像。此命令创建镜像并将其标记为 rtspdockertest。

    docker build -t rtspdockertest .
  4. 运行docker images并搜索标记为的图像 ID rtspdockertest

    例如,在下面的示例输出中,IMAGE ID54f0d65f69b2

    REPOSITORY TAG IMAGE ID CREATED PLATFORM SIZE BLOB SIZE rtspdockertest latest 54f0d65f69b2 10 minutes ago linux/arm64 653.1 MiB 292.4 MiB

    稍后您将需要这个。

运行 RTSP 示例应用程序

您可以从 Docker 容器内部或外部运行 RTSP 示例应用程序。请按照以下相应说明进行操作。

在 Docker 容器中

运行 RTSP 示例应用程序
  1. 使用以下命令启动 Amazon Kinesis Video Streams Docker 容器:

    docker run -it YourImageId /bin/bash
  2. 要启动示例应用程序,请提供您的 AWS 证书、Amazon Kinesis 视频流的名称以及 RTSP 网络摄像机的网址。

    重要

    如果您使用的是临时证书,则还需要提供您的AWS_SESSION_TOKEN。参见下面的第二个示例。

    export AWS_ACCESS_KEY_ID=YourAccessKeyId export AWS_SECRET_ACCESS_KEY=YourSecretKeyId export AWS_DEFAULT_REGION=YourAWSRegion ./kvs_gstreamer_sample YourStreamName YourRtspUrl

    临时证书:

    export AWS_ACCESS_KEY_ID=YourAccessKeyId export AWS_SECRET_ACCESS_KEY=YourSecretKeyId export AWS_SESSION_TOKEN=YourSessionToken export AWS_DEFAULT_REGION=YourAWSRegion ./kvs_gstreamer_sample YourStreamName YourRtspUrl
  3. 登录 AWS 管理控制台 并打开 Kinesis Video Streams 控制台。

    观看直播。

  4. 要退出 Docker 容器,请关闭终端窗口或键入exit

在 Docker 容器外面

在 Docker 容器部,使用以下命令:

docker run -it YourImageId /bin/bash -c "export AWS_ACCESS_KEY_ID=YourAccessKeyId; export AWS_SECRET_ACCESS_KEY=YourSecretKeyId; export AWS_SESSION_TOKEN=YourSessionToken; export AWS_DEFAULT_REGION=Your AWS Region; ./kvs_gstreamer_sample YourStreamName YourRtspUrl"