播放音频文件(混音)
功能描述
混音是将音频文件和麦克风音频混合,一般用于播放时长较长的背景音乐或者伴奏。同一时间只能播放一个音频文件,播放给房间内的其他用户听。
支持播放本地或在线音乐文件,文件格式支持播放wav、pcm和单声道mp3音频格式。
实现过程
- 加入房间并发布本端主流
参考接口调用流程中加入房间的时序图步骤加入房间,并发布本地主流。
- 播放音频文件
调用startAudioMixing可以播放一个音频文件,参数设置参见如下示例。同一时刻只能播放一个音频文件。
// localStream 本地主流 localStream.startAudioMixing({ // filePath 表示在线音频文件的下载路径 "filePath":"https://***.***.***.***:50007/music.mp3", // startTime 表示音频文件开始播放的时间点,默认值为0。 "startTime":0, // replace 表示是否要用音频文件替换本地音频流 "replace":false, // loop 表示是否需要无限循环播放 "loop":false, // repeatCount 表示音频文件循环播放次数 "repeatCount":0 })
- 设置音频文件音量值
音频文件播放过程中,可以调用setAudioMixingVolume设置音频文件播放音量。
// volume:音量值 let volume = 50 localStream.setAudioMixingVolume (volume)
- 获取音频文件总时长
音频文件播放成功后,可以调用getAudioMixingDuration获取音频文件总时长,用于刷新界面进度条的总时长。
localStream.getAudioMixingDuration()
- 获取音频文件播放进度
音频文件播放成功后,可以调用getAudioMixingCurrentPosition获取音频文件当前播放时间点。
localStream.getAudioMixingCurrentPosition()
- 设置音频文件播放位置
播放过程中可以调用setAudioMixingPosition设置音频文件播放位置,用于通过拖动进度条改变音频文件的播放位置。
localStream.getAudioMixingDuration()
- 暂停播放音频文件
音频文件播放成功后,可以调用pauseAudioMixing接口暂停播放的音频文件。
localStream.pauseAudioMixing()
- 恢复播放暂停的音频文件
音频文件暂停播放后,可以调用resumeAudioMixing接口恢复播放。
localStream.resumeAudioMixing()
- 停止播放音频文件
音频文件播放成功后,可以调用stopAudioMixing接口停止播放音频文件。
localStream.stopAudioMixing()
- 音频文件播放开始回调事件
音频文件播放开始时,会触发audio-mixing-played回调信息通知App应用。
localStream.on('audio-mixing-played', () => { console.info('audioMixing: audio-mixing-played') })
- 音频文件播放结束回调事件
音频文件播放结束时,会触发audio-mixing-finished回调信息通知App应用。
localStream.on('audio-mixing-finished', () => { console.info('audioMixing: audio-mixing-finished') })