如何在ffmpeg视频过滤器中添加字幕字体大小
我使用这个命令来裁剪、缩放,然后添加字幕作为覆盖如何在ffmpeg视频过滤器中添加字幕字体大小,ffmpeg,video-processing,subtitle,Ffmpeg,Video Processing,Subtitle,我使用这个命令来裁剪、缩放,然后添加字幕作为覆盖 ffmpeg -i input.avi -vf "[in]crop=in_w:in_h-20:0:0 [crop]; [crop]scale=320:240 [scale];[scale]subtitles=srt.srt" -aspect 16:9 -vcodec libx264 -crf 23 oq.mp4 如何设置字幕的字体大小/颜色?使用字幕有两种方法:硬字幕和软字幕 硬潜艇 视频过滤器可用于硬分或刻录字幕。这需要重新编码,字幕成为
ffmpeg -i input.avi -vf "[in]crop=in_w:in_h-20:0:0 [crop]; [crop]scale=320:240 [scale];[scale]subtitles=srt.srt" -aspect 16:9 -vcodec libx264 -crf 23 oq.mp4
如何设置字幕的字体大小/颜色?使用字幕有两种方法:硬字幕和软字幕 硬潜艇 视频过滤器可用于硬分或刻录字幕。这需要重新编码,字幕成为视频本身的一部分
force_样式
选项
要自定义字幕,可以使用字幕
过滤器中的强制样式
选项。示例使用字幕文件subs.srt
并使字体大小为24,字体颜色为红色
ffmpeg -i video.mp4 -vf "subtitles=subs.srt:force_style='Fontsize=24,PrimaryColour=&H0000ff&'" -c:a copy output.mp4
使用force_样式
是十六进制的蓝绿红顺序。请注意,这与HTML颜色代码的顺序相反。颜色代码必须始终以primarycolor
开头,以&H
结尾&
软式潜水艇 这些是文件中的附加流。播放器只需在播放时渲染它们。比硬Subbing更灵活,因为:
- 您不需要重新编码视频
- 您可以有多个字幕(多种语言)并在它们之间切换
- 您可以在播放过程中打开/关闭它们
- 他们可以调整大小与任何球员值得使用
也看到
KEY=VALUE
对以,
分隔来更改字体大小。所以
ffmpeg-i input.mp4-vf subtitles=sub.srt:force_style='FontName=DejaVu Serif,FontSize=24'-vcodec libx264-acodec copy-q:v 0-q:a 0输出。mp4
将使用DejaVu字体和大小24的字幕,同时保持视频质量。我自己也试过,效果很好。FFmpeg有时很好,但有些视频会变得模糊。我决定和VLC玩家比较一下
媒体
转换/保存
我发现iPad HD/iPhone/PSP的个人资料
视频的默认设置非常好。或者,我可以将比特率从700kb/s
降低到350kb/s
,使其变小。关于如何更改字体大小的问题没有回答,请提供语法正确的信息example@RolandSeuhs答案是,这是不可能与SRT(据我所知)。至于ASS,实际的ASS文件决定了字体大小;正如您在示例文件中所看到的。这是可行的,但请确保您已经创建了FC_CONFIG_DIR、FONTCONFIG_文件和FONTCONFIG_PATH环境变量,并且文件fonts.conf存在,否则它将不起作用。此命令有效,谢谢,但前提是我用双引号将参数括在-vf
中。此硬代码子命令有效,但正如@GabrielDevillers所说,只有在-vf参数周围加上双引号。
ffmpeg -i input.mkv -i subtitles.ass -codec copy -map 0 -map 1 output.mkv