产品百科 | RTC Android SDK 播放音效文件的接口方法

简介: 阿里云 RTC SDK 为您提供伴奏文件和音效文件的相关接口方法,您可以通过本文了解其具体的实现方法。

阿里云 RTC SDK 为您提供伴奏文件和音效文件的相关接口方法,您可以通过本文了解其具体的实现方法。

伴奏文件

伴奏文件的接口方法如下所示。

  • 调用 startAudioAccompany 开始混音伴奏。
//接口方法
public abstract int startAudioAccompany(String fileName, boolean onlyLocalPlay, boolean replaceMic, int loopCycles) ;
//示例方法
int ret =  mAliRtcEngine.startAudioAccompany(audioFileName, localPlay, replaceMic, loopCycles);
参数 类型 描述
fileName String 伴奏文件路径
onlyLocalPlay boolean 是否只本地播放,true:只本地播放;false:本地播放和推流
replaceMic boolean 是否替换麦克风采集,true:替换麦克风采集,只有伴奏声;false:与麦克风共存
loopCycles int 循环次数
  • 调用 pauseAudioAccompany 暂停伴奏,调用成功返回 0,失败返回错误码。

    说明 您需要在 startAudioAccompany 接口之后调用。
//接口方法
public abstract int pauseAudioAccompany() ;
//示例方法mAliRtcEngine.pauseAudioAccompany();
  • 调用 resumeAudioAccompany 恢复伴奏播放,调用成功返回 0,失败返回错误码。

    说明 您可以与 pauseAudioAccompany 接口搭配使用。
//接口方法
public abstract int resumeAudioAccompany() ;
//示例方法mAliRtcEngine.resumeAudioAccompany();
  • 调用 stopAudioAccompany 停止伴奏播放,调用成功返回 0,失败返回错误码。

    说明 调用该接口后会立刻停止伴奏播放,您可以与 startAudioAccompany 接口搭配使用。
//接口方法
public abstract int stopAudioAccompany() ;
//示例方法
mAliRtcEngine.stopAudioAccompany();
  • 您可以通过以下接口方法设置音量。
/**
     * 设置混音音量,需要在调用startAudioAccompany后才能生效
     * @param volume 混音音量,取值:0~100
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int setAudioAccompanyVolume( int volume) ;
    /**
     * 设置混音之后推流出去的音量,需要在调用startAudioAccompany后才能生效
     * @param volume 混音音量,取值:0~100
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int setAudioAccompanyPublishVolume(int volume) ;
    /**
     * 获取推流出去的混音音量
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int getAudioAccompanyPublishVolume() ;
    /**
     * 设置混音之后本地播放的音量,需要在调用startAudioAccompany后才能生效
     * @param volume 混音音量,取值:0~100
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int setAudioAccompanyPlayoutVolume(int volume) ;
    /**
     * 获取混音本地播放的音量
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int getAudioAccompanyPlayoutVolume() ;

音效文件

音效文件的接口方法如下所示。

  • 调用 preloadAudioEffect 预加载音效文件,调用成功返回 0,失败返回错误码。

    说明 您设置的音效文件 ID 会进行后续操作。
//接口方法
public abstract int preloadAudioEffect(int soundId, String filePath) ;
//示例方法
mAliRtcEngine.preloadAudioEffect(1, filePath);
参数 类型 描述
filePath String 伴奏文件路径(建议不包含中文)
soundId int 指定的文件 ID,个数无限制
  • 调用 unloadAudioEffect 根据预加载的音效文件 ID 删除预加载音效,调用成功返回 0,失败返回错误码。
//代码方法
public abstract int unloadAudioEffect(int soundId) ;
//示例方法
mAliRtcEngine.unloadAudioEffect(soundId);
  • 调用 playAudioEffect 开始播放音效,调用成功返回 0,失败返回错误码。

    说明 成功调用后立即播放音效,您需要在 preloadAudioEffectWithSoundId 接口之后调用。
//接口方法
public abstract int playAudioEffect(int soundId, String filePath, int cycles, boolean publish);
//示例方法
mAliRtcEngine.playAudioEffect(soundId, filePath, cycles, isPublish);
参数 类型 描述
soundId int 预加载时指定的文件 ID
filePath String 音效文件路径(建议不包含中文)
cycles int 循环次数
publish boolean 是否推流,false:不推流并且仅本地播放;true:本地播放和推流
  • 调用 pauseAudioEffect 暂停音效,调用成功返回 0,失败返回错误码。
//代码方法
public abstract int pauseAudioEffect(int soundId) ;
//示例方法
mAliRtcEngine.pauseAudioEffect(soundId);
  • 调用 resumeAudioEffect 恢复音效,调用成功返回 0,失败返回错误码。

    说明 您可以与 pauseAudioEffect 接口搭配使用。
//接口方法
public abstract int resumeAudioEffect(int soundId) ;
//示例方法
mAliRtcEngine.resumeAudioEffect(soundId);
  • 调用 stopAudioEffect 停止音效,调用成功返回 0,失败返回错误码。

    说明 成功调用之后会立刻停止音效播放,您可以与 playAudioEffect 接口搭配使用。
//接口方法
public abstract int stopAudioEffect(int soundId) ;
//示例方法
mAliRtcEngine.stopAudioEffect(soundId);
  • 您可以通过以下接口方法设置音效音量。
/**
     * 设置音效音量
     * @param soundId 音效文件ID
     * @param volume 混音音量,取值:0~100
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int setAudioEffectPublishVolume(int soundId, int volume) ;
    /**
     * 获取推流音效音量
     * @param soundId 音效文件ID
     * @return 调用成功返回0~100音量,失败返回错误码
     */
    public abstract int getAudioEffectPublishVolume(int soundId) ;
    /**
     * 设置音效本地播放音量
     * @param soundId 音效文件ID
     * @param volume 混音音量,取值:0~100
     * @return 调用成功返回0,失败返回错误码
     */
    public abstract int setAudioEffectPlayoutVolume(int soundId, int volume) ;
    /**
     * 获取音效本地播放音量
     * @param soundId 音效文件ID
     * @return 调用成功返回0~100音量,失败返回错误码
     */
    public abstract int getAudioEffectPlayoutVolume(int soundId) ;


「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。

image.png


相关文章
|
1月前
|
前端开发 Java Shell
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
178 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
7月前
|
JavaScript 前端开发 Java
[Android][Framework]系统jar包,sdk的制作及引用
[Android][Framework]系统jar包,sdk的制作及引用
179 0
|
5月前
|
缓存 Java Shell
Android 系统缓存扫描与清理方法分析
Android 系统缓存从原理探索到实现。
151 15
Android 系统缓存扫描与清理方法分析
|
4月前
|
Java Linux API
Android SDK
【10月更文挑战第21天】
158 1
|
5月前
|
程序员 开发工具 Android开发
Android|使用阿里云推流 SDK 实现双路推流不同画面
本文记录了一种使用没有原生支持多路推流的阿里云推流 Android SDK,实现同时推送两路不同画面的流的方法。
103 7
|
6月前
|
ARouter 测试技术 API
Android经典面试题之组件化原理、优缺点、实现方法?
本文介绍了组件化在Android开发中的应用,详细阐述了其原理、优缺点及实现方式,包括模块化、接口编程、依赖注入、路由机制等内容,并提供了具体代码示例。
94 2
|
7月前
|
Android开发
Android在rootdir根目录创建自定义目录和挂载点的方法
本文介绍了在Android高通平台的根目录下创建自定义目录和挂载点的方法,通过修改Android.mk文件并使用`LOCAL_POST_INSTALL_CMD`变量在编译过程中添加目录,最终在ramdisk.img的系统根路径下成功创建了`/factory/bin`目录。
348 1
|
7月前
|
开发工具 uml git
AOSP源码下载方法,解决repo sync错误:android-13.0.0_r82
本文分享了下载AOSP源码的方法,包括如何使用repo工具和处理常见的repo sync错误,以及配置Python环境以确保顺利同步特定版本的AOSP代码。
961 0
AOSP源码下载方法,解决repo sync错误:android-13.0.0_r82
使用delphi 开发多层应用(十六)使用XMLRPC 实现basic4android 远程调用RTC服务
RealThinClient (以下简称RTC) 也是一款delphi 多层开发的框架,由于其底层通讯协议是自己封装SOCK 库,抛弃了 大家诟病的indy,因此表现的非常稳定,效率也非常高,深受很多人的追捧。
1188 0
|
27天前
|
JavaScript 搜索推荐 Android开发
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
65 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡

热门文章

最新文章

  • 1
    【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
  • 2
    CompreFace:Star6.1k,Github上火爆的轻量化且强大的人脸识别库,api,sdk都支持
  • 3
    【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
  • 4
    【Azure Developer】编写Python SDK代码实现从China Azure中VM Disk中创建磁盘快照Snapshot
  • 5
    【Azure Storage Account】利用App Service作为反向代理, 并使用.NET Storage Account SDK实现上传/下载操作
  • 6
    Android历史版本与APK文件结构
  • 7
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 8
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 9
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
  • 10
    【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
  • 1
    【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
    63
  • 2
    android FragmentManager 删除所有Fragment 重建
    25
  • 3
    Android实战经验之Kotlin中快速实现MVI架构
    41
  • 4
    即时通讯安全篇(一):正确地理解和使用Android端加密算法
    41
  • 5
    escrcpy:【技术党必看】Android开发,Escrcpy 让你无线投屏新体验!图形界面掌控 Android,30-120fps 超流畅!🔥
    44
  • 6
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
    155
  • 7
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    52
  • 8
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    72
  • 9
    Android历史版本与APK文件结构
    178
  • 10
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    54