这个开源示例项目演示了如何从 Agora 视频 SDK 获取音视频裸数据,并进行 RTMP 推流。
在这个示例项目中包含了以下功能:
- 加入通话和离开通话;
- 从 Agora 视频 SDK 获取音视频裸数据;
- 处理音视频裸数据以进行 RTMP 推流;
你可以在这里查看 Agora 视频 SDK 的入门示例项目:Agora-Android-Tutorial-1to1
你也可以查看 iOS 平台的示例项目: Agora-client-side-AV-capturing-for-streaming-iOS
运行示例程序
首先 在 Agora.io 注册 注册账号,并创建自己的测试项目,获取到 AppID。将 AppID 填写进 “app/src/main/res/values/strings_config.xml”
<string name="agora_app_id"><#YOUR APP ID#></string>
然后 是集成 Agora 视频 SDK。
集成方式有以下两种:
- 首选方式:
第一步: 在项目对应的模块的 “app/build.gradle” 文件的依赖属性中加入通过 JCenter 自动集成 Agora 视频 SDK 的地址:
implementation 'io.agora.rtc:full-sdk:2.3.0'
(如果要在自己的应用中集成 Agora 视频 SDK,添加链接地址是最重要的一步。)
第二步: 在 Agora.io SDK 下载 视频通话 + 直播 SDK ,解压后将其中的 libs/include 文件夹下的 * .h 复制到本项目的 app/src/main/cpp/include/agora 下。
- 次选方式:
在 Agora.io SDK 下载 视频通话 + 直播 SDK ,解压后将其中的 libs 文件夹下的 * .jar 复制到本项目的 app/libs 下,其中的 libs 文件夹下的 arm64-v8a / x86 / armeabi-v7a 复制到本项目的 app/src/main/jniLibs 下,其中的 libs/include 文件夹下的 * .h 复制到本项目的 app/src/main/cpp/include/agora 下。
最后 用 Android Studio 打开该项目,连上设备,编译并运行。
也可以使用 Gradle
直接编译运行。
运行环境
- Android Studio 3.1 +
- 真实 Android 设备 (Nexus 5X 或者其它设备)
- 部分模拟器会存在功能缺失或者性能问题,所以推荐使用真机