声网 视频通话SDK小结

1. 视频通话

  • 视频通话 SDK 可实现 一对一单聊多人群聊,同时具备纯语音通话视频通话功能
  • 视频通话和视频互动直播不同。视频通话,不分主播和观众,所有用户都可自由发言,默认流畅和低延时优先,画质稍低,典型场景如 多人视频会议
  • 视频通话 功能和场景 点击了解详情

2. 视频直播

  • Agora 视频互动直播(Video Broadcasting)可以实现一对多多对多的音视频互动直播
  • Agora 视频互动直播和视频通话的区别是:
    • 视频通话:不分主播和观众,所有用户都可自由发言,默认流畅和低延时优先,画质稍低,典型场景如多人视频会议
    • 互动直播:用户区分主播和观众,只有主播可以自由发言,默认高画质优先,典型场景如互动课堂
  • 常见的 CDN 直播是一个主播和多个观众,是单向的。而 Agora 互动直播还能多个主播之间,观众与主播之间连麦,就像在小剧场里观众可以上台表演一样。适用于娱乐直播如狼人杀、教育直播如小班课、电商直播中的导购问答等强互动场景。同时,也适用对图像质量要求高的一对一视频聊天。
  • 前面有写过一篇文章,专门总结了一下声网直播SDK 场景和特点,点击了解详情

3. 视频通话集成
集成视频通话、直播SDK 下载地址 注意视频通话,互动直播都是同一套SDK
声网 视频通话SDK小结_第1张图片
SDK发版详情,看我这篇文章有 详细截图

4. 直播

与普通视频通话相比,直播额外有几个特点场景

  • 客户端连麦(观众与主播连麦聊天,观众围观)
  • 跨直播间连麦(多个主播跨直播间,连麦互动,观众围观)
  • 推流到 CDN
    1. 将频道内的音视频内容通过 CDN 推送到其他 RTMP 服务器:
    2. 能够随时启动或停止推流
    3. 能够在不间断推流的同时增减推流地址
    4. 能够调整合图布局

集成步骤

  • 前言:集成三方SDK,强烈建议先花时间运行Demo,熟悉一下SDK相关调用流程,在集成到项目中,这样绝对省时省力,相信踩过坑的人;磨刀不误砍柴工,这句话是真理
  1. 先注册一个Agora账号,创建一个应用获取应用ID
  2. 下载SDK提供Demo,拷贝.jar和所需要的.so文件(在说一遍:注意视频通话和视频直播集成SDK文件都一样)
    • agora-rtc-sdk.jar (502K)
    • libagora-crypto.so(1.8M)
    • libagora-rtc-sdk-jni.so(8.3M)
      大小真不小,请慎重
  3. 在Demo配置文件中,替换自己申请应用的APP ID,顺利的话,此时拿2台手机,运行项目,切记填写相同的直播房间名字,就可以看到主播一方的视频界面了

注意点

  1. 在加入频道房间后
// 在加入频道前后都可以调用此方法,切换角色
mRtcEngine.setClientRole(Constants.CLIENT_ROLE_BROADCASTER)
  1. Agora也提供了高级接口

将数据发送给编码器前插入一个前处理阶段,对捕捉到的视频帧或语音信号进行修改。也可以在将数据发送给解码器后插入一个后处理阶段,对接收到的视频帧和语音信号进行修改

Agora 原始数据接口是一个 C++ 接口。你需要在 Android 上使用 SDK 库的 JNI 和插件管理器

  1. 视频通话使用美颜

用户进行视频通话或直播时,常常希望向对方呈现良好的肌肤状态和精神面貌。

Agora SDK 提供 API 方法,帮助 App 轻松实现基础美颜功能。用户可以开启美颜开关,调整美白、磨皮、祛痘、红润效果等美颜参数,实现自然的美颜效果

  1. Agora SDK 提供 setBeautyEffectOptions 方法帮助开发者根据场景需求灵活配置基础美颜功能
// 参数1 enabled(true or false) 代表是否开启美颜功能
// 参数2 美颜选项,详细定义见 BeautyOptions
// options 代表美颜选项
// 包含lighteningContrastLevel(明暗对比度)、lightening(亮度)、smoothness(平滑度)、redness(红色度)四个参数
// 可用来实现美白、磨皮、红润等效果
mRtcEngine.setBeautyEffectOptions(true, 
new BeautyOptions(LIGHTENING_CONTRAST_NORMAL, 0.5F, 0.5F, 0.5F));

更多详细信息,移步: 直播SDK小结

5. 参考

  1. 声网PK GitHub
  2. 集成Android客户端
  3. 视频通话 SDK文档

你可能感兴趣的:(Android)