Skip to content

About

Player based fultter and mpv

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

LumaPlayer

LumaPlayer Logo

LumaPlayer 是一款基于 Flutter 与 media_kit 构建的 Windows / macOS 桌面视频播放器,以 mpv 为底层解码引擎,提供流畅的 Fluent Design 界面体验。

Flutter Fluent UI media_kit mpv GNU GPLv3

界面截图

启动页 设置 - 外观 设置 - HDR
启动页 设置 - 外观 设置 - HDR
设置 - 视频 设置 - 字幕 播放中
设置 - 视频 设置 - 字幕 播放中

更多截图见 pics/screenshots。


近期更新

  • 统一渲染路径 — 移除原生直通渲染模式,改为单一路径的 Flutter 复合渲染,修复部分环境下只有音频、没有画面的问题
  • 全屏体验优化 — 控制栏改为全屏浮层,视频区域保持正确居中;控制栏隐藏时不再占用布局空间
  • 性能优化 — 减少播放器页面的无关重建,OSD 统计轮询改为按需启停,关闭播放器时也加入超时保护
  • 解码切换 — HW / SW 状态胶囊支持点击切换,可在软件解码与当前设置的硬件解码模式之间快速切换
  • 全屏外观修复 — 进入全屏时自动去掉 DWM 圆角与边框,退出全屏后恢复窗口特效
  • macOS 支持 — 新增 macOS 14.0+(arm64)支持,可在 Apple Silicon 机型上直接运行或构建

特性

  • 跨平台支持 — 现已支持 Windows 与 macOS,macOS 仅提供 arm64 构建
  • 高性能解码 — 硬件加速(D3D11VA / NVDEC / QSV),支持 HEVC、AV1、VP9 等主流格式
  • HDR 色调映射 — 内置 bt.2390 / reinhard / hable 等映射算法,自动检测 HDR 内容并切换
  • Deband 降带 — 可调 iterations / threshold / range / grain 四参数,消除压缩带状噪声
  • 播放列表 — 多文件拖拽导入,支持自动播放、循环、随机等模式
  • 进度续播 — 自动记录每个文件的播放位置,下次打开时提示继续
  • 字幕支持 — 自动加载外挂字幕,支持字体、大小、颜色等样式调整
  • 窗口特效 — Mica / Mica Alt / Acrylic 背景材质(需 Windows 11)
  • 自定义标题栏 — 原生无边框窗口,与系统主题色无缝融合

系统要求

项目 要求
操作系统 Windows 10 21H1 及以上(推荐 Windows 11) / macOS 14.0 及以上
架构 Windows x64 / macOS arm64(Apple Silicon)
运行库 Windows: Visual C++ Redistributable 2022 / macOS: Xcode 与 Flutter 桌面支持
GPU Windows: 支持 D3D11 Feature Level 11_0(推荐独显以获得 HDR 硬件加速) / macOS: 支持 Metal 的 Apple Silicon GPU

安装

  1. 前往 Releases 下载最新版本的 LumaPlayer-windows-x64.zip
  2. 解压到任意目录,运行 LumaPlayer.exe
  3. 无需安装,无需管理员权限

macOS 用户可直接从源码运行或构建,详见下方“从源码构建”中的 macOS 小节。


使用

打开视频

  • 拖拽:将视频文件拖入窗口
  • 文件选择:点击播放器中央"打开文件"按钮
  • 命令行:LumaPlayer.exe path\to\video.mkv

快捷键

按键 功能
空格 播放 / 暂停
← / → 后退 / 前进 5 秒
↑ / ↓ 音量 +5 / -5
M 静音切换
F / 双击 全屏切换
N / P 下一个 / 上一个文件
滚轮 调整音量

设置

通过左侧导航栏进入"设置"页,可调整:

  • 外观:主题(浅色/深色/跟随系统)、字体、窗口背景材质
  • 播放:默认音量、自动播放
  • 视频:硬件解码、同步模式、Deband 参数
  • HDR:色调映射算法、目标亮度峰值、色域映射
  • 音频:音量上限、首选音频语言
  • 字幕:字体、大小、颜色、自动加载模式

从源码构建

使用脚本

推荐在 PowerShell 中直接使用仓库脚本,开发调试和发布构建都能自动携带 git 信息。

.\scripts\run_with_git_info.ps1
.\scripts\run_with_git_info.ps1 -Release

通过 scripts/run_with_git_info.ps1 启动或构建时,会自动注入 git 提交信息,设置页「关于」区域可以直接查看构建来源。

手动执行

# 前置依赖:Flutter SDK(含 Windows / macOS 桌面支持)、Visual Studio 2022 / Xcode
git clone https://git.bbkingdom.fun:20080/yuchen95/mpv_gui_plus.git
cd mpv_gui_plus

# 安装依赖
flutter pub get

# debug 运行
flutter run -d windows

# release 构建
flutter build windows --release

# macOS 运行
flutter run -d macos

# macOS release 构建
flutter build macos --release

注意:本项目依赖本地路径的 media_kit 分支,请确保 ../media-kit/ 目录存在(参见 pubspec.yaml 中的 dependency_overrides)。

macOS 注意:当前仅支持 macOS 14.0+ 的 Apple Silicon(arm64),release universal / x86_64 构建会被排除。


开源引用

组件 许可证 链接
Flutter BSD 3-Clause flutter.dev
media_kit MIT media-kit/media-kit
fluent_ui BSD 3-Clause bdlukaa/fluent_ui
Riverpod MIT rrousselGit/riverpod
drift MIT simolus3/drift
mpv LGPL-2.1 mpv-player/mpv

许可证

本项目采用 GNU GPL v3.0 许可证。你可以在遵守许可证条款的前提下自由使用、修改与分发本项目。


作者:yuchen95 · 最后更新:2026-04-28

About

Player based fultter and mpv

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages