ffmpeg 加载双语字幕
Posted 1CM
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ffmpeg 加载双语字幕相关的知识,希望对你有一定的参考价值。
set infile=in.mp4 set subfile1=cn.srt set subfile2=en.srt set subvf1="subtitles=%subfile1%:force_style=‘Fontsize=12,MarginV=12,BorderStyle=1,Outline=1,Shadow=0,PrimaryColour=&HFFFFFF&,OutlineColour=&H853F1B&,Spacing=2‘" set subvf2="subtitles=%subfile2%:force_style=‘Fontsize=10,MarginV=02,BorderStyle=1,Outline=1,Shadow=0,PrimaryColour=&HFFFFFF&,OutlineColour=&H5A6A83&,Spacing=1‘" ffplay -i "%infile%" -vf %subvf1%,%subvf2%,scale=1280:720 :: ffmpeg -i "%infile%" -vf %subvf1%,%subvf2% -b:v 3000k out.mp4 最新版本的 ffmpeg 使用 ASS中的V4+ Styles "[V4+ Styles]\r\n" /* ASSv4 header */ "Format: Name, " "Fontname, Fontsize, " "PrimaryColour, SecondaryColour, OutlineColour, BackColour, " "Bold, Italic, Underline, StrikeOut, " "ScaleX, ScaleY, " "Spacing, Angle, " "BorderStyle, Outline, Shadow, " "Alignment, MarginL, MarginR, MarginV, " "Encoding\r\n" 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 垂直距离
以上是关于ffmpeg 加载双语字幕的主要内容,如果未能解决你的问题,请参考以下文章