ytdl-sub 10大核心功能详解:从基础配置到高级定制
ytdl-sub 是一个基于 yt-dlp 的轻量级自动化下载与元数据生成工具,专为媒体服务器如 Plex、Jellyfin、Emby 和 Kodi 设计。它通过 YAML 配置文件实现自动化下载和智能元数据生成,让 YouTube 频道、音乐视频、播客等网络媒体内容能够完美融入你的个人媒体库。🚀
1. 自动化下载与媒体库集成
ytdl-sub 的核心功能是将在线媒体内容自动下载并转换为媒体服务器可识别的格式。它支持将 YouTube 频道转换为电视剧集、音乐视频转换为音乐库、SoundCloud 专辑转换为音乐专辑等。通过智能的元数据生成,下载的内容可以直接导入 Plex、Jellyfin 等媒体服务器,无需额外插件或刮削器。
2. 灵活的预设配置系统
ytdl-sub 提供了丰富的预置预设(prebuilt presets),用户无需编写复杂的配置文件即可开始使用。这些预设位于 src/ytdl_sub/prebuilt_presets/ 目录下,涵盖了电视剧、音乐、音乐视频等多种媒体类型。
主要预设分类包括:
- 电视剧预设:
tv_show.yaml、tv_show_by_date.yaml、tv_show_collection.yaml - 音乐预设:
albums_from_chapters.yaml、singles.yaml、soundcloud.yaml - 音乐视频预设:
music_video_base.yaml、music_videos.yaml - 辅助预设:
filter_duration.yaml、media_quality.yaml、throttle_protection.yaml
3. 智能的订阅管理机制
通过 subscriptions.yaml 文件,用户可以轻松管理多个订阅源。每个订阅可以应用不同的预设,实现个性化的下载策略。
# 示例订阅配置
Plex TV Show by Date:
= Documentaries:
"NOVA PBS": "https://www.youtube.com/@novapbs"
"National Geographic": "https://www.youtube.com/@NatGeo"
= Kids | = TV-Y:
"Jake Trains": "https://www.youtube.com/@JakeTrains"
4. 强大的元数据生成能力
ytdl-sub 自动为下载的内容生成完整的元数据,包括:
- NFO 文件:包含视频标题、描述、发布日期等信息
- 缩略图和海报:自动下载并生成合适的封面图片
- 剧集信息:为电视剧集生成标准的 SXXEXX 命名格式
- 音乐标签:为音频文件生成 ID3 标签(艺术家、专辑、流派等)
5. 插件化架构设计
ytdl-sub 采用插件化设计,所有功能模块都通过插件实现。核心插件位于 src/ytdl_sub/plugins/ 目录,包括:
- 音频提取插件:
audio_extract.py - 章节处理插件:
chapters.py - 字幕下载插件:
subtitles.py - NFO 标签插件:
nfo_tags.py - 音乐标签插件:
music_tags.py - 视频标签插件:
video_tags.py
6. 脚本化变量系统
ytdl-sub 内置了强大的脚本化变量系统,允许用户在配置中使用动态变量和条件逻辑。脚本系统位于 src/ytdl_sub/script/ 目录,支持:
- 字符串函数:字符串操作和格式化
- 日期函数:日期计算和格式化
- 数组函数:数组操作和遍历
- 条件函数:条件判断和分支逻辑
- 正则函数:正则表达式匹配和替换
7. 多平台部署支持
ytdl-sub 支持多种部署方式,满足不同用户的需求:
- Docker 部署:最简单快捷的部署方式,支持 Web-GUI 界面
- 本地安装:通过 pip 直接安装到系统
- Windows 原生支持:提供 Windows 可执行文件
- Unraid 集成:专门为 Unraid 用户优化的安装方式
8. 高级过滤和限制功能
通过辅助预设,ytdl-sub 提供了丰富的过滤和限制功能:
- 时间范围过滤:只下载指定时间范围内的内容
- 关键词过滤:根据关键词包含或排除特定内容
- 时长过滤:过滤过短或过长的视频
- 数量限制:限制每次下载的最大文件数量
- 质量选择:选择特定的视频质量和格式
9. 批量处理和错误恢复
ytdl-sub 具备完善的批量处理能力和错误恢复机制:
- 断点续传:支持下载中断后的恢复
- 增量更新:只下载新增的内容,避免重复下载
- 错误重试:网络错误自动重试机制
- 事务日志:详细的下载日志和错误报告
10. 社区支持和持续更新
ytdl-sub 拥有活跃的社区支持和持续的开发更新:
快速开始指南
要开始使用 ytdl-sub,只需几个简单步骤:
- 安装 ytdl-sub:选择适合你系统的安装方式
- 创建配置文件:复制示例配置文件并修改
- 设置订阅:在
subscriptions.yaml中添加你喜欢的频道 - 运行下载:执行
ytdl-sub sub subscriptions.yaml - 导入媒体库:将生成的文件夹添加到你的媒体服务器
ytdl-sub 的强大之处在于它的灵活性和易用性。无论你是想将 YouTube 频道转换为电视剧集,还是将音乐视频整理成音乐库,ytdl-sub 都能提供完美的解决方案。通过合理的预设组合和配置,你可以打造出完全符合个人需求的自动化媒体下载系统。🎬
记住,ytdl-sub 的核心优势在于它能够将复杂的媒体处理流程简化为简单的 YAML 配置,让每个人都能轻松管理自己的数字媒体收藏。开始你的自动化媒体下载之旅吧!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考





