SenzuPlayerBundle.create constructor

SenzuPlayerBundle.create({
  1. bool looping = false,
  2. bool adaptiveBitrate = true,
  3. int minBufferSec = 10,
  4. int maxBufferSec = 30,
  5. bool secureMode = false,
  6. bool notification = true,
  7. SenzuWatermark? watermark,
  8. void onQualityChanged(
    1. String
    )?,
  9. SenzuDataPolicy dataPolicy = const SenzuDataPolicy(),
  10. SenzuTokenConfig? tokenConfig,
  11. List<SenzuAnnotation> annotations = const [],
})

Implementation

factory SenzuPlayerBundle.create({
  bool looping = false,
  bool adaptiveBitrate = true,
  int minBufferSec = 10,
  int maxBufferSec = 30,
  bool secureMode = false,
  bool notification = true,
  SenzuWatermark? watermark,
  void Function(String)? onQualityChanged,
  SenzuDataPolicy dataPolicy = const SenzuDataPolicy(),
  SenzuTokenConfig? tokenConfig,
  List<SenzuAnnotation> annotations = const [],

}) {
  final core = SenzuCoreController(
    looping: looping,
    secureMode: secureMode,
    watermark: watermark,
    onQualityChanged: onQualityChanged,
    dataPolicy: dataPolicy,
    tokenConfig: tokenConfig,
    notification: notification
  );

  final playback = SenzuPlaybackController(core: core);
  final subtitle = SenzuSubtitleController(core: core, playback: playback);
  final ad = SenzuAdController(core: core, playback: playback);
  final stream = SenzuStreamController(
    core: core,
    playback: playback,
    adaptiveBitrate: adaptiveBitrate,
    minBufferSec: minBufferSec,
    maxBufferSec: maxBufferSec,
  );
  final ui = SenzuUIController(core: core, playback: playback);
  final device = SenzuDeviceController();
  final sleepTimer = SenzuSleepTimerController(core: core, device: device);

  final annotation = SenzuAnnotationController(
    playback: playback,
    annotations: annotations,
  );

  core.isAdActiveCallback = () => ad.isAdActive.value;


  core.onInit();
  playback.onInit();
  subtitle.onInit();
  ad.onInit();
  stream.onInit();
  ui.onInit();
  annotation.onInit();
  sleepTimer.onInit();
  device.onInit();
  log('SENZU PLAYER BUNDLE CREATE');

  return SenzuPlayerBundle._(
    core: core,
    playback: playback,
    subtitle: subtitle,
    ad: ad,
    stream: stream,
    ui: ui,
    device: device,
    sleepTimer: sleepTimer,
    annotation: annotation,
  );
}