一块儿 KTV 是一个很重要,且能体现产品性能的功能,在学习声网 SDK 的时候,看到了一块儿 KTV 的 GitHub demo,而且官方也给出了相应的文档说明,在此也对个人学习过程作一个简单的记录。git
“一块儿KTV” 是一个依附于直播聊天室的娱乐场景。在这个场景中,一个KTV房间里的演唱者给其余人播放 MV 视频,并跟随 MV 唱歌给全部人听。其中:github
其中须要的功能有:bash
声网的“一块儿KTV”场景方案,提供了这个场景中实时音视频互动直播、MV 文件读取、人声和 MV 伴奏同步、音量控制、播放控制、发送 MV 伴奏和视频数据 等相关功能的解决方案。架构
总体架构以下图所示:app
由于我是 Android 用户,因此就进行的 Android demo 体验。ide
首先,你能够到这里看源码:github.com/AgoraIO-Use…工具
Online-KTV/Agora-Online-KTV-Android/app/src/main/res/values/strings_config.xml
中找到 strings_config.xml
这个文件,文件内容以下:<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- PLEASE KEEP THIS App ID IN SAFE PLACE -->
<!-- Get your own App ID at https://dashboard.agora.io/ -->
<!-- After you entered the App ID, remove <##> outside of Your App ID -->
<!-- For formal released project, please use Dynamic Key
https://docs.agora.io/en/2.3.1/product/Video/Agora%20Platform/key_native?platform=Android -->
<string name="agora_app_id"><#YOUR APP ID#></string>
</resources>
复制代码
以后你须要把以前获取的 App ID 填写在这里:post
<string name="agora_app_id"><#YOUR APP ID#></string>
复制代码
将你下载的 SDK 包解压,将其中的 libs
文件夹下的 *.jar
复制到本项目的 Android/Agora-Online-KTV/app/libs
下,其中的 libs
文件夹下的 arm64-v8a/x86/armeabi-v7a
复制到本项目的 Android/Agora-Online-KTV/app/src/main/jniLibs
下。性能
使用 Android Studio 打开该项目,链接 Android 测试设备,编译并运行。学习
运行环境:
* Android SDK API Level >= 16
* Android Studio 3.1 +
* Android 4.1 或以上支持语音和视频功能的真机设备
复制代码
而后进行测试运行就行了。
固然,若是你只想简单的体验一下,不想运行代码。你也能够直接下载官方提供的 SDK。直接下载安装 Android apk 安装包 进行体验。
成功运行 Demo 后,在界面上输入频道名称并选择 Broadcaster,等提示 KTV 加载成功后点击“开始播放”即开始 KTV 演唱。
使用另外一台设备输入相同的频道名并选择 Audience,即为观众观看。
下图是官方提供的示例 App 的 API 流程: