yl_player is a federated Flutter playback kernel for Android, iOS, and
macOS. The v0.2 development API separates a long-lived player from replaceable
playback sessions, keeps rendering texture-only, and makes network, buffer,
decoder, and audio ownership requirements explicit.
The workspace requires Dart 3.12 and Flutter 3.44. Applications depend on
yl_player; Flutter selects the endorsed
yl_player_android or
yl_player_apple implementation. Platform
authors use the
yl_player_platform_interface.
Start with the application API and lifecycle. Before adopting v0.2, read the migration guide, platform support matrix, policy semantics, and diagnostics contract.
This is 0.2.0-dev.2. Final physical-device, endurance, profiling, consumer,
and release acceptance remains pending; the support matrix distinguishes
implemented automated evidence from physical evidence.
Except where otherwise noted, original code and documentation in this repository are licensed under the BSD 3-Clause License, consistent with all four library packages. Existing copyright notices are retained.
Third-party components retain their own licenses; the repository license does
not relicense them. The Android and Apple packages redistribute minimized
LGPL-2.1-or-later FFmpeg components. See the
Apple third-party notices,
Android FFmpeg notice,
and the LGPL license texts in each platform package's LICENSES directory.
Keep each package's license text, notices, replacement scripts, and artifact
lock with binary distributions. Distribution also requires satisfying the
applicable LGPL source and replacement/relinking requirements; these files alone
are not a complete compliance assessment. See
FFmpeg's license and legal guidance.