subscribeAllStreamsAudio method

Future<int?> subscribeAllStreamsAudio(
  1. bool subscribe
)

@detail api @valid since 3.60. 自 3.60 起,该接口替代了 subscribeAllStreamsunsubscribeAllStreams 方法,用于下面的功能。如果您已升级到 3.60 或更高版本,并且仍在使用这些方法,请尽快迁移到该接口。 @author yejing.luna @brief 订阅或取消订阅所有远端音频流(通过麦克风采集的)。 @param subscribe 是否订阅所有远端音频流:
- true: 订阅。 - false: 取消订阅。 @return 方法调用结果:
- 0:成功。 - < 0:失败。查看 ReturnStatus{@link #ReturnStatus} 获得更多错误说明。 @note - 多次调用订阅接口时,将根据末次调用接口和传入的参数,更新订阅配置:subscribeStreamVideo{@link #RTCRoom#subscribeStreamVideo}、subscribeStreamAudio{@link #RTCRoom#subscribeStreamAudio}。 - 开启音频选路后,如果房间内的媒体流超过上限,建议通过调用单流订阅接口逐一指定需要订阅的媒体流。 - 调用该方法后,你会收到 onVideoSubscribeStateChanged{@link #IRTCRoomEventHandler#onVideoSubscribeStateChanged}、onAudioSubscribeStateChanged{@link #IRTCRoomEventHandler#onAudioSubscribeStateChanged} 通知方法调用结果,包含异常原因。 - 成功订阅远端用户的媒体流后,订阅关系将持续到调用 subscribeStreamVideo{@link #RTCRoom#subscribeStreamVideo}、subscribeStreamAudio{@link #RTCRoom#subscribeStreamAudio} 取消订阅或本端用户退房。 @order 5

Implementation

Future<int?> subscribeAllStreamsAudio(bool subscribe) async {
  $a() => ($instance as $p_a.RTCRoom).subscribeAllStreamsAudio(subscribe);
  $i() => ($instance as $p_i.ByteRTCRoom).subscribeAllStreamsAudio(subscribe);

  if (Platform.isAndroid) {
    return $a();
  } else if (Platform.isIOS) {
    return $i();
  } else {
    throw UnsupportedError(
        'Not Support Platform ${Platform.operatingSystem}');
  }
}