startFrameInjection method

void startFrameInjection({
  1. required Future<Uint8List> frameProvider(),
  2. int fps = 15,
})

Start continuous frame injection from a provider function

frameProvider - Async function that returns the next frame data fps - Target frames per second

Implementation

void startFrameInjection({
  required Future<Uint8List> Function() frameProvider,
  int fps = 15,
}) {
  if (_isActive) return;

  _frameProvider = frameProvider;
  _isActive = true;

  final interval = Duration(milliseconds: (1000 / fps).round());
  _frameTimer = Timer.periodic(interval, (_) => _injectFrame());

  debugPrint('VirtualBackgroundChannel: Started frame injection at $fps fps');
}