C 中适用于嵌入式设备的 WebRTC 开发工具包 - Kinesis Video Streams

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

C 中适用于嵌入式设备的 WebRTC 开发工具包

以下分步说明介绍如何使用下载、构建和运行 C 中适用于嵌入式设备的 Kinesis Video Streams with WebRTC 开发工具包及其相应示例。

下载 C 语言版 Kinesis Video Streams With WebRTC SDK

要下载 C 中适用于嵌入式设备的 Kinesis Video Streams with WebRTC 开发工具包,请运行以下命令:

$ git clone --recursive https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c.git

构建 C 语言版 Kinesis Video Streams with WebRTC SDK

重要

在 macOS 上完成这些步骤之前,根据您的 macOS 版本,您必须运行 xcode-select --install下载带有命令行工具和标头的软件包。然后打开 /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg并按照安装程序安装命令行工具和标头。这些操作只需要在调用 cmake前执行一次。如果您已经安装了命令行工具和标头,则无需再次运行此命令。

完成以下步骤:

  1. 安装 cmake:

    • 在 macOS 上运行 brew install cmake pkg-config srtp

    • 在 Ubuntu 上运行 sudo apt-get install pkg-config cmake libcap2 libcap-dev

  2. 获得用于本演示的 AWS 账户账户的访问密钥和秘密密钥。

  3. 运行以下命令在您下载的 WebRTC C 开发工具包中创建一个 build 目录,并从中执行 cmake

    $ mkdir -p amazon-kinesis-video-streams-webrtc-sdk-c/build; cd amazon-kinesis-video-streams-webrtc-sdk-c/build; cmake ..
  4. 现在,导航到刚使用上述步骤创建的 build目录,然后运行 make以构建 WebRTC C 开发工具包及其提供的示例。

    注意

    如果系统尚未安装 gstreamer,则无法构建 kvsWebrtcClientMasterGstSample。要确保它是(在 macOS 上)构建的,您必须运行:brew install gstreamer gst-plugins-base gst-plugins-good

运行 C 中的 WebRTC 开发工具包的示例

完成上述过程后,您最终会在您的 build 目录中使用以下示例应用程序:

  • kvsWebrtcClientMaster - 此应用程序通过信令通道发送示例 H264/Opus 帧(路径:/samples/h264SampleFrames 和 /samples/opusSampleFrames)。它也接受传入的音频(如果在浏览器中启用)。在浏览器中勾选时,它会打印终端中收到的音频数据包的元数据。

  • kvsWebrtcClientViewer - 此应用程序接受示例 H264/Opus 帧并打印出来。

  • kvsWebrtcClientMasterGstSample - 此应用程序从 GStreamer 管道发送示例 H264/Opus 帧。

要运行任何这些示例,请完成以下步骤:

  1. 使用 AWS 账户账户凭证设置您的环境:

    export AWS_ACCESS_KEY_ID= Your AWS 账户 access key export AWS_SECRET_ACCESS_KEY= AWS 账户 secret key export AWS_KVS_CACERT_PATH= Full path of your cert.pem file. It is typically available in the certs directory inside Kinesis-video-webrtc-native-build/certs/cert.pm
  2. 通过将您要向信令通道提供的名称传递给示例应用程序来运行任一应用程序。应用程序使用您提供的名称创建信令通道。例如,要创建一个名为 myChannel 的信令通道并开始通过该通道发送示例 H264/Opus 帧,请运行以下命令:

    ./kvsWebrtcClientMaster myChannel

    当命令行应用程序打印 Connection established 时,您可以继续下一步。

  3. 现在您的信令通道已创建,并且连接的主设备正在将媒体流式传输到它,您可以查看此流。例如,您可以在 Web 应用程序中查看此实时流。为此,请使用 使用 Kinesis Video Streams with WebRTC 测试页面中的步骤打开 WebRTC 开发工具包测试页面,并使用您为上述主设备指定的相同 AWS凭证和相同信令通道设置以下值:

    • 访问密钥 ID

    • 秘密访问密钥

    • 信令通道名称

    • 客户端 ID(可选)

    选择 Start viewer (启动查看器) 以启动示例 H264/Opus 帧的实时视频流式传输。