更新时间:2023-10-26 GMT+08:00
分享

自定义视频采集

功能描述

如果您需要使用自定义的美颜库或有前处理库,则需要自己采集和处理摄像头拍摄画面,您可以通过SparkRTC SDK的setExternalVideoCapture接口开启 自采集功能。然后使用pushExternalVideoFrame接口推送外部视频数据到SparkRTC SDK播放。

接口调用流程

实现过程

  1. 加入房间前调用主引擎的setExternalVideoCapture

    加入房间前调用此接口打开视频自采集功能。一旦开启后,将无法切换。

    //开启自采集功能
    [rtcEngine setExternalVideoCapture:YES format:HWRtcVideoImageFormatYUV420P];
  2. 加入房间

    参考接口调用流程中加入房间的时序图步骤加入房间。

  3. 定时推送视频数据帧

    加入房间成功回调后,上层应用需要定时调用pushExternalVideoFrame接口推送外部视频数据,每1/帧率调用一次。

    //初始化一个HWRtcVideoFrame对象,参数以实际为主,传rtcEngine
    HWRtcVideoFrame *rtcVideoFrame = [[HWRtcVideoFrame alloc] init];
     rtcVideoFrame.format =HWRtcVideoImageFormatYUV420P;
     rtcVideoFrame.width = width;
     rtcVideoFrame.height = height;
     rtcVideoFrame.data = data;
     rtcVideoFrame.dataLen = data.length;
     [rtcEngine pushExternalVideoFrame:rtcVideoFrame];

相关文档