Skip to content

NipaPlay-Reload 是一个现代化的跨平台视频播放器,支持 Windows、macOS、Linux、Android 和 iOS。集成了弹幕显示、多格式字幕支持、多音频轨道切换,新番查看等功能,采用 Flutter 开发,提供统一的用户体验。

License

Notifications You must be signed in to change notification settings

MCDFsteve/NipaPlay-Reload

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NipaPlay-Reload

访问统计
QQ群 追番状态 弹幕密度 播放器性能 主题切换 字幕支持 音频支持
Windows macOS Linux Android iOS
Star History Chart

NipaPlay使用Flutter的再次重写,一个现代化的视频播放器应用。支持 Windows、macOS、Linux、Android 和 iOS 五大操作系统,为用户提供跨平台的统一体验。

下载

  • Windows(x86 64)/Linux(amd64)/macOS(Intel&Apple Silicon)/Android(arm32&arm64&x86 64)/IOS(arm64)
  • Arch Linux
    paru -S nipaplay-reload-bin
    

应用截图

主界面

主界面 主界面-手机

新番更新界面

新番更新界面 新番更新界面-手机

新番详情界面

新番详情界面 新番详情界面-手机

播放界面

播放界面 播放界面-手机

播放界面UI展示

播放界面UI展示 播放界面UI展示-手机

媒体库界面

媒体库界面 媒体库界面-手机

剧集列表界面

剧集列表界面 剧集列表界面-手机

库管理界面

库管理界面 库管理界面-手机

已实现功能

  • 视频播放

    • 支持本地视频文件播放
    • 支持Emby,Jellyfin视频播放
    • 支持弹幕显示(集成弹弹play)
      • 滚动弹幕、顶部弹幕、底部弹幕
      • 弹幕记忆运动轨迹
      • 时间轴跳转时弹幕位置同步
      • 弹幕轨道管理系统
      • 合并弹幕显示
      • 开关弹幕覆盖
    • 字幕支持
      • 支持 ASS、SRT 格式字幕
      • 支持内嵌字幕和外挂字幕
      • 支持多字幕轨道切换
      • 支持字幕样式自定义
    • 音频支持
      • 支持多音频轨道切换
    • 视频信息自动匹配
    • 播放进度记忆
  • 番剧管理

    • 新番时间表展示
    • 按星期分类显示
    • 番剧详情查看
    • 图片缓存管理
    • 历史记录同步
  • 设置中心

    • 毛玻璃设计风格,提供现代感界面
    • 主题模式切换(亮色/暗色)
    • 背景图片自定义更换
    • 快捷键自定义
    • 账户设置
    • 关于页面

开发进度

持续开发中,欢迎关注 Releases 获取最新版本

待加入功能

  • 功能扩展
    • Bangumi同步观看记录
    • 评论区功能
    • 云媒体库挂载(WebDAV、FTP、SMB)
    • 视频截图
    • 视频导出单独片段为gif
    • 倍速功能

使用的第三方库

技术栈

🎯 核心框架

  • Flutter - 跨平台UI框架
  • Dart - 编程语言

🎬 视频播放引擎

  • FVP (Flutter Video Player) - 基于libmdk的高性能视频播放器
  • Media Kit - 跨平台媒体播放框架
  • Video Player - Flutter官方视频播放器
  • libmpv - 底层媒体播放库

🗄️ 数据存储

  • SQLite - 本地数据库存储
  • SharedPreferences - 轻量级键值存储
  • 文件系统 - 本地文件管理

🌐 网络与API

  • HTTP - 网络请求处理
  • 弹弹play API - 弹幕数据源
  • Bangumi API - 番剧信息源
  • Emby/Jellyfin API - 媒体服务器集成

🎨 UI/UX技术

  • Material Design - 设计语言
  • Glassmorphism - 毛玻璃视觉效果
  • Provider - 状态管理
  • 自适应布局 - 响应式设计

🔧 系统集成

  • Window Manager - 桌面窗口管理
  • Permission Handler - 权限管理
  • Wakelock - 屏幕常亮控制
  • Screen Brightness - 亮度控制

📱 平台支持

  • Windows - 桌面应用
  • macOS - 桌面应用
  • Linux - 桌面应用
  • Android - 移动应用
  • iOS - 移动应用

关于看板娘

Linux版本libmpv.so.1兼容性修复

本项目已经加强了Linux版本的构建和打包流程,确保libmpv.so.1的可用性:

自动修复机制

  1. 构建时修复:GitHub Actions会自动确保所有Linux包(.deb、AppImage、.tar.gz、.rpm)都包含libmpv.so.1
  2. 运行时修复:tar.gz包中的run.sh脚本包含智能检测,如果发现缺少libmpv.so.1会自动创建

多层保障策略

构建系统采用以下策略确保libmpv.so.1的存在:

  1. 策略1:如果找到libmpv.so.2,创建符号链接libmpv.so.1 -> libmpv.so.2
  2. 策略2:搜索具体版本号的libmpv文件(如libmpv.so.2.5.0),创建对应链接
  3. 策略3:查找任何libmpv.*文件并创建适当的符号链接
  4. 策略4:从系统复制libmpv库并重命名为libmpv.so.1

使用tar.gz包

如果你下载的是tar.gz包,只需运行:

./run.sh

该脚本会自动:

  • 设置正确的库路径
  • 检查并修复libmpv.so.1缺失问题
  • 启动应用程序

手动修复(如果需要)

如果遇到libmpv.so.1相关错误,可以手动创建符号链接:

cd /path/to/nipaplay/lib
# 查找现有的libmpv文件
ls -la libmpv*
# 创建符号链接(以libmpv.so.2为例)
ln -sf libmpv.so.2 libmpv.so.1

About

NipaPlay-Reload 是一个现代化的跨平台视频播放器,支持 Windows、macOS、Linux、Android 和 iOS。集成了弹幕显示、多格式字幕支持、多音频轨道切换,新番查看等功能,采用 Flutter 开发,提供统一的用户体验。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5