一、 融云提供的美颜插件
- 视频美颜开发文档:
https://doc.rongcloud.cn/meeting/Android/5.X/video/beautifier
https://doc.rongcloud.cn/live/Android/5.X/video/beautifier
-
视频美颜 APP 可以在 https://www.rongcloud.cn/downloads/demo 下载 SealRTC apk 体验。
-
融云提供的美颜插件是必须要 sdk 5.1.4 及以上版本才行,
face_beautifier: ‘cn.rongcloud.sdk:face_beautifier:5.1.4’;
实现方式可以参考 quickdemo,但如果开发者要是自己实现美颜功能就不需要升级到 5.1.4 版本。
- 在 quickdemo(https://github.com/rongcloud/rtc-quickdemo-android) 中 live module 里有美颜相关代码可供参考。
**二、**CallLib 2.9.7 及以后的版本(5.1.4 之前)
1、基于 CallLib 实现美颜。
1.1、RongCallManager 设置监听视频流,自己实现美颜功能。
```
RongCallClient.getInstance().registerVideoFrameListener(new IVideoFrameListener() {
/**
* 输出 width/height/oesTextureId。若用户不需要自定义美颜效果,可直接返回 oesTextureId;
* 或是定义自己的美颜效果,请返回新的textureId。
*
* @param width 当前帧的宽度
* @param height 当前帧的高度
* @param oesTextureId 纹理资源 id
* @return oesTextureId 返回默认oesTextureId(返回0也代表使用默认效果)或是自定义的textureId
*/
@Override
public int processVideoFrame(int width, int height, int oesTextureId) {
return 0;
}
});
```
2、基于 RongRTC 实现美颜,RongRTC 引擎 2.1.1 及其之后的版本。
2.1、设置监听视频流,自己实现美颜功能。
RongRTCEngine.getInstance().setVideoFrameListener(new RongRTCEngineVideoFrameListener() {
/**
* 输出 width/height/oesTextureId。若用户不需要自定义美颜效果,可直接返回 oesTextureId;
* 或是定义自己的美颜效果,请返回新的textureId。
*
* @param width 当前帧的宽度
* @param height 当前帧的高度
* @param oesTextureId 纹理资源 id
* @return oesTextureId 返回默认oesTextureId(返回0也代表使用默认效果)或是自定义的textureId
*/
@Override
public int processVideoFrame(int width, int height, int oesTextureId) {
return 0;
}
});
注
我们的 RongRTC 是最底层的引擎,提供通讯和会议等能力,一些例如音视频的功能,需要基于我们的引擎二次开发,我们的 CallLib 是基于我们的 RongRTC 引擎开发的一套音视频能力库,提供例如音频视频,群内多人音视频等功能,没有 UI 界面,我们的 callkit 是基于 RongRTC 和 CallLib 开发的有 UI 界面的通讯能力库, 可提供音视频能力和 UI 界面,开发者可以根据自己的需求去选择相应的库,在相应的库的基础上进行操作即可,这里有关于三者更详细的说明,这里有关于三者的文档,这里有融云的开源代码,如 CallKit。