onLocalStreamStats method

FutureOr<void> onLocalStreamStats(
  1. dynamic streamId,
  2. dynamic streamInfo,
  3. dynamic stats
)
override

@detail callback @author yejing @brief 本地流数据统计以及网络质量回调。
本地用户发布流成功后,SDK 会周期性(2s)的通过此回调事件通知用户发布的流在此次统计周期内的质量统计信息。
统计信息通过 LocalStreamStats{@link #LocalStreamStats} 类型的回调参数传递给用户,其中包括发送音视频比特率、发送帧率、编码帧率,网络质量等。 @param streamId 流 ID,用于标识特定的本地流。 @param streamInfo 流信息结构体,包含房间 ID、用户 ID 等详细信息,参看 StreamInfo{@link #StreamInfo}。 @param stats 音视频流以及网络状况统计信息。参见 LocalStreamStats{@link #LocalStreamStats}。

Implementation

FutureOr<void> onLocalStreamStats(
    dynamic streamId, dynamic streamInfo, dynamic stats) async {
  if ($instance == null || $instance is! IRTCRoomEventHandler) {
    return;
  }
  return ($instance as IRTCRoomEventHandler).onLocalStreamStats?.call(
      streamId.toString(),
      packObject(
          streamInfo,
          () => StreamInfo.fromMap(StreamInfo.deepPackedMapValues(
              StreamInfo.mapMemberToConstructorParams(streamInfo)))),
      packObject(
          stats,
          () => LocalStreamStats.fromMap(LocalStreamStats.deepPackedMapValues(
              LocalStreamStats.mapMemberToConstructorParams(stats)))));
}