是否可以在 FFmpeg 中更改 SRT 文件中字幕文本的大小

是否可以在 FFmpeg 中更改 SRT 文件中字幕文本的大小

是否可以自动更改字幕文本 (SRT) 的大小?如果文本太长,字体大小会变小,以便能够在屏幕上显示整个文本。

就我而言,SRT 文件只包含一个文本,我想将其刻录到介绍视频中作为标题或有关视频的信息。有时标题是超出视频屏幕尺寸的长文本。我想知道是否有任何方法可以自动在视频屏幕尺寸内显示长文本?

这是我想在介绍视频上刻录的 SRT 文件内容的示例。

1  
00:00:00,000 --> 00:00:03,000  
TITLE  
Information about the video goes here  
and sometimes it is too long and goes out  
of the video's screen size while using 
a big font sizes like 40 or 50.

答案1

可以在srt文件内部设置字体大小,您可以像这样进行操作:

<font size="30px">Font size 30px</font>

答案2

不可以。SRT 文件不包含与字幕大小相关的样式信息;播放器在显示字幕时会自行决定字幕大小。

您可以(或应该)使用字幕编辑器确保字幕不超过一定长度。这也可以提高字幕的可访问性。

另一种方法是使用支持样式的字幕,例如SSA/ASS 字幕。如果你想以软字幕形式播放它们(例如 MKV),你需要适当的容器支持,你的播放器也需要支持它(参见例如支持的字幕格式在 VLC 中)。您还可以将它们刻录到视频中如果您需要与其他格式的兼容性。

埃吉苏布是一款具有多种功能的字幕编辑器。

答案3

好吧,从技术上讲,.srt它只是一个.txt.srt 格式的文件(非常像 HTML 文件)。有趣的是,它们恰好支持 HTML 标签,因此也支持 CSS 样式。

然而就像 HTML 一样,它们在不同的视频播放器上的工作方式也不相同。它在 KMPlayer 上可以工作。VLC 实际上没有显示字幕。在 PotPlayer 上,如果您转到字幕设置并在“忽略 HTML 标签”下取消选中“绝对大小”(例如 px、cm、inch 等),它就可以工作。

但是,这并不可靠,如果你想要制作色彩鲜艳的东西并让文本在屏幕上移动,你最好使用.ass.ssa文件格式。更加灵活。

答案4

我尝试使用这种样式,它可以强制播放器显示我想要的字体大小:

<font size="20px">"the subtitle text you want to size it"</font>

用于.srt文件

相关内容