範例:從RTSP來源串流 - Amazon Kinesis Video Streams

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

範例:從RTSP來源串流

C++ 包含連接至即時串流通訊協定 (RTSP) 網路攝影機之 Docker 容器的定義。使用 Docker 會將 Kinesis Video Streams 的操作環境標準化,以簡化建置和使用應用程式的程序。

下列程序示範如何設定和使用RTSP示範應用程式。

教學課程影片

此影片說明如何設定 Raspberry Pi,以將RTSP摘要傳送至 AWS 雲端和 Amazon Kinesis Video Streams。這是示範 end-to-end。

此影片示範如何從摘要擷取影像,以使用電腦視覺和 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並搜尋以 標記的影像 IDrtspdockertest

    例如,在下面的範例輸出中, 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網路攝影機URL的 。

    重要

    如果您使用的是臨時登入資料,您還需要提供您的 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 Management Console 並開啟 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"