rtcEngine$onRemoteAudioPropertiesReport$totalRemoteVolume method

FutureOr<void> rtcEngine$onRemoteAudioPropertiesReport$totalRemoteVolume(
  1. dynamic engine,
  2. List audioPropertiesInfos,
  3. dynamic totalRemoteVolume
)
override

@detail callback @author huangshouqin @brief 远端用户进房后,本地调用 enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport} ,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的瞬时音频信息。
远端用户的音频包括使用 RTC SDK 内部机制/自定义机制采集的麦克风音频和屏幕音频。 @param engine ByteRTCEngine 对象 @param audioPropertiesInfos 远端音频信息,其中包含音频流属性、房间 ID、用户 ID ,详见 ByteRTCRemoteAudioPropertiesInfo{@link #ByteRTCRemoteAudioPropertiesInfo}。 @param totalRemoteVolume 所有订阅的远端流混音后的音量,范围是 0,255
- 0,25 接近无声; - 25,75 为低音量; - 76,204 为中音量; - 205,255 为高音量。

Implementation

FutureOr<void> rtcEngine$onRemoteAudioPropertiesReport$totalRemoteVolume(
    dynamic engine,
    List<dynamic> audioPropertiesInfos,
    dynamic totalRemoteVolume) async {
  if ($instance == null || $instance is! IRTCEngineEventHandler) {
    return;
  }
  return ($instance as IRTCEngineEventHandler)
      .onRemoteAudioPropertiesReport
      ?.call(
          audioPropertiesInfos
              .map((e) => packObject(
                  e,
                  () => RemoteAudioPropertiesInfo.fromMap(
                      RemoteAudioPropertiesInfo.deepPackedMapValues(
                          RemoteAudioPropertiesInfo
                              .mapMemberToConstructorParams(e)))))
              .toList(),
          int.tryParse(totalRemoteVolume.toString()) ?? 0);
}