NOVA:开源 Android 视频播放器
基于 Archos Video Player 社区版分支开发的 Android 开源视频播放器,支持本地媒体库管理与字幕。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v6.6.3
- 平台
- Android
详细介绍
项目简介
NOVA(opeN sOurce Video plAyer)是一款面向 Android 的开源视频播放器,由 Archos Video Player 社区版(https://github.com/archos-sa/aos-AVP)分支而来,用于支持新的功能。
本仓库是 NOVA 的入口仓库(manifest 仓库),作用是提供清单文件,以便拉取构建所需的全部源码仓库并初始化构建环境。更具体的源码分布在其他仓库中:
- Video:NOVA 的视频 UI 代码
- MediaLib:媒体库管理代码
- FileCoreLibrary:文件管理代码
- avos:基于 ffmpeg 的 C 多媒体引擎
完整仓库列表见清单文件 https://github.com/nova-video-player/aos-AVP/default.xml 。
主要功能
- Android 平台视频播放,源自 Archos Video Player 社区版的播放能力
- 媒体库管理(MediaLib)与文件管理(FileCoreLibrary)
- 基于 ffmpeg 的 C 多媒体引擎 avos
- 支持字幕(含外部 SRT/VTT、SMI 等文本字幕)及字幕设置
- 通过外部服务实现刮削(Scraping)与同步记录(Scrobbling),依赖 TMDb 与 Trakt
- 多语言界面,翻译通过 Crowdin 平台协作
安装与使用
获取安装包
编译好的应用可通过以下渠道安装:
README 中还推荐通过 obtainium 获取最新的 NOVA apk。
从源码构建
先获取 repo 工具,然后执行:
mkdir aos; cd aos
repo init -u https://github.com/nova-video-player/aos-AVP -b nova
repo sync -j4
repo forall -c 'git checkout -t $REPO_REMOTE/$REPO_RREV'
make
如果不在已正确安装 Android SDK/NDK 的 Linux 环境下,也可以在 Video 目录中用 Gradle 构建:
cd Video
./gradlew -Puniversal assembleNoamazonRelease
构建会使用 dav1d、ffmpeg 等预编译二进制以加快速度。当这些依赖版本升级需要完整重建时,手动执行:
rm -rf native/torrentd/libs
cd native/dav1d-android-builder; git clean -fdx; rm -rf built-*
cd native/ffmpeg-android-builder; git clean -fdx; rm -rf dist-*
构建所需的依赖包:
sudo curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/local/bin/repo
sudo chmod a+x /usr/local/bin/repo
sudo apt install build-essential python3 python3-pip python3-setuptools ninja-build maven file wget curl unzip git pkg-config meson nasm openjdk-17-jdk-headless openjdk-8-jdk-headless
也可以使用仓库提供的 docker 镜像构建:
cd nova/AVP/docker
docker build -t nova .
docker run --rm -ti --entrypoint=/bin/bash nova
make
如需重新生成 torrentd、ffmpeg、dav1d 库,执行 make clean_prebuilt。
注意事项
- 使用前建议先阅读应用的 FAQ。
- 刮削与同步记录功能依赖 TMDb 和 Trakt 等外部服务。启用前需注册这些服务并申请 API,然后将密钥填入
MediaLib/src/community/res/values/donottranslate.xml,替换其中的示例值:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<string name="tmdb_api_key">0123456789abcdef0123456789abcdef</string>
<string name="trakt_api_key">0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef</string>
<string name="trakt_api_secret">0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef</string>
</resources>
- TMDb API 申请入口:https://www.themoviedb.org/settings/api ;Trakt API 需先注册并在 https://trakt.tv/oauth/applications 新建应用,Redirect URI 填 http://localhost 并授予全部权限。
- 问题反馈与交流可前往 NovaVideoPlayer reddit 社区,或在 liberachat 的
#novavideoplayer频道与开发者交流。
本作品整理自 GitHub 开源项目 nova-video-player/aos-AVP,原作者 @nova-video-player,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v6.6.3当前版本
v6.6.3 release
- v6.6.2
修复重新打开、暂停或拖动字幕后外部 SRT/VTT 字幕消失的问题;修复 SMI 字幕丢弃无空行后续字幕的问题;选择“无字幕”后保持关闭;修复竖屏下文本字幕遮挡进度条;字幕缓存不可用时回退到内部缓存;修复无旧版存储写权限设备的 MediaStore 访问错误;移除多余的跳过确认提示;改进字幕设置标签以匹配现有翻译。
评论