Python 和 JS 运行时 Packages 按需安装与管理
什么是 Packages
YTDLnis 采用组件化架构——核心下载功能之外的运行时依赖(Python 解释器、FFmpeg、Node.js、aria2 等)打包成独立的 Packages,可以在不升级整个应用的情况下单独更新。
在「更多 → 设置 → Updating → Packages」页面能看到所有可用的 Package 及其安装状态。
默认预装的
| 组件 | 说明 |
|---|---|
| Python 3 | yt-dlp 运行时,必装 |
| FFmpeg | 音视频处理(合并、裁剪、重编码、字幕烧录),强烈推荐 |
按需安装的
| 组件 | 什么时候需要 |
|---|---|
| Node.js | 某些站点(如 YouTube 的某些 Extractor)需要 JS 运行时处理动态页面 |
| Deno | 另一种 JS 引擎,部分 extractor 优先支持 |
| QuickJS | 轻量 JS 引擎,资源占用最低 |
| aria2 | 多线程下载器,想加速可以配 yt-dlp 的 --external-downloader aria2c |
一般用户只需 Python + FFmpeg,遇到特定站点报「需要 JS 运行时」再装 Node.js。JS 相关的组件装一个就行,不用三个都装。
怎么装
进入「更多 → 设置 → Updating → Packages」,每个 Package 旁边有安装按钮。YTDLnis 从官方仓库 ytdlnis-packages 下载,不经过 Google Play。下载完自动安装,重启终端会话就能用(运行中的终端可能需要重新开一个来加载新组件)。
版本更新
Packages 也会有版本更新——在 Updating 页面如果 Package 旁边显示「Update available」,点一下就能升级。升级的时机:
- 某些 Extractor 突然不工作了 → 可能是 JS 组件太旧
- FFmpeg 处理格式报错 → 升级 FFmpeg
- 终端里
yt-dlp -U报 Python 版本不兼容 → 升级 Python
在终端里确认版本
yt-dlp --version # yt-dlp 版本
python --version # Python 版本
ffmpeg -version # FFmpeg 版本
node --version # Node.js 版本(装了才有)
aria2c --version # aria2 版本
在内置终端里跑这些命令可以确认每个组件当前的实际版本号,和 Packages 页面显示的做对比,排查问题时很有用。