您的足迹:首页 > 我的代码 >ffmpeg 给视频加字幕srt:指定字幕位置以及别的样式

ffmpeg 给视频加字幕srt:指定字幕位置以及别的样式

简单的一句,指定了对齐方式,以及底部边距

ffmpeg -i  input.mp4 -lavfi "subtitles=/path/to/the/subtitle.srt:force_style='Alignment=2,MarginV=5'" -y out.mp4

# 说明:
# -i: 导入视频文件
# -vf subtitles=[path]: 字幕文件
# -vcodec h264_nvenc : GPU加速(如果有GPU) 
#  -y: 默认覆盖文件


说明:

  1. /path/to/the/subtitle.srt:字幕文件路径
  2. Alignment=2:底部居中
  3. MarginV=5:离底部的距离


01.Name 风格(Style)的名称. 区分大小写. 不能包含逗号.
02.Fontname        使用的字体名称, 区分大小写.
03.Fontsize        字体的字号
04.PrimaryColour    设置主要颜色, 为蓝-绿-红三色的十六进制代码相排列, BBGGRR. 为字幕填充颜色
05.SecondaryColour  设置次要颜色, 为蓝-绿-红三色的十六进制代码相排列, BBGGRR. 在卡拉OK效果中由次要颜色变为主要颜色.
06.OutlineColour    设置轮廓颜色, 为蓝-绿-红三色的十六进制代码相排列, BBGGRR.
07.BackColour      设置阴影颜色, 为蓝-绿-红三色的十六进制代码相排列, BBGGRR. ASS的这些字段还包含了alpha通道信息. (AABBGGRR), 注ASS的颜色代码要在前面加上&H
08.Bold            -1为粗体, 0为常规
09.Italic          -1为斜体, 0为常规
10.Underline      [-1 或者 0] 下划线
11.Strikeout      [-1 或者 0] 中划线/删除线
12.ScaleX          修改文字的宽度. 为百分数
13.ScaleY          修改文字的高度. 为百分数
14.Spacing        文字间的额外间隙. 为像素数
15.Angle          按Z轴进行旋转的度数, 原点由alignment进行了定义. 可以为小数
16.BorderStyle    1=边框+阴影, 3=纯色背景. 当值为3时, 文字下方为轮廓颜色的背景, 最下方为阴影颜色背景.
17.Outline        当BorderStyle为1时, 该值定义文字轮廓宽度, 为像素数, 常见有0, 1, 2, 3, 4.
18.Shadow          当BorderStyle为1时, 该值定义阴影的深度, 为像素数, 常见有0, 1, 2, 3, 4.
19.Alignment      定义字幕的位置. 字幕在下方时, 1=左对齐, 2=居中, 3=右对齐. 1, 2, 3加上4后字幕出现在屏幕上方. 1, 2, 3加上8后字幕出现在屏幕中间. 例: 11=屏幕中间右对齐. Alignment对于ASS字幕而言, 字幕的位置与小键盘数字对应的位置相同.
20.MarginL        字幕可出现区域与左边缘的距离, 为像素数
21.MarginR        字幕可出现区域与右边缘的距离, 为像素数
22.MarginV        垂直距离



我自己试验反正是OK的了。但是记得单引号双引号别弄错了。

如果提示什么  no such filter 类似的,说明你要么单词打错了,要么引号弄错了。


测试的话,style就先用最基本的一个  MarginV=25  一个好使了,再加其他的。

本博客所有文章如无特别注明均为原创。作者:恶猫复制或转载请以超链接形式注明转自 恶猫的博客
原文地址《ffmpeg 给视频加字幕srt:指定字幕位置以及别的样式

相关推荐

分享本文至:

发表评论

路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(0)

恶猫的博客 -记录自己日常,代码,美图,电影,音乐,新闻,只是个人博客而已

浙ICP备15011757号-4 网站地图 联系我