gpt4 book ai didi

youtube-dl - 如何使用 youtube-dl 将字幕刻录/硬编码到下载的 youtube 视频

转载 作者:行者123 更新时间:2023-12-04 15:37:27 26 4
gpt4 key购买 nike

此命令下载视频并将自动生成的 youtube 字幕嵌入到文件中

youtube-dl.exe -ci -f "bestvideo[ext=mp4]"+"bestaudio[ext=m4a]" --write-auto-sub  --embed-subs --merge-output-format mp4 https://www.youtube.com/watch?v=k4rCdHsdiss

然而,字幕只是嵌入的。我希望它被烧毁/硬编码,以便它可以在运行机等非嵌入式支持平台上播放

我正在使用 Windows 10

最佳答案

youtube-dl 无法自行刻录字幕。您需要为此使用 FFmpeg 或 avconv 等后处理器。 youtube-dl 在内部将它们用于某些任务。如您成功使用 bestvideo+bestaudio论点,您已经在系统中安装了其中之一。 avconv 是 FFmpeg 的一个分支,所以他们接受大部分相同的参数。我将在这里展示 FFmpeg 案例。

youtube-dl 具有向后处理器添加参数的功能,但我不知道如何使用它来解决此任务。

另一种可能性是使用 --exec旗帜。遗憾的是,我现在没有 Windows 机器,所以我只写了 Linux 变体。

youtube-dl -f "[height=360][ext=mp4]+bestaudio[ext=m4a]" --write-sub --write-autosub --embed-subs --exec "mkdir temp && ffmpeg -i {} -vf subtitles={}:force_style='FontName=Arial' -acodec copy temp/{} && mv -f temp/{} {} && rm -r temp" --restrict-filenames AO4In7d6X-c

这是一个单行命令,但它有几个缺陷:
  • 您必须使用 --restrict-filenames使其工作。没有更多漂亮的文件名。
  • 我看不出有不止一种字幕样式选项,即。 e.字体名称、字体颜色和字体大小。
  • 很麻烦。

  • 所以我最好的猜测是在使用 youtube-dl 下载视频后手动或使用批处理脚本使用 FFmpeg。没有在 Windows 上测试过,但它应该可以很好地工作。
    ffmpeg.exe -i "input.mp4" -vf subtitles="filename='input.mp4':force_style='FontSize=20,FontName=Arial'" -c:v libx264 -x264-params crf=22 -preset fast -profile:v high "output.mp4"
  • input.mp4必须是带有嵌入字幕的文件。
  • FFmpeg 必须在 libass 的支持下编译.类型 ffmpeg.exe没有参数并寻找 --enable-libass . libx264也推荐。
  • 要调整编码速度,您可以使用不同的预设。允许的值为超快、超快、非常快、更快、快速、中、慢、慢、非常慢、安慰剂。更快的预设意味着更大的文件大小。
  • 要调整质量使用 crf范围。数字越小质量越好,但文件大小也越大。 16 到 30 之间的数字是最佳的。
  • 如果文件在某些​​老玩家上播放失败,您可以尝试使用配置文件baseline并降低水平。
  • 关于youtube-dl - 如何使用 youtube-dl 将字幕刻录/硬编码到下载的 youtube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59303838/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com