Extra Commands 在标准下载之上追加自定义参数
适用场景
命令模板(上一页)把整条 yt-dlp 命令写死,灵活性高但复杂度也高。如果你喜欢 YTDLnis 默认的音频 / 视频模式配置(格式、容器、字幕、SponsorBlock 都在卡片里选),但想再加几个 yt-dlp 不常用但偶尔需要的参数——比如加一个自定义的 HTTP Header、或者用某个实验性的后处理器——Extra Commands 就是干这个的。
怎么用
打开下载卡片(音频或视频模式)→ Adjust 区域 →「Add Extra Commands」。
在输入框里直接写你想追加到 yt-dlp 命令末尾的参数。比如:
--recode-video mp4
YTDLnis 会把这个参数追加到它自己自动生成的完整 yt-dlp 命令后面——格式选择、容器转换、字幕嵌入等你在卡片里配置的所有项照常生效,你的 Extra Commands 最后补上。
和命令模板的区别
| Extra Commands | 命令模板 | |
|---|---|---|
| 作用范围 | 在 YTDLnis 自动生成的命令上追加 | 完全接管整条命令 |
| 卡片配置 | 正常生效(格式、容器、字幕等都按卡片来) | 被忽略(你自己写的命令说了算) |
| 复杂度 | 低,只写少量参数 | 高,整条命令都自己写 |
| 适用 | 偶尔加几个参数 | 经常用的整套参数 |
常用的 Extra Commands 示例
# 加自定义 HTTP Header(某些网站防爬时有用)
--add-header "User-Agent: Mozilla/5.0"
# 只下载前 10 分钟(临时试看)
--download-sections "*0:00-0:10:00"
# 跳过已下载过的(虽然 YTDLnis 已有检测,但防一手)
--no-continue
# 强制用 ffmpeg 做流合并
--merge-with ffmpeg
注意事项
- 参数里如果有包含空格的值,记得用引号包起来(Shell 惯例)
- 不要写
-o(输出路径)之类会和 YTDLnis 冲突的参数——路径由你在设置或卡片里选 - Extra Commands 只作用于单个条目。批量时想全部加同一段,用多文件下载卡片的 More → Extra Commands
- 追加的参数可能和 YTDLnis 内部自动加的重复(比如同时加了 SponsorBlock 参数),不会报错但可能产生冗余
和临时实验的搭配
如果你不确定哪个 Extra Command 有用,先用内置终端里手动跑一遍:
yt-dlp -f bestvideo+bestaudio/best --merge-output-format mp4 --recode-video mp4 "视频URL"
确认效果 OK 了再放 Extra Commands 里。