onRemoteStreamStats method

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

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

Implementation

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