

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

# 运行并验证代码
<a name="producersdk-c-test"></a>



要运行并验证的代码[使用 C\$1\$1 制作人库](producer-sdk-cpp.md)，请执行以下操作：

1. 运行以下命令在[下载的 C SDK](https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.git) 中创建一个`build`目录，然后`cmake`从中启动：

   ```
   mkdir -p amazon-kinesis-video-streams-producer-c/build; 
   cd amazon-kinesis-video-streams-producer-c/build; 
   cmake ..
   ```

   您可以将以下选项传递给 `cmake ..`
   + `-DBUILD_DEPENDENCIES`-是否从源代码构建依赖库。
   + `-DBUILD_TEST=TRUE`-构建单元和集成测试。可能有助于确认对您的设备的支持。

     `./tst/webrtc_client_test`
   + `-DCODE_COVERAGE`-启用覆盖率报告。
   + `-DCOMPILER_WARNINGS`-启用所有编译器警告。
   + `-DADDRESS_SANITIZER`-使用构建 AddressSanitizer。
   + `-DMEMORY_SANITIZER`-使用构建 MemorySanitizer。
   + `-DTHREAD_SANITIZER`-使用构建 ThreadSanitizer。
   + `-DUNDEFINED_BEHAVIOR_SANITIZER`-使用构建 UndefinedBehaviorSanitizer。
   + `-DALIGNED_MEMORY_MODEL` -为仅对齐内存模型的设备构建。默认值为 `OFF`。

1. 导航到您在上一步中刚刚创建的`build`目录，然后运行`make`以构建 WebRTC C SDK 及其提供的示例。

   ```
   make                
   ```

1. 示例应用程序`kinesis_video_cproducer_video_only_sample`将文件夹`samples/h264SampleFrames`内的 h.264 编码视频帧发送到 Kinesis Video Streams。以下命令将视频帧循环发送到 Kinesis Video Streams 十秒钟：

   ```
   ./kinesis_video_cproducer_video_only_sample YourStreamName 10
   ```

   如果要从其他文件夹（例如`MyH264FramesFolder`）发送 H.264 编码的帧，请使用以下参数运行示例：

   ```
   ./kinesis_video_cproducer_video_only_sample YourStreamName 10 MyH264FramesFolder
   ```

1. 若要启用详细日志，请定义 `HEAP_DEBUG` 并通过取消 `CMakeList.txt` 中相应行的注释进行 `LOG_STREAMING` C 定义。

您可以在 IDE 中的调试输出中监控测试套件的进度。您还可以通过在 Amazon CloudWatch 控制台中查看与您的直播相关的指标来监控直播流量，例如`PutMedia.IncomingBytes`。

**注意**  
由于测试框架仅发送空字节的帧，因此，控制台不会将数据显示为视频流。