khi*_*ari 9 ffmpeg video-processing
我正在使用此命令进行裁剪,缩放,然后将字幕添加为叠加层
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
Run Code Online (Sandbox Code Playgroud)
我们如何设置字幕的字体大小/颜色?
llo*_*gan 28
有两种方法可以使用字幕:hardsubs和softsubs.
该subtitles视频滤波器可以用来hardsub,或烧机,字幕.这需要重新编码,字幕成为视频本身的一部分.
force_style 选项要自定义字幕,您可以使用过滤器中的force_style选项subtitles.使用字幕文件subs.srt并使用红色字体颜色制作24字体大小的示例.
ffmpeg -i video.mp4 -vf "subtitles=subs.srt:force_style='Fontsize=24,PrimaryColour=&H0000ff&'" -c:a copy output.mp4
Run Code Online (Sandbox Code Playgroud)
force_style使用SubStation Alpha(ASS)样式字段.
PrimaryColour蓝绿红色顺序为十六进制.请注意,这与HTML颜色代码的顺序相反.颜色代码必须始终以... &H结尾&.
或者,您可以使用Aegisub创建和设计您的字幕.保存为SubStation Alpha(ASS)格式,因为它可以支持字体大小,字体颜色,阴影,轮廓,缩放,角度等.
这些是文件中的其他流.播放器只需在播放时呈现它们.比hardsubbing更灵活,因为:
当然,如果设备或播放器无法使用softsubs,有时需要使用hardsubs.
ffmpeg -i input.mkv -i subtitles.ass -codec copy -map 0 -map 1 output.mkv
Run Code Online (Sandbox Code Playgroud)
没有任何东西可以重新编码,因此整个过程将很快,质量和格式将得到保留.
使用SubStation Alpha(ASS)字幕将允许您根据需要设置字幕格式.这些可以使用Aegisub创建/转换.
小智 6
从文档中,您可以使用srt字幕文件,并通过将ASS样式格式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 output.mp4
将保留DejaVu字体和大小24的字幕,同时保持视频的质量.我已经尝试过自己,但它确实奏效了.
| 归档时间: |
|
| 查看次数: |
28359 次 |
| 最近记录: |