跳到正文
yt-dlp

下载 4K 视频 — yt-dlp 命令生成器

为 2160p 视频生成 yt-dlp 命令,同时完整保留章节和元数据。

可选。留空的话命令会以 URL 结尾,由你自己填。

你的命令

yt-dlp -f 'bv*[height<=2160]+ba/b[height<=2160]' --merge-output-format mkv --no-playlist --embed-metadata --embed-chapters -N 4 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
基本

仅音频会提取声音轨并丢弃视频流。

视频与画质

限制高度上限。yt-dlp 仍会挑选该上限及以下最好的一路流。

把分离的视频流和音频流合并进去的文件类型。

高级选项(3)

会取代画质下拉框。适合已经熟悉 format 语法的人。

不重新编码,只重新封装。快且无损。

重新编码视频。慢且有损 —— 只在 remux 不行时才用。

音频

音频要转换成的文件类型。

VBR 的体积与质量之比最好;固定 bitrate 更容易预估大小。

字幕

内嵌会把字幕放进视频里;保存则在旁边写一个独立的 .srt 文件。

用逗号分隔。想要所有可用语言就写 all。

播放列表与频道

当网址同时属于一个视频和一个播放列表时该怎么做。

范围和列表都可以,例如 1-10,15,或者用 -5::2 表示从末尾开始每隔一项取一项。

高级选项(1)

记下已经下过的项,于是重新运行会跳过它们。这就是让一个频道保持同步的办法。

片段与章节
高级选项(2)

像 *00:01:30-00:03:00 这样的时间范围,或者章节名。开头的星号表示这是时间戳。

元数据与封面
高级选项(3)
SponsorBlock

依据 SponsorBlock 数据,把社区标记的片段从文件里直接剪掉。

高级选项(1)

片段保留,但会被标出来,让你自己跳过。

文件与目录

字段名写在 %(...)s 里。斜杠会创建目录。

高级选项(4)

文件写到哪里。配合上面的模板可以生成子目录。

文件名最大长度,按字符计。

筛选
高级选项(5)

YYYYMMDD,或者像 now-1month 这样的相对日期。

YYYYMMDD,或者相对日期。

跳过更小的文件。可以写 5M、500K 之类。

跳过更大的文件。

停下来之前要下载的文件数量。

网络

例如 2M 或 500K。当你需要把余下带宽留给别的事情时很有用。

高级选项(5)

能加快分片流的下载。从 4 开始比较合适。

失败的分片要重试几次。也可以写 infinite。

HTTP、HTTPS 或 SOCKS proxy 的地址。

让请求看起来来自真实浏览器。突然出现 403 时,这是最常见的解法。

登录与 cookies

直接读取你的登录会话。私密、年龄限制或会员专属内容都需要它。

高级选项(1)

从浏览器导出的 Netscape 格式 cookies.txt。

直播
高级选项(2)

反复检查直到预定的直播开始。MIN-MAX 是两次检查之间的秒数。

故障绕行
高级选项(3)

已弃用,应改用 --add-headers。之所以保留,是因为很多旧教程还在用它。

已弃用,应改用 --add-headers。

按站点区分的专用选项,例如 youtube:player_client=web。

输出与调试
高级选项(2)
重置

4K 到底要求什么

在 2160p 下,视频和音频永远是两路独立的流,所以必须有 ffmpeg 来合并。MKV 是更稳的 container:MP4 装不下 4K 用到的某些编码,强行使用会让 yt-dlp 重新编码 —— 慢、有损,而且 HDR 元数据通常就是这样丢掉的。

如果没有 4K,最可能是这个视频从来没有以那个分辨率上传过。在断定命令写错之前,先列出格式看看。做好每小时几个 GB 的准备,如果这是个问题,就用体积上限或时间范围。

container 的选择就是 HDR 的决定。4K HDR 以 VP9.2、AV1 这类 MP4 不一定装得下的编码到达,强行用 MP4 会迫使 yt-dlp 转码:几小时的活、肉眼可见的画质损失、HDR 元数据就此消失。MKV 什么都原样装得下;本预设默认选它正是为此。SDR 播放器放 HDR 文件会发灰——那是播放器的问题,不是文件的问题,而把 HDR 正经转成 SDR 是滤镜的活,不是加个旗标。

带宽是 4K 从理论落地的时刻:2160p 以体面的码率跑一小时要 40–90 GB,并发 fragment 把下载推到连接允许的速度——而这恰恰是触发平台限速的东西。如果运行慢成爬行,把 fragment 数减半、让它跑更久;4K 文件足够大,慢慢跑完仍然胜过重新开始。体积上限选项就是为了在磁盘之前拦下一次失控的运行。

章节和元数据是 4K 收藏真正体现价值的地方:没有章节的两小时电影就是一整个文件,有了它才翻得动。SponsorBlock 在这里也接得上——赞助片段在 4K 内容上和其他内容一样被标记,在一部电影长度的文件里跳过它们省下的时间比任何短片都多。把缩略图作为封面嵌入,否则你的媒体库会为每个 4K 文件显示一块空白。

4K 做不到的事:放大。被向上限制的 1080p 源就停在 1080p——上限是最大值,yt-dlp 会毫无怨言地挑不高于它的最好那路流。如果 -F 显示 1080p 以上什么都没有,那就是上传者给平台的一切。YouTube 上真正的 4K 源通常是 VP9 或 AV1,旧 GPU 靠软件解码——播放器卡顿往往是编码的问题而不是文件的问题,而 MKV 让原始编码原封不动。

常见问题

为什么这个视频没有 4K?
它没有以 4K 上传,或者平台限制了那个版本。在断定命令写错之前,先用 -F 看看到底有什么。
4K 该用哪个 container?
MKV 能容纳任何编码组合。MP4 兼容性更好,但装不下某些 4K 编码,那时 yt-dlp 就得重新编码 —— 慢且有损。
4K 下载有多大?
常常是每小时几个 GB。如果这很重要,就用体积上限或时间范围。
HDR 能保留吗?
能,只要源里有。请保留原始编码 —— 重新编码通常正是破坏 HDR 元数据的原因。