[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-9478":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":22,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":37,"discoverSource":38},9478,"betterplayer","jhomlala\u002Fbetterplayer","jhomlala","Better video player for Flutter, with multiple configuration options. Solving typical use cases!","",null,"Dart",1018,1381,19,329,0,2,57.62,"Apache License 2.0",false,"master",true,[24,25,26,27,28,29,30,31,32,33],"android","dart","dart-library","dartlang","flutter","flutter-package","flutter-plugin","hacktoberfest","ios","player","2026-06-12 04:00:44","\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002Flogo.png\">\n\u003C\u002Fp>\n\n# Better Player\n[![pub package](https:\u002F\u002Fimg.shields.io\u002Fpub\u002Fv\u002Fbetter_player.svg)](https:\u002F\u002Fpub.dartlang.org\u002Fpackages\u002Fbetter_player)\n[![pub package](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fjhomlala\u002Fbetterplayer.svg?style=flat)](https:\u002F\u002Fgithub.com\u002Fjhomlala\u002Fbetterplayer)\n[![pub package](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatform-flutter-blue.svg)](https:\u002F\u002Fgithub.com\u002Fjhomlala\u002Fbetterplayer)\n\nAdvanced video player. It solves many typical use cases and it's easy to run.\n\n\u003Ctable>\n   \u003Ctr>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F1.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F2.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F3.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F4.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F5.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F6.png\">\n      \u003C\u002Ftd>\n   \u003C\u002Ftr>\n   \u003Ctr>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F7.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F8.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F9.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F10.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F11.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F12.png\">\n      \u003C\u002Ftd>\n   \u003C\u002Ftr>\n   \u003Ctr>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F13.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F14.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F15.png\">\n      \u003C\u002Ftd>\n      \u003Ctd>\n         \u003Cimg width=\"250px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fjhomlala\u002Fbetterplayer\u002Fmaster\u002Fmedia\u002F16.png\">\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\t\n\u003C\u002Ftable>\n\n## Introduction\nThis plugin is based on [Chewie](https:\u002F\u002Fgithub.com\u002Fbrianegan\u002Fchewie). Chewie is awesome plugin and works well in many cases. Better Player is a continuation of ideas introduced in Chewie. Better player fix common bugs, adds more configuration options and solves typical use cases. \n\n**Features:**  \n✔️ Fixed common bugs  \n✔️ Added advanced configuration options  \n✔️ Refactored player controls  \n✔️ Playlist support  \n✔️ Video in ListView support  \n✔️ Subtitles support: (formats: SRT, WEBVTT with HTML tags support; subtitles from HLS; multiple subtitles for video)  \n✔️ HTTP Headers support  \n✔️ BoxFit of video support  \n✔️ Playback speed support  \n✔️ HLS support (track, subtitles (also segmented), audio track selection)  \n✔️ DASH support (track, subtitles, audio track selection)     \n✔️ Alternative resolution support  \n✔️ Cache support  \n✔️ Notifications support  \n✔️ Picture in Picture support     \n✔️ DRM support (token, Widevine, FairPlay EZDRM).    \n✔️ ... and much more!  \n\n\n## Documentation\n* [Official documentation](https:\u002F\u002Fjhomlala.github.io\u002Fbetterplayer\u002F)\n* [Example application](https:\u002F\u002Fgithub.com\u002Fjhomlala\u002Fbetterplayer\u002Ftree\u002Fmaster\u002Fexample)\n* [API reference](https:\u002F\u002Fpub.dev\u002Fdocumentation\u002Fbetter_player\u002Flatest\u002Fbetter_player\u002Fbetter_player-library.html)\n\n\n## Important information\nThis plugin development is in progress. You may encounter breaking changes each version. This plugin is developed part-time for free. If you need\nsome feature which is supported by other players available in pub dev, then feel free to create PR. All valuable contributions are welcome!\n\n\n","Better Player 是一个为 Flutter 应用设计的高级视频播放器，提供了多种配置选项以解决常见的使用场景。它基于 Chewie 插件，并在此基础上进行了扩展和优化，支持包括自定义控制条、全屏切换、字幕显示等在内的丰富功能，同时保持了良好的易用性和跨平台兼容性（Android 和 iOS）。该播放器非常适合需要在 Flutter 项目中集成强大且灵活视频播放功能的应用开发场景，如在线教育、媒体娱乐应用等。","2026-06-11 03:23:03","top_language"]