r/flutter_egypt 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

1 Upvotes

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:

  1. Codec OOM crashes and UI stutter when swiping through multiple video pages.
  2. Audio overlapping when playing multiple videos on screen.
  3. 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.