ffmpeg/ffprobe 无法检测 WEBvtt(字幕)文件的语言

ffmpeg/ffprobe 无法检测 WEBvtt(字幕)文件的语言

WEBvtt 字幕文件以几个标题行开始,其中一个标题行指示语言:

WEBVTT
Kind: captions
Language: en


00:00:09.977 --> 00:00:11.563
I'd like you to take
a look at this gun.

00:00:12.564 --> 00:00:14.818
It's handcrafted to my
specifications.

但是 ffmpeg 不会检测语言。上述文件中的 ffprobe 输出未提及该语言:

ffprobe version 4.4.2 Copyright (c) 2007-2021 the FFmpeg developers
[...]
Input #0, webvtt, from 'Star Trek Continues E01 "Pilgrim of Eternity" [3G-ziTBAkbQ].en.vtt':
  Duration: N/A, bitrate: N/A
  Stream #0:0: Subtitle: webvtt

因此,当混编到视频文件中时,字幕流不会显示任何语言。

相比之下,MKVToolnix 在读取 webvtt 文件时会检测语言(尽管并不总是完美)

有简单的解决方案吗?我知道可以强制逐个语言流,但我真的在寻找一种自动解决方案。

相关内容