有没有办法在保留章节元数据的同时下载视频?

Is there a way to download video while keeping their chapters metadata?

我以前用过很多视频下载器:atube catcher、4k 下载器、jDownloader,目前使用的是youtube-dl。 我无法下载视频,例如 this,同时仍保持其在线章节完整,例如第 1 部分是从 00:00 持续到 00:45 的“介绍”等等。 到目前为止,我用 youtube-dl

尝试了这些参数

文件系统

--写注释 --写描述 --write-info-json

缩略图

--写入所有缩略图

视频格式

-f 'bestvideo[height<=720]+bestaudio/best[height<=720]/worst' --merge-output-format mp4

Post-处理中

--添加元数据 --embed-subs --嵌入缩略图


还尝试请求 mkv 视频格式(认为它可能是内置的)并没有帮助。
我知道这些选项并没有真正说明有关部分的任何内容,但我正在尝试获取尽可能多的元数据

您想要的信息在youtube-dl信息JSON中被称为章节。

a recent open pull request for youtube-dl that fixes a problem with this information。在 youtube-dl 的当前版本中,如果您使用 ---write-info-json--dump-json,您将看到章节信息为空 ("chapters": null)。您可以使用fork存储库中的代码来获取您想要的信息。

按照以下步骤操作:

  1. 克隆 this repository:

    git clone https://github.com/gschizas/youtube-dl.git
    
  2. 更改到存储库目录:

    cd youtube-dl/
    
  3. 检查拉取请求分支:

    git checkout bugfix/youtube/chapters-fix-extractor
    
  4. 运行 youtube-dl 来自当前位置:

    python -m youtube_dl --write-info-json https://youtu.be/LnO42jxJaC4
    

您将在信息JSON中看到这样的信息:

"chapters": [
    {
        "start_time": 0.0,
        "end_time": 46.0,
        "title": "Intro"
    },
    {
        "start_time": 46.0,
        "end_time": 72.0,
        "title": "QOTD"
    },
    ...
]

希望 youtube-dl 存储库能够接受修复并包含在未来的版本中,因此无需克隆任何存储库。