FFmpeg software H.264 decoder: opt-in via pubspec flag

- Gate buildFfmpegJni + jniLibs packaging on `ux: enable_ffmpeg` in the
  consuming app's pubspec (default off) -- no LGPL / H.264-patent
  exposure unless explicitly enabled
- appInfoBuilder generates kUxEnableFfmpeg from the same flag so apps
  register the FFmpeg LGPL notice eagerly, pubspec-only (no dart-define)
- Add registerFfmpegLicense() + bundled LGPL-2.1 text asset
- FFmpeg compliance docs (LICENSES-3RDPARTY.md, android/ffmpeg/README.md)
- Network video streaming: XVideoPlayerController.network
This commit is contained in:
agra
2026-06-15 19:16:16 +03:00
parent 27cfc87def
commit 36b5143cb3
12 changed files with 800 additions and 34 deletions

View File

@@ -14,6 +14,7 @@ export 'src/camera/camera.dart';
export 'src/camera/camera_backend.dart' show XCameraBackend, XCameraCreateResult, XCameraEvent, XCameraDeviceOrientationChanged, XCameraSessionError, XCameraSessionInterrupted, XCameraSessionResumed, XCameraDiagnostic, XCameraPreviewSizeChanged;
export 'src/camera/camera_channel.dart' show MethodChannelXCameraBackend;
export 'src/camera/camera_preview.dart';
export 'src/video/ffmpeg_license.dart' show registerFfmpegLicense;
export 'src/video/x_video_player.dart';
export 'src/video/x_video_player_backend.dart' show XVideoPlayerBackend, XVideoPlayerCreateResult, XVideoPlayerMetadata, XVideoPlayerEvent, XVideoPlayerStateChanged, XVideoPlayerSizeChanged, XVideoPlayerCompleted, XVideoPlayerError;
export 'src/video/x_video_player_channel.dart' show MethodChannelXVideoPlayerBackend;