搜索插件、代码仓与 APP 分类

GitHub 代码仓SunnatilloShavkatov/better_player_plus

better_player_plus

适用于 Flutter 的更好视频播放器,具有多种配置选项。解决典型使用场景!

better_player_plus 项目封面
星标
72
复刻
159
最近推送(UTC)
2026年9月4日
项目状态
未归档

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

Better Player Plus

Need anything Flutter related? Reach out on LinkedIn

Pub License Platform

Advanced video player for Flutter, based on video_player and inspired by Chewie and Better Player. It solves many common use cases out of the box and is easy to integrate.

Features
  • ✔️ Fixed common playback bugs
  • ✔️ Advanced configuration options
  • ✔️ Refactored, customizable player controls (Material & Cupertino)
  • ✔️ Playlists
  • ✔️ ListView/feeds autoplay support
  • ✔️ Subtitles: SRT, WebVTT (HTML tags), HLS subtitles, multiple tracks
  • ✔️ HTTP headers support
  • ✔️ BoxFit for video
  • ✔️ Playback speed control
  • ✔️ HLS (tracks, segmented subtitles, audio tracks)
  • ✔️ DASH (tracks, subtitles, audio tracks)
  • ✔️ Alternate resolutions
  • ✔️ Caching
  • ✔️ Notifications
  • ✔️ Picture-in-Picture
  • ✔️ DRM (token, Widevine, FairPlay via EZDRM)
Installation

Add the dependency in your pubspec.yaml:

dependencies:
  better_player_plus: ^1.3.2

Import the package:

import 'package:better_player_plus/better_player_plus.dart';
Quick start

Minimal example showing a network source:


final dataSource = BetterPlayerDataSource(
  BetterPlayerDataSourceType.network,
  'https://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4',
);

final controller = BetterPlayerController(
  const BetterPlayerConfiguration(),
  betterPlayerDataSource: dataSource,
);

// In your widget tree
BetterPlayer
(
controller
:
controller
);
Documentation
Important information

This package is actively evolving. Breaking changes may appear between versions. Contributions are welcome — please open issues or pull requests.

License

Apache 2.0 — see LICENSE.

Recent Updates (v1.2.0)
  • SDK Update: Dart SDK >=3.11.0, Flutter SDK >=3.41.0, Android Media3 1.10.0
  • iOS Fixes: Preserved playback speed across seek/pause/resume; fixed AVPlayer aspect ratio issues; added wakelock (disable auto-sleep) support
  • Audio: Fixed audio track override not being cleared before applying a new one; improved HLS default audio source selection
  • Controls: Fixed controlsVisibilityStream feedback loop and auto-hide emit behaviour
  • Code Quality: Zero dart analyze issues — all errors, warnings and info resolved
Credits

This work builds on the great foundations of Chewie and the original Better Player. Thanks to all contributors of those projects.

Special Thanks: This project benefited greatly from Cursor AI assistance during the iOS Objective-C to Swift migration process.

Sunnatillo Shavkatov GitHub avatar
GitHub 作者

Sunnatillo Shavkatov ↗

BeelabTashkent City
语言DartKotlinSwiftShellRubyObjective-C

使用的依赖

依赖清单 8 项

如何选择适合项目的代码仓?

先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。

  1. 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
  2. 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
  3. 使用前在 GitHub 核对 README、许可证与 Issues。

来源与维护

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗