V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
TerraNova
V2EX  ›  软件

yt-dlp 下载最高画质问题

  •  
  •   TerraNova · 2022-11-04 14:55:50 +08:00 · 1798 次点击
    这是一个创建于 783 天前的主题,其中的信息可能已经有所发展或是发生改变。

    YOUTUBE 上只有 1280×720 有声音, 600 webm audio only 2 │ 940.06KiB 36k https │ audio only opus 36k 48k ultralow, webm_dash 139 m4a audio only 2 │ 1.24MiB 49k https │ audio only mp4a.40.5 49k 22k low, m4a_dash 249 webm audio only 2 │ 1.35MiB 53k https │ audio only opus 53k 48k low, webm_dash 250 webm audio only 2 │ 1.78MiB 70k https │ audio only opus 70k 48k low, webm_dash 140 m4a audio only 2 │ 3.28MiB 129k https │ audio only mp4a.40.2 129k 44k medium, m4a_dash 251 webm audio only 2 │ 3.46MiB 137k https │ audio only opus 137k 48k medium, webm_dash 17 3gp 176x144 8 1 │ 1.88MiB 74k https │ mp4v.20.3 74k mp4a.40.2 0k 22k 144p 597 mp4 256x144 15 │ 873.25KiB 34k https │ avc1.4d400b 34k video only 144p, mp4_dash 598 webm 256x144 15 │ 664.40KiB 26k https │ vp9 26k video only 144p, webm_dash 394 mp4 256x144 30 │ 1.80MiB 71k https │ av01.0.00M.08 71k video only 144p, mp4_dash 160 mp4 256x144 30 │ 1.79MiB 71k https │ avc1.4d400c 71k video only 144p, mp4_dash 278 webm 256x144 30 │ 2.38MiB 94k https │ vp9 94k video only 144p, webm_dash 395 mp4 426x240 30 │ 3.53MiB 139k https │ av01.0.00M.08 139k video only 240p, mp4_dash 133 mp4 426x240 30 │ 3.08MiB 122k https │ avc1.4d4015 122k video only 240p, mp4_dash 242 webm 426x240 30 │ 4.40MiB 174k https │ vp9 174k video only 240p, webm_dash 396 mp4 640x360 30 │ 7.31MiB 289k https │ av01.0.01M.08 289k video only 360p, mp4_dash 134 mp4 640x360 30 │ 5.97MiB 236k https │ avc1.4d401e 236k video only 360p, mp4_dash 18 mp4 640x360 30 2 │ ~ 9.44MiB 365k https │ avc1.42001E 365k mp4a.40.2 0k 44k 360p 243 webm 640x360 30 │ 8.17MiB 323k https │ vp9 323k video only 360p, webm_dash 397 mp4 854x480 30 │ 13.30MiB 525k https │ av01.0.04M.08 525k video only 480p, mp4_dash 135 mp4 854x480 30 │ 9.33MiB 369k https │ avc1.4d401f 369k video only 480p, mp4_dash 244 webm 854x480 30 │ 12.98MiB 513k https │ vp9 513k video only 480p, webm_dash 22 mp4 1280x720 30 2 │ ~ 21.34MiB 825k https │ avc1.64001F 825k mp4a.40.2 0k 44k 720p 398 mp4 1280x720 30 │ 26.89MiB 1062k https │ av01.0.05M.08 1062k video only 720p, mp4_dash 136 mp4 1280x720 30 │ 17.61MiB 696k https │ avc1.4d401f 696k video only 720p, mp4_dash 247 webm 1280x720 30 │ 23.80MiB 940k https │ vp9 940k video only 720p, webm_dash 399 mp4 1920x1080 30 │ 48.61MiB 1921k https │ av01.0.08M.08 1921k video only 1080p, mp4_dash 137 mp4 1920x1080 30 │ 70.30MiB 2777k https │ avc1.640028 2777k video only 1080p, mp4_dash 248 webm 1920x1080 30 │ 61.00MiB 2410k https │ vp9 2410k video only 1080p, webm_dash 1920×1080 没有音轨,那不是要单独下载,再来合并

    5 条回复    2023-08-08 17:45:25 +08:00
    user100saysth
        1
    user100saysth  
       2022-11-04 15:35:30 +08:00
    翻一下文档。

    可以下载 bestvideo+bestaudio 并自动合并。
    TerraNova
        2
    TerraNova  
    OP
       2022-11-04 15:48:02 +08:00
    用.\yt-dlp.exe -f "bv*+ba/b" 可以下载最高画质和音质的 2 个.webm 格式文件,不能自动合并生成呀?
    owtotwo
        3
    owtotwo  
       2023-07-31 18:25:13 +08:00
    yt-dlp 默认参数是 --format "bestvideo*+bestaudio/best"
    (另外有默认的 Sorting Formats 参数 则确定“谁画质音质更好” 这个 bestxx 就是按此默认排序挑选 当然你可以改)

    斜杆后的"best" 指有音轨的视频如 编号 22(720p mp4a.40.2) 就直接使用".f22.mp4"作为最终文件".mp4"而没有合并步骤(如无额外嵌入需求)

    但一般先匹配斜杠前 而斜杠前半段就是“最佳视频轨道”和“最佳纯音频轨道”

    如油管 4k 视频:
    一般最佳视频轨道是 编号 313(VP9 的 2160p 纯视频 封装为.f313.webm)
    一般最佳纯音频轨道是 编号 251(Opus 的纯音频 封装为.f251.webm)
    然后 yt-dlp 默认会自动 Merge 两者 封装格式依然是.webm (Ref: https://www.webmproject.org/about/)
    所以最终的".webm"文件就是包含上述两者的你想下载的有声音的视频了

    如果你想封装为其他格式 可以考虑设置如下参数:
    --merge-output-format mp4/mkv (如上述例子有 vp9 结果就会自动合并为".mkv"文件)

    如果最终只有".f313.webm"和".f251.webm"文件 且没合并
    那可能是参数设置问题(可用--verbose 看 log 判断)
    或者是 ffmpeg 等合并工具出了问题

    (*没仔细校验每一句话 但大致应该是没问题的 以上)
    owtotwo
        4
    owtotwo  
       2023-07-31 18:44:34 +08:00
    补充:
    曾经 vp9 和 opus 主要是封装到.webm 及.mkv 里 后面似乎两者都补上了支持.mp4 容器

    但添加"--merge-output-format mp4/mkv"参数时 yt-dlp 似乎依然为 vp9 和 opus 保持优先 merge 为".mkv"
    而"--merge-output-format mp4"则可以强制 merge 为".mp4" (ffmpeg-v6.0 其他版本未测试)
    zhufeilong
        5
    zhufeilong  
       2023-08-08 17:45:25 +08:00
    @owtotwo #3 感谢,码住了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5457 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 07:51 · PVG 15:51 · LAX 23:51 · JFK 02:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.