LocalVideoStats

The statistics of the local video stream.

class LocalVideoStats {
  const LocalVideoStats(
      {this.uid,
      this.sentBitrate,
      this.sentFrameRate,
      this.captureFrameRate,
      this.captureFrameWidth,
      this.captureFrameHeight,
      this.regulatedCaptureFrameRate,
      this.regulatedCaptureFrameWidth,
      this.regulatedCaptureFrameHeight,
      this.encoderOutputFrameRate,
      this.encodedFrameWidth,
      this.encodedFrameHeight,
      this.rendererOutputFrameRate,
      this.targetBitrate,
      this.targetFrameRate,
      this.qualityAdaptIndication,
      this.encodedBitrate,
      this.encodedFrameCount,
      this.codecType,
      this.txPacketLossRate,
      this.captureBrightnessLevel,
      this.hwEncoderAccelerating});

  @JsonKey(name: 'uid')
  final int? uid;

  @JsonKey(name: 'sentBitrate')
  final int? sentBitrate;

  @JsonKey(name: 'sentFrameRate')
  final int? sentFrameRate;

  @JsonKey(name: 'captureFrameRate')
  final int? captureFrameRate;

  @JsonKey(name: 'captureFrameWidth')
  final int? captureFrameWidth;

  @JsonKey(name: 'captureFrameHeight')
  final int? captureFrameHeight;

  @JsonKey(name: 'regulatedCaptureFrameRate')
  final int? regulatedCaptureFrameRate;

  @JsonKey(name: 'regulatedCaptureFrameWidth')
  final int? regulatedCaptureFrameWidth;

  @JsonKey(name: 'regulatedCaptureFrameHeight')
  final int? regulatedCaptureFrameHeight;

  @JsonKey(name: 'encoderOutputFrameRate')
  final int? encoderOutputFrameRate;

  @JsonKey(name: 'encodedFrameWidth')
  final int? encodedFrameWidth;

  @JsonKey(name: 'encodedFrameHeight')
  final int? encodedFrameHeight;

  @JsonKey(name: 'rendererOutputFrameRate')
  final int? rendererOutputFrameRate;

  @JsonKey(name: 'targetBitrate')
  final int? targetBitrate;

  @JsonKey(name: 'targetFrameRate')
  final int? targetFrameRate;

  @JsonKey(name: 'qualityAdaptIndication')
  final QualityAdaptIndication? qualityAdaptIndication;

  @JsonKey(name: 'encodedBitrate')
  final int? encodedBitrate;

  @JsonKey(name: 'encodedFrameCount')
  final int? encodedFrameCount;

  @JsonKey(name: 'codecType')
  final VideoCodecType? codecType;

  @JsonKey(name: 'txPacketLossRate')
  final int? txPacketLossRate;

  @JsonKey(name: 'captureBrightnessLevel')
  final CaptureBrightnessLevelType? captureBrightnessLevel;

  @JsonKey(name: 'hwEncoderAccelerating')
  final int? hwEncoderAccelerating;

  factory LocalVideoStats.fromJson(Map<String, dynamic> json) =>
      _$LocalVideoStatsFromJson(json);

  Map<String, dynamic> toJson() => _$LocalVideoStatsToJson(this);
}

Attributes

uid
The ID of the local user.
sentBitrate
The actual bitrate (Kbps) while sending the local video stream.
Attention: This value does not include the bitrate for resending the video after packet loss.
sentFrameRate
The actual frame rate (fps) while sending the local video stream.
Attention: This value does not include the frame rate for resending the video after packet loss.
captureFrameRate
The frame rate (fps) for capturing the local video stream.
captureFrameWidth
The width (px) for capturing the local video stream.
captureFrameHeight
The height (px) for capturing the local video stream.
regulatedCaptureFrameRate
The frame rate (fps) adjusted by the built-in video capture adapter (regulator) of the SDK for capturing the local video stream. The regulator adjusts the frame rate of the video captured by the camera according to the video encoding configuration.
regulatedCaptureFrameWidth
The width (px) adjusted by the built-in video capture adapter (regulator) of the SDK for capturing the local video stream. The regulator adjusts the height and width of the video captured by the camera according to the video encoding configuration.
regulatedCaptureFrameHeight
The height (px) adjusted by the built-in video capture adapter (regulator) of the SDK for capturing the local video stream. The regulator adjusts the height and width of the video captured by the camera according to the video encoding configuration.
encoderOutputFrameRate
The output frame rate (fps) of the local video encoder.
rendererOutputFrameRate
The output frame rate (fps) of the local video renderer.
targetBitrate
The target bitrate (Kbps) of the current encoder. This is an estimate made by the SDK based on the current network conditions.
targetFrameRate
The target frame rate (fps) of the current encoder.
qualityAdaptIndication
The quality adaptation of the local video stream in the reported interval (based on the target frame rate and target bitrate). See QualityAdaptIndication.
encodedBitrate
The bitrate (Kbps) while encoding the local video stream.
Attention: This value does not include the bitrate for resending the video after packet loss.
encodedFrameHeight
The height of the encoded video (px).
encodedFrameWidth
The width of the encoded video (px).
encodedFrameCount
The number of the sent video frames, represented by an aggregate value.
codecType
The codec type of the local video. See VideoCodecType.
txPacketLossRate
The video packet loss rate (%) from the local client to the Agora server before applying the anti-packet loss strategies.
captureFrameRate
The frame rate (fps) for capturing the local video stream.
captureBrightnessLevel
The brightness level of the video image captured by the local camera. See CaptureBrightnessLevelType.
hwEncoderAccelerating
The local video encoding acceleration type.
  • 0: Software encoding is applied without acceleration.
  • 1: Hardware encoding is applied for acceleration.