Ruach Studio
A whole song studio around YuE2 on your own GPU: the score first, LoRA training, stems, remaster, your DAW. Open source.
翻譯準備中
一个跨平台的追番、看番、动漫软件,支持多数据源、支持实时视频4k超分辨率、自定义爬虫配置,对接Bangumi服务同步用户收藏数据,对接弹弹Play提供弹幕体验,为您提供流畅的观影体验
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
AnimeFlow 是一款跨平台的看番软件、追番软件与动漫播放器。支持 Android、iOS、Windows、macOS 和 Linux,提供多数据源播放、弹幕、Anime4K 实时视频超分辨率、Bangumi 收藏同步和自定义爬虫配置。 无论是查找新番、管理追番列表,还是播放动漫视频,AnimeFlow 都希望让从“找番”到“看番”的过程更简单。 项目仍在持续开发中,部分功能和数据源可能会发生变化。欢迎通过 Issue 反馈问题或提出建议。 • 下载最新版本 • 提交问题或建议 • 移动端:Android、iOS • 桌面端:Windows、macOS、Linux • 基于 Anime4K:使用 Anime4K 开源算法实现实时视频超分辨率 • 多种模式: • 效率档:使用轻量级模型,性能优先,适合中低端设备 • 质量档:使用高质量模型,画质优先,需要较强的 GPU 性能 • 实时处理:在播放过程中实时提升视频清晰度 [//]: # () [//]: # ( ) 以下步骤适用于在本地从源码编译并运行 AnimeFlow 客户端。 确保目标平台(Android / iOS / Windows 等)显示为可用。檢視完整 README ↗
AnimeFlow 是一款跨平台的看番软件、追番软件与动漫播放器。支持 Android、iOS、Windows、macOS 和 Linux,提供多数据源播放、弹幕、Anime4K 实时视频超分辨率、Bangumi 收藏同步和自定义爬虫配置。
无论是查找新番、管理追番列表,还是播放动漫视频,AnimeFlow 都希望让从“找番”到“看番”的过程更简单。
项目仍在持续开发中,部分功能和数据源可能会发生变化。欢迎通过 Issue 反馈问题或提出建议。
| 功能 | 说明 |
|---|---|
| 跨平台播放 | Android、iOS、Windows、macOS、Linux |
| 番剧管理 | 连接 Bangumi,管理收藏、追番列表与观看信息 |
| 视频播放 | 多数据源、自定义数据源与线路切换 |
| 弹幕 | Bilibili、Gamer、弹弹Play 等弹幕源 |
| 实时超分辨率 | 基于 Anime4K,提供效率档与质量档 |
| 番剧识别 | 使用 trace.moe 通过截图识别番剧 |
以下步骤适用于在本地从源码编译并运行 AnimeFlow 客户端。
| 工具 | 版本要求 |
|---|---|
| Flutter | 3.47.2(见 pubspec.yaml) |
| Dart SDK | >= 3.3.4 |
| Android 构建 | JDK 17、Android SDK |
| iOS 构建 | macOS + Xcode |
| 桌面端 | Windows / macOS / Linux 对应平台工具链 |
安装 Flutter 后执行:
flutter doctor
确保目标平台(Android / iOS / Windows 等)显示为可用。
git clone https://github.com/openAnimeFlow/AnimeFlow.git
cd AnimeFlow
flutter pub get
客户端请求 AnimeFlow 服务端时需要携带签名头,密钥通过编译期变量注入。
方式 A:命令行直接传入(适合临时调试)
flutter run \
--dart-define=ANIME_FLOW_APP_ID=your_app_id \
--dart-define=ANIME_FLOW_SECRET=your_secret
方式 B:使用配置文件
在项目根目录创建 dart_defines.json(勿提交到 Git):
{
"ANIME_FLOW_APP_ID": "your_app_id",
"ANIME_FLOW_SECRET": "your_secret"
}
运行或编译时附加:
flutter run --dart-define-from-file=dart_defines.json
方式 C:IntelliJ IDEA / Android Studio (推荐)
--dart-define-from-file=dart_defines.json
或直接写:
--dart-define=ANIME_FLOW_APP_ID=your_app_id --dart-define=ANIME_FLOW_SECRET=your_secret
修改
--dart-define后需完全重启应用(Hot Restart 不会重新加载编译期变量)。
项目已提交 .g.dart 等生成文件,日常运行通常无需执行。若你修改了 Riverpod、go_router、Hive 等注解代码,需重新生成:
dart run build_runner build --delete-conflicting-outputs
查看可用设备:
flutter devices
在指定平台运行(按需替换 -d 参数):
# Windows
flutter run -d windows --dart-define-from-file=dart_defines.json
# Android(真机或模拟器)
flutter run -d android --dart-define-from-file=dart_defines.json
# macOS
flutter run -d macos --dart-define-from-file=dart_defines.json
# Linux
flutter run -d linux --dart-define-from-file=dart_defines.json
# iOS(需 macOS + Xcode)
flutter run -d ios --dart-define-from-file=dart_defines.json
默认开发环境 API 地址为 http://127.0.0.1:1024(见 lib/http/api_path.dart 中的 AnimeFlowApi.animeFlowApiDev)。
联调步骤:
1024).env 与客户端 dart_defines.json 中的 AppId / Secret 一致Android 模拟器访问本机服务时,若 127.0.0.1 无法连通,需将 API 地址改为 10.0.2.2:1024(Android 模拟器访问宿主机的特殊地址)。
# Android(按架构分包)
flutter build apk --split-per-abi --release --dart-define-from-file=dart_defines.json
# Windows
flutter build windows --release --dart-define-from-file=dart_defines.json
# macOS
flutter build macos --release --dart-define-from-file=dart_defines.json
# Linux
flutter build linux --release --dart-define-from-file=dart_defines.json
# iOS(需 macOS,签名配置见 Apple 开发者文档)
flutter build ios --release --dart-define-from-file=dart_defines.json
Release 包输出目录:
| 平台 | 输出路径 |
|---|---|
| Android | build/app/outputs/flutter-apk/ |
| Windows | build/windows/x64/runner/Release/ |
| macOS | build/macos/Build/Products/Release/ |
| Linux | build/linux/x64/release/bundle/ |
{keyword} 作为搜索关键字占位符)提示:
欢迎提交 Issue 和 Pull Request!
本项目采用私有许可证,仅供学习和研究使用。
特别感谢 ech_http,本项目使用它提供的 ECH 支持改善图片加载体验。
特别感谢 Anime4K 本项目使用 Anime4K 进行实时超分辨率处理。
特别感谢 Bangumi 本项目使用了 Bangumi 开放 API 以提供番剧元数据和用户数据同步。
特别感谢 DandanPlayer 本项目使用了 dandanplayer 开放 API 以提供弹幕体验。
特别感谢 trace.moe 本项目使用了 trace.moe 提供的图片识别番剧功能。
注意:本项目仅供学习交流使用,请遵守相关法律法规,尊重版权。