media_kit_video 1.2.4 copy "media_kit_video: ^1.2.4" to clipboard
media_kit_video: ^1.2.4 copied to clipboard

Native implementation for video playback in package:media_kit.

19
likes
130/ 160
pub points
98%
popularity

We analyzed this package 4 days ago, and awarded it 130 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

288 out of 400 API elements (72.0 %) have documentation comments.

Some symbols that are missing documentation: cupertino, duration, fullscreen_inherited_widget.FullscreenInheritedWidget.maybeOf, fullscreen_inherited_widget.FullscreenInheritedWidget.of, fullscreen_inherited_widget.FullscreenInheritedWidget.parent.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 6 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/src/video/video.dart that imports:
  • package:media_kit_video/src/video/video_texture.dart that imports:
  • package:media_kit_video/src/utils/wakelock.dart that imports:
  • package:wakelock_plus/wakelock_plus.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_io_plugin.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_windows_plugin.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/src/video/video.dart that imports:
  • package:media_kit_video/src/video/video_texture.dart that imports:
  • package:media_kit_video/src/utils/wakelock.dart that imports:
  • package:wakelock_plus/wakelock_plus.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_io_plugin.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_windows_plugin.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `Windows`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/media_kit_video_controls/media_kit_video_controls.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/methods/fullscreen.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/widgets/video_controls_theme_data_injector.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/material.dart that imports:
  • package:volume_controller/volume_controller.dart that declares support for platforms: Android, iOS.
Package does not support platform `Linux`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/media_kit_video_controls/media_kit_video_controls.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/methods/fullscreen.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/widgets/video_controls_theme_data_injector.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/material.dart that imports:
  • package:screen_brightness/screen_brightness.dart that declares support for platforms: Android, iOS, Windows, macOS.
Package does not support platform `macOS`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/media_kit_video_controls/media_kit_video_controls.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/methods/fullscreen.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/widgets/video_controls_theme_data_injector.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/material.dart that imports:
  • package:volume_controller/volume_controller.dart that declares support for platforms: Android, iOS.
Package does not support platform `Web`.

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/media_kit_video_controls/media_kit_video_controls.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/methods/fullscreen.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/widgets/video_controls_theme_data_injector.dart that imports:
  • package:media_kit_video/media_kit_video_controls/src/controls/material.dart that imports:
  • package:screen_brightness/screen_brightness.dart that declares support for platforms: Android, iOS, Windows, macOS.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:media_kit_video/media_kit_video.dart that imports:
  • package:media_kit_video/src/video/video.dart that imports:
  • package:media_kit_video/src/video/video_texture.dart that imports:
  • package:media_kit_video/src/video_controller/platform_video_controller.dart that imports:
  • package:media_kit_video/src/video_controller/video_controller.dart that imports:
  • package:media_kit_video/src/video_controller/web_video_controller/web_video_controller.dart that imports:
  • package:media_kit_video/src/video_controller/web_video_controller/stub.dart that imports:
  • package:media_kit/media_kit.dart that imports:
  • package:media_kit/src/player/web/player/player.dart that imports:
  • package:media_kit/src/player/web/player/stub.dart that imports:
  • package:media_kit/src/player/platform_player.dart that imports:
  • package:media_kit/src/models/player_stream.dart that imports:
  • package:media_kit/src/models/playlist.dart that imports:
  • package:media_kit/src/models/media/media.dart that imports:
  • package:media_kit/src/models/media/media_native.dart that imports:
  • package:media_kit/src/player/native/utils/android_content_uri_provider.dart that imports:
  • package:media_kit/src/player/native/utils/isolates.dart that imports:
  • dart:isolate

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

0/0 points: Swift Package Manager support

Package does not support the Swift Package Manager on macOS

It does not contain macos/media_kit_video/Package.swift.

This package for iOS or macOS does not support the Swift Package Manager. It will not receive full points in a future version of the scoring model.

See https://docs.flutter.dev/to/spm for details.

failed
Pass static analysis
30 / 50trigger folding of the section

30/50 points: code has no errors, warnings, lints, or formatting issues

Found 43 issues. Showing the first 2:

WARNING: Doc directive is missing a closing tag.

lib/src/subtitle/subtitle_view.dart:12:5

   ╷
12 │ /// {@template subtitle_view}
   │     ^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/subtitle/subtitle_view.dart

INFO: Dangling library doc comment.

lib/media_kit_video.dart:1:1

  ╷
1 │ /// This file is a part of media_kit (https://github.com/media-kit/media-kit).
  │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/media_kit_video.dart

failed
Support up-to-date dependencies
30 / 40trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
flutter flutter 0.0.0 0.0.0
media_kit ^1.1.10 1.1.11 1.1.11
plugin_platform_interface ^2.0.2 2.1.8 2.1.8
screen_brightness ^0.2.2 0.2.2+1 2.0.0+2
synchronized ^3.1.0 3.3.0+3 3.3.0+3
universal_platform ^1.0.0+1 1.1.0 1.1.0
volume_controller ^2.0.7 2.0.8 2.0.8
wakelock_plus ^1.1.1 1.2.8 1.2.8
Transitive dependencies
Package Constraint Compatible Latest
archive - 3.6.1 3.6.1
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
collection - 1.18.0 1.19.1
crypto - 3.0.6 3.0.6
dbus - 0.7.10 0.7.10
ffi - 2.1.3 2.1.3
fixnum - 1.1.1 1.1.1
flutter_web_plugins - 0.0.0 0.0.0
http - 1.2.2 1.2.2
http_parser - 4.0.2 4.1.1
image - 4.3.0 4.3.0
js - 0.6.7 0.7.1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
package_info_plus - 8.1.1 8.1.1
package_info_plus_platform_interface - 3.0.1 3.0.1
path - 1.9.1 1.9.1
petitparser - 6.0.2 6.0.2
safe_local_storage - 1.0.2 2.0.1
screen_brightness_android - 0.1.0+2 2.0.0
screen_brightness_ios - 0.1.0 2.0.0
screen_brightness_macos - 0.1.0+1 2.0.0
screen_brightness_platform_interface - 0.1.0 2.0.0
screen_brightness_windows - 0.1.3 2.0.0
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
sprintf - 7.0.0 7.0.0
string_scanner - 1.4.0 1.4.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.4.0 1.4.0
uri_parser - 2.0.2 3.0.0
uuid - 4.5.1 4.5.1
vector_math - 2.1.4 2.1.4
wakelock_plus_platform_interface - 1.2.1 1.2.1
web - 1.1.0 1.1.0
win32 - 5.8.0 5.8.0
xml - 6.5.0 6.5.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^0.2.2` on screen_brightness does not support the stable version `1.0.0`.

Try running dart pub upgrade --major-versions screen_brightness to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.15, Flutter 3.24.4, Dart 3.5.4.

Check the analysis log for details.