如何在ffmpeg中正确转换RTL字幕?

HTM*_*ell 6 ffmpeg webvtt video-subtitles

我正在使用以下命令从视频文件中提取字幕,并将其另存为vtt.

ffmpeg -i video.mkv -map 0:s:0 subs.vtt 2>&1
Run Code Online (Sandbox Code Playgroud)

它正在工作并输出字幕文件。问题在于 RTL(从右到左)语言(希伯来语、阿拉伯语等)。标点符号放错了位置。

为了您的方便,我将向您展示正在发生的事情的英文示例:

输入文本:

Is he alive?
-I don't know.
Run Code Online (Sandbox Code Playgroud)

输出文本:

?Is he alive
.I don't know-
Run Code Online (Sandbox Code Playgroud)

如果你想要希伯来语原文,它是:

输入文本:

??? ???
-??? ?? ????.
Run Code Online (Sandbox Code Playgroud)

输出文本:

???? ??
.??? ?? ????-
Run Code Online (Sandbox Code Playgroud)

如您所见,末尾的标点符号指向开头,反之亦然。我怎样才能避免这种行为?

小智 -1

Microsoft DotNet C# 可以正确打印所有标点符号,无论是希伯来语还是阿拉伯语。然而,字母之间的线条有一个小问题,阿拉伯语母语人士设法看到了这一点。