本地音频合流
startLocalAudioMixer
开启本地音频合流。
Dart
Future<void> startLocalAudioMixer(LocalAudioMixerConfiguration config);
该方法支持在本地将多路音频流合并为一路音频流。例如:将本地麦克风采集的音频流、媒体播放器中的音频流、声卡采集的音频流、远端音频流等合并为一路音频流,然后将合流后的音频流发布到频道中。
- 如果你要对本地采集的音频流进行合流,可以将 ChannelMediaOptions 中的 publishMixedAudioTrack 设置为
true
,则可将合流后的音频流发布到频道中。 - 如果你要对远端音频流进行合流,需确保远端音频流已在频道内发布并且已被订阅。
适用场景
你可以在如下场景中开启该功能:
- 结合本地合图功能一起使用,可将合图视频流相关的音频流同步采集和发布。
- 在直播场景下,用户接收频道内的音频流,在本地进行多路音频流合流后转发到其他频道。
- 在教育场景下,老师可将跟学生连麦互动的音频在本地进行合流,然后将合并的音频流转发到其他频道。
调用时机
该方法在加入频道前后均可调用。
调用限制
为了保证音频质量,建议参与本地合流的音频流数量不超过 10 个。
参数
- config
- 本地音频合流的配置。详见 LocalAudioMixerConfiguration。
返回值
方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。
所属接口类stopLocalAudioMixer
停止本地音频合流。
Dart
Future<void> stopLocalAudioMixer();
调用 startLocalAudioMixer 后,如果你希望停止本地音频合流,请调用该方法。
调用时机
该方法需要在 startLocalAudioMixer 之后调用。
调用限制
无。
返回值
方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。
所属接口类updateLocalAudioMixerConfiguration
更新本地音频合流的配置。
Dart
Future<void> updateLocalAudioMixerConfiguration(
LocalAudioMixerConfiguration config);
调用 startLocalAudioMixer 后,如果你希望更新本地音频合流的配置,请调用该方法。
调用时机
该方法需要在 startLocalAudioMixer 之后调用。
调用限制
为了保证音频质量,建议参与本地合流的音频流数量不超过 10 个。
参数
- config
- 本地音频合流的配置。详见 LocalAudioMixerConfiguration。
返回值
方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。
所属接口类