setVideoEncoderParam method

dynamic setVideoEncoderParam(
  1. TRTCVideoResolution resolution, {
  2. int? fps,
  3. int? bitrate,
  4. TRTCVideoResolutionMode? resolutionMode,
})

Implementation

setVideoEncoderParam(
  TRTCVideoResolution resolution, {
  int? fps,
  int? bitrate,
  TRTCVideoResolutionMode? resolutionMode,
}) async {
  final classInfo = await getClassInfo();
  if (classInfo != null) {
    final classResolution = classInfo.qualitySet.camResolution;
    final maxResolution = getResolutionByType(classResolution);
    final classFps = classInfo.qualitySet.screenFps;
    final classBitrate = classInfo.qualitySet.camBitrate;

    final finalResolution = resolution.clampTo(maxResolution);
    final finalFps =
        fps != null ? (fps >= classFps ? classFps : fps) : classFps;
    final finalBitrate =
        bitrate != null
            ? (bitrate >= classBitrate ? classBitrate : bitrate)
            : classBitrate;
    final finalResolutionMode =
        resolutionMode ?? TRTCVideoResolutionMode.landscape;

    _setVideoEncoderParam(
      finalResolution,
      finalFps,
      finalBitrate,
      finalResolutionMode,
    );
  }
}