Unsupported Event: onSourceUnload and SourceErrorEvent with Bitmovin Player in Flutter

I am encountering an issue while playing HLS video streams using the Bitmovin Player in my Flutter app. The player fails to handle some events properly and throws the following error:

flutter: ⚠️ Received unsupported event type: onSourceUnload
flutter: Event: SourceUnloadedEvent
flutter: Event: SourceRemovedEvent
flutter: Error Event: 2001 - Source Error. The operation couldn’t be completed. (CoreMediaErrorDomain error -12641.)

The video stream is hosted on a CloudFront URL and uses an HLS manifest (.m3u8). The video plays fine in other players, such as VLC and browsers, but the Bitmovin Player seems to throw the error.

Technical Setup:

  1. Bitmovin SDK Version: 0.14.0 (latest available version as per pub.dev)
  2. Flutter SDK Version: 3.5.3
  3. Video Information:
  • Codec: H.264/AVC
  • Manifest: HLS (.m3u8)
  • Video resolution: 360x640
  • FPS: 25
  1. Error Logs:
  • ⚠️ Received unsupported event type: onSourceUnload
  • Event: SourceErrorEvent
  • Error Event: SourceErrorEvent(2001, Source Error. The operation couldn’t be completed. (CoreMediaErrorDomain error -12641.))

Steps to Reproduce:

  1. Configure the Bitmovin Player with the following PlayerConfig:
PlayerConfig config = PlayerConfig(
  key: 'MY_LICENSE_KEY',
  playbackConfig: PlaybackConfig(
    isAutoplayEnabled: true,
    isBackgroundPlaybackEnabled: false,
  ),
  styleConfig: StyleConfig(
    isUiEnabled: true,
  ),
);
  • Load the video source:
player.loadSource(Source(sourceConfig: SourceConfig(url: 'https://example.com/manifest.m3u8', type: SourceType.hls)));
player.play();

Questions:

  1. Why is the onSourceUnload event being triggered, and how can I handle or suppress it to prevent the error?
  2. Is there something specific about my video stream or manifest that could be causing the SourceErrorEvent?
  3. Are there any additional configurations or debugging steps I should follow to resolve this issue?

Additional Information:

  • Bitmovin License Key: Valid
  • HLS Manifest Example:
    • URL: https://d2bzrhuy62k50m.cloudfront.net/38eb39b6-b357-4651-9860-a5ea88c7d9aa/manifest.m3u8
    • Contains multiple quality streams (360p, 480p, etc.) and an audio stream.
  • App Target Platforms: iOS and Android

I would greatly appreciate any guidance or suggestions on resolving this issue. Thank you!