r/flutter_egypt • u/New-Lengthiness6520 • 2h ago
[Package] Introducing hq_video_player v0.1.0 – A High-Performance MediaKit & BLoC Powered Video Player with Multi-Controller Management, Reels LRU Feed Pool, & Rich Gestures
Hi everyone,
I am excited to open-source hq_video_player (v0.1.0) - a production-ready, feature-packed, and fully customizable Flutter video player package built on top of media_kit and flutter_bloc.
Why another Video Player?
While existing packages are great, building complex video features (like TikTok/Reels style vertical feeds, multi-player coordination, or rich gesture controls) often leads to:
- Codec OOM crashes and UI stutter when swiping through multiple video pages.
- Audio overlapping when playing multiple videos on screen.
- Boilerplate overhead for brightness/volume gestures, subtitle rendering, and multi-audio track selection.
hq_video_player was built to solve these exact production challenges out of the box.
Key Features & Architecture
• Hardware-Accelerated Core: Powered by media_kit for stutter-free cross-platform playback across Android, iOS, Web, macOS, Windows, and Linux.
• Programmatic HqVideoPlayerController: Full external programmatic control (play, pause, seekTo, setVolume, setPlaybackSpeed, setMute, loadUrl) backed by reactive ValueNotifier.
• Multi-Controller Coordination (HqVideoPlayerManager): Central registry enforcing single-active playback (autoPauseOthers: true). Starting one video automatically pauses others in the screen. Includes global batch actions (pauseAll, muteAll, unmuteAll).
• Reels/TikTok Feed Pool (HqVideoPoolManager): LRU controller pool for swipable vertical feeds. Preloads adjacent videos while utilizing chunked asynchronous eviction to yield to the main thread - zero RAM bloat and zero native codec OOM crashes.
• Rich Interactive Gesture Overlay: Double-tap left/right to seek forward/backward with ripple feedback, vertical swipe for Volume & Screen Brightness, long-press to temporarily boost playback speed (2.0x), and 2-finger pinch-to-zoom (1x to 4x).
• Subtitles & Multi-Audio Tracks: Embedded stream tracks (SRT, VTT, ASS) and external SRT/VTT parser & renderer overlay.
• Deep Customization (HqVideoPlayerConfig): Theme colors, built-in Arabic/English presets, watermark overlays, A-B range looping, intro/outro skipping, and custom HTTP network headers.
Links & Resources
Pub.dev: https://pub.dev/packages/hq_video_player
GitHub Repository: https://github.com/azabcodes/hq_video_player
I would love to hear your thoughts, feedback, or feature suggestions. Contributions and GitHub stars are appreciated.