面向飞牛影视服务的第三方 Flutter 桌面客户端,当前聚焦 Windows、macOS、Linux 三端体验。
本项目为飞牛 OS 爱好者开发的第三方影视客户端,与飞牛影视官方无关。使用前请确保遵守相关服务条款。
.
├─ lib/ Flutter 主应用代码
├─ assets/ 字体、图片、动画资源
├─ updater/ Windows 自更新器(Go)
├─ scripts/release/ 正式发布构建脚本
├─ .github/workflows/ GitHub Actions 发布流程
├─ windows/ Windows Runner / CMake 构建配置
├─ macos/ macOS Runner
└─ linux/ Linux Runner
最终效果以实际发布版本为准
前往 Releases 下载对应平台的安装包或发行产物。
-
安装 Flutter Stable SDK,并确保
flutter --version可用 -
启用桌面平台支持
flutter config --enable-windows-desktop flutter config --enable-macos-desktop flutter config --enable-linux-desktop
-
Windows 开发建议安装 Visual Studio 2022 的“Desktop development with C++”
-
Windows 本地运行与构建还需要 Go 1.23 或以上版本
- 当前
windows/CMakeLists.txt会在构建时同步编译updater.exe - 请确保
go version可在 PATH 中正常执行
- 当前
-
macOS 需要安装 Xcode 与 Command Line Tools
-
Linux 需要准备常见 Flutter 桌面依赖,例如
clang、cmake、ninja-build、pkg-config、libgtk-3-dev
git clone https://github.com/FNOSP/FlyNarwhal.git
cd FlyNarwhal
flutter pub getWindows:
flutter run -d windowsmacOS:
flutter run -d macosLinux:
flutter run -d linux项目中使用了 Riverpod 与 json_serializable。如果你修改了带注解的模型或 Provider,请重新生成代码:
dart run build_runner build --delete-conflicting-outputsWindows:
flutter build windows --releasemacOS:
flutter build macos --releaseLinux:
flutter build linux --release常见产物位置:
- Windows:
build/windows/<arch>/runner/Release/ - macOS:
build/macos/Build/Products/Release/FlyNarwhal.app - Linux:
build/linux/<arch>/release/bundle/
播放器基于 media_kit / libmpv,支持 GPU 加速能力,但最终效果取决于平台、驱动、视频格式以及系统环境。HDR、字幕、音轨切换等体验仍在持续优化,具体请以实际版本表现为准。
支持,当前登录流程同时覆盖 FN ID 与 NAS 登录场景。
目前不支持自签证书直连。如启用了 HTTPS,请使用受系统信任的证书。
除 DolbyVision Profile 5 之外格式的视频原画质下,默认使用直链播放,并支持在部分播放失败场景下回退到 HLS 。
本项目使用或参考以下开源项目:
- Fluent UI - 适用于 Flutter 的 Windows 风格 UI 组件库
- media_kit - Flutter 音视频播放方案
- flutter_riverpod - 状态管理方案
- go_router - Flutter 声明式路由
- Dio - 网络请求与拦截器能力
- fntv-electron - 飞牛影视 PC 版 Electron 封装
- fnos-tv - 基于飞牛影视接口开发的网页端
感谢以下飞牛共建团队成员在内测期间提供了宝贵的技术支持和建议:
感谢 anmoliyang 为此项目 UI 设计做出的贡献


