跳到主要内容

对接第三方插件

您可以通过 SDK 提供的视频帧回调接口,对接第三方美颜等视频处理 SDK,实现更灵活的处理能力。

步骤 1:设置视频帧回调

通过 RCRTCVideoOutputStream.setVideoFrameListener 注册需要处理的视频流采集监听:

Java
RCRTCEngine.getInstance().getDefaultVideoStream().setVideoFrameListener(new IRCRTCVideoOutputFrameListener() {
@Override
public RCRTCVideoFrame processVideoFrame(RCRTCVideoFrame rtcVideoFrame) {
// 使用视频数据进行美颜/录像等处理后,需要将数据返回给 SDK 以继续发送
BeautifierHandler(rtcVideoFrame);
return rtcVideoFrame;
}
});

步骤 2:处理视频帧数据

以 GPUImage 库处理举例,完整代码可参考官方 QuickDemoGitHub · Gitee)。

Java
GPUImageFilter imageFilter = mVideoFilterHandler.getCurrentImageFilter();
...
// 调用 imageFilter 对视频进行美颜处理
rcrtcVideoFrame.setTextureId(imageFilter.draw(rcrtcVideoFrame.getWidth(), rcrtcVideoFrame.getHeight(), rcrtcVideoFrame.getTextureId()));