CbrRateController constructor

CbrRateController({
  1. required int targetBitrateBps,
  2. required double framerate,
  3. int minQi = 4,
  4. int maxQi = 63,
  5. int startQi = 32,
  6. double keyframeBoost = 5.0,
  7. double bufferWindowSeconds = 1.0,
  8. double qiStepGain = 16.0,
  9. int maxQiStepPerFrame = 6,
  10. double dropOvershootFullness = 0.75,
  11. int maxConsecutiveDrops = 3,
})

Implementation

CbrRateController({
  required int targetBitrateBps,
  required double framerate,
  this.minQi = 4,
  this.maxQi = 63,
  this.startQi = 32,
  this.keyframeBoost = 5.0,
  this.bufferWindowSeconds = 1.0,
  this.qiStepGain = 16.0,
  this.maxQiStepPerFrame = 6,
  this.dropOvershootFullness = 0.75,
  this.maxConsecutiveDrops = 3,
})  : assert(targetBitrateBps > 0),
      assert(framerate > 0),
      assert(minQi >= 0 && maxQi >= minQi && maxQi <= 127),
      assert(startQi >= minQi && startQi <= maxQi),
      assert(dropOvershootFullness > 0.0),
      assert(maxConsecutiveDrops >= 0),
      _targetBitrateBps = targetBitrateBps,
      _framerate = framerate {
  _currentQi = startQi;
}