更新时间:2023-11-03 GMT+08:00
分享

播放音频文件(混音)

功能描述

混音是将音频文件和麦克风音频混合,一般用于播放时长较长的背景音乐或者伴奏。同一时间只能播放一个音频文件,播放给房间内的其他用户听。

支持播放本地或在线音乐文件,文件格式支持播放wav、pcm和单声道mp3音频格式。

接口调用流程

实现过程

  1. 加入房间并发布本端主流

    参考接口调用流程中加入房间的时序图步骤加入房间,并发布本地主流。

  2. 播放音频文件

    调用startAudioMixing可以播放一个音频文件,参数设置参见如下示例。同一时刻只能播放一个音频文件。

    // localStream 本地主流
    localStream.startAudioMixing({
    // filePath 表示在线音频文件的下载路径
    "filePath":"https://***.***.***.***:50007/music.mp3",
    // startTime 表示音频文件开始播放的时间点,默认值为0。
    "startTime":0,
    // replace 表示是否要用音频文件替换本地音频流
    "replace":false,
    // loop 表示是否需要无限循环播放
    "loop":false,
    // repeatCount 表示音频文件循环播放次数
    "repeatCount":0
    })
  3. 设置音频文件音量值

    音频文件播放过程中,可以调用setAudioMixingVolume设置音频文件播放音量。

    // volume:音量值
     let volume = 50
     localStream.setAudioMixingVolume (volume)
  4. 获取音频文件总时长

    音频文件播放成功后,可以调用getAudioMixingDuration获取音频文件总时长,用于刷新界面进度条的总时长。

    localStream.getAudioMixingDuration()
  5. 获取音频文件播放进度

    音频文件播放成功后,可以调用getAudioMixingCurrentPosition获取音频文件当前播放时间点。

    localStream.getAudioMixingCurrentPosition()
  6. 设置音频文件播放位置

    播放过程中可以调用setAudioMixingPosition设置音频文件播放位置,用于通过拖动进度条改变音频文件的播放位置。

    localStream.getAudioMixingDuration()
  7. 暂停播放音频文件

    音频文件播放成功后,可以调用pauseAudioMixing接口暂停播放的音频文件。

    localStream.pauseAudioMixing()
  8. 恢复播放暂停的音频文件

    音频文件暂停播放后,可以调用resumeAudioMixing接口恢复播放。

    localStream.resumeAudioMixing()
  9. 停止播放音频文件

    音频文件播放成功后,可以调用stopAudioMixing接口停止播放音频文件。

    localStream.stopAudioMixing()
  10. 音频文件播放开始回调事件

    音频文件播放开始时,会触发audio-mixing-played回调信息通知App应用。

    localStream.on('audio-mixing-played', () => {
     console.info('audioMixing: audio-mixing-played')
    })
  11. 音频文件播放结束回调事件

    音频文件播放结束时,会触发audio-mixing-finished回调信息通知App应用。

    localStream.on('audio-mixing-finished', () => {
     console.info('audioMixing: audio-mixing-finished')
    })

相关文档