本地音频合流
startLocalAudioMixer
开始本地音频混音。
C++
virtual int startLocalAudioMixer(const LocalAudioMixerConfiguration& config) = 0;
该方法支持将多个音频流在本地合并为一个音频流,例如将本地麦克风采集的音频流、媒体播放器的音频流、声卡的音频流以及远端用户的音频流合并为一个音频流,并将该合并后的音频流发布到频道中。
- 如果你希望混合本地采集的音频流,可以在 ChannelMediaOptions 中将
publishMixedAudioTrack设置为 true,然后将混合后的音频流发布到频道中。 - 如果你希望混合远端音频流,请确保远端音频流已在频道中发布,并且你已订阅需要混合的音频流。
信息
为确保音频质量,建议混音的音频流数量不超过 10 路。
适用场景
你可以在以下场景中启用该功能:
- 使用本地视频合图功能时,可同时采集并发布合图视频流所关联的音频流。
- 在直播场景中,用户可以接收频道内的音频流,在本地混合多个音频流后,将混合后的音频流转发到其他频道。
- 在在线课堂中,老师可以将与学生互动的音频在本地混合后转发到其他频道。
调用时机
你可以在加入频道前或加入频道后调用该方法。
参数
- config
- 本地音频混音的配置参数,详见 LocalAudioMixerConfiguration。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
- -7:IRtcEngine 对象尚未初始化。请在调用该方法前先初始化 IRtcEngine 对象。
stopLocalAudioMixer
停止本地混音。
C++
virtual int stopLocalAudioMixer() = 0;
调用 startLocalAudioMixer 后,如需停止本地混音,可调用该方法。
调用时机
请在调用 startLocalAudioMixer 之后调用该方法。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
- -7:IRtcEngine 对象尚未初始化。请在调用该方法前先初始化 IRtcEngine 对象。
updateLocalAudioMixerConfiguration
更新本地混音配置。
C++
virtual int updateLocalAudioMixerConfiguration(const LocalAudioMixerConfiguration& config) = 0;
调用 startLocalAudioMixer 后,如需更新本地混音配置,可调用该方法。
信息
为确保音频质量,建议混音的音频流数量不超过 10。
调用时机
请在调用 startLocalAudioMixer 之后调用此方法。
参数
- config
- 本地混音配置。详见 LocalAudioMixerConfiguration。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
- -7:IRtcEngine 对象尚未初始化。请在调用此方法前先初始化 IRtcEngine 对象。