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
使其起作用。没有更好的文件名。
- 我看不出字幕样式有多个选择,i。 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
并降低级别。
本文链接:https://www.f2er.com/2934623.html