VideoPlayerValue.isPlaying with underlying video player.VideoPlayerController to fix access to M3U8 files on Android.VideoScrubber so it can be used to make custom video progress indicatorsno_leading_underscores_for_local_identifiers lint.setClosedCaptionFile method to VideoPlayerController.allowBackgroundPlayback to VideoPlayerOptions.setCaptionOffset to offset the caption display based on a Duration.meta.seekTo.video_player_platform_interface 5.0, which does not include non-dev test dependencies.VideoPlayerPlatform instance is cached in the controller, so that it's no longer impossible to change after the first use.VideoPlayerController throwing an exception when being replaced in the VideoPlayer.contentUri based VideoPlayerController.flutter_test package.FLTCMTimeToMillis to support indefinite streams. Fixes #48670.httpHeaders option to VideoPlayerController.networkVideoPlayerValue size and aspect ratio documentationisBuffering was not updating on Android.VideoPlayerValue toString() test.RaisedButton and FlatButton widgets.defaultBinaryMessenger.mixWithOthers VideoPlayerOptions in web now is silently ignored instead of throwing an exception.test dependency.toString() to Caption.play on the controller multiple times before pause, which caused value listeners to be called indefinitely (after pause) and more often than needed.VideoPlayerValue.toString to insert a comma after isBuffering.video_player_platform_interface version that contains the new TestHostVideoPlayerApi in order for tests to pass using the latest dependency.VideoPlayerPlugin class.setMixWithOthers test.video_player_platform_interface that contains the new VideoPlayerOptions class.1.0.0 (more details at: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0).getFlutterEngine call on Android.VideoPlayerController support for reading closed caption files.VideoPlayerValue has a caption field for reading the current closed caption at any given time.ClosedCaptionFile and SubRipCaptionFile classes added to read SubRip files into dart objects.web platform.initialize() Future stalls when failing to load source data and does not throw an error.web by default.author: field form pubspec.yamlFLTVideoPlayer in onTextureUnregistered callback on iOS.FLTVideoPlayer with a delay to avoid race condition.invokeMethod calls.seekToTime APIinitialized once duration is determined.iOS: Fix an issue where the player sends initialization message incorrectly.
Fix a few other IDE warnings.
Android: Fix issue where buffering status in percentage instead of milliseconds
Android: Update buffering status everytime we notify for position change
event.put("event", "completed"); which makes it possible to detect when the video is over.MediaSources for Android instead of the now-deprecated constructors.VideoPlayerController.seekTo() is now frame accurate on both platforms.VideoPlayerController.initialize() now only completes after the controller is initialized.VideoPlayerController.file.VideoPlayerController.isNetwork to an enum VideoPlayerController.dataSourceType.VideoPlayerController constructorVideoPlayerController.asset and VideoPlayerController.network to respectively play a video from the Flutter assets and from a network uri.VideoPlayerController.isErroneous to VideoPlayerController.hasError.VideoPlayerController.