gpt4 book ai didi

ffmpeg - 是否可以使用 ffprobe 确定字幕轨道是基于图像还是基于文本

转载 作者:行者123 更新时间:2023-12-04 02:42:18 24 4
gpt4 key购买 nike

我正在编写一个脚本,将字幕刻录到视频文件中,以便为我托管的个人流做好准备。我很难找到文件中使用了哪种类型的字幕。我使用 ffprobe 来获取文件的信息,我可以获得诸如编解码器类型之类的东西,但我想知道是否有一种方法可以确定字幕轨道是基于图像还是基于文本。我只能想到获取所有可能的编解码器的列表并将编解码器类型与该列表匹配,但是在某个地方有一个信息可以告诉我“好的,这是一个基于图像的字幕轨道”,这将非常有用,就像我刻录我不能使用与 ffmpeg 相同的过滤器来刻录图像与文本字幕。

最佳答案

好吧,这在一定程度上取决于您使用的操作系统。在 Linux 中,您可以运行以下命令来获取您的 ffmpeg 版本支持的所有字幕编解码器的列表:

ffmpeg -codecs | grep "^...S"

将其缩小到您的 ffmpeg 构建能够编码的字幕编解码器:

ffmpeg -codecs | grep "^..ES"

听起来您最感兴趣的是 ffmpeg 可以解码哪些字幕:

ffmpeg -codecs | grep "^.D.S"

在我的 ffmpeg 构建 (git-2020-08-31-4a11a6f) 上,上面的命令显示以下结果:

 DES... ass                  ASS (Advanced SSA) subtitle (decoders: ssa ass ) (encoders: ssa ass )
DES... dvb_subtitle DVB subtitles (decoders: dvbsub ) (encoders: dvbsub )
DES... dvd_subtitle DVD subtitles (decoders: dvdsub ) (encoders: dvdsub )
D.S... eia_608 EIA-608 closed captions (decoders: cc_dec )
D.S... hdmv_pgs_subtitle HDMV Presentation Graphic Stream subtitles (decoders: pgssub )
D.S... jacosub JACOsub subtitle
D.S... microdvd MicroDVD subtitle
DES... mov_text MOV text
D.S... mpl2 MPL2 subtitle
D.S... pjs PJS (Phoenix Japanimation Society) subtitle
D.S... realtext RealText subtitle
D.S... sami SAMI subtitle
D.S... stl Spruce subtitle format
DES... subrip SubRip subtitle (decoders: srt subrip ) (encoders: srt subrip )
D.S... subviewer SubViewer subtitle
D.S... subviewer1 SubViewer v1 subtitle
DES... text raw UTF-8 text
D.S... vplayer VPlayer subtitle
DES... webvtt WebVTT subtitle
DES... xsub XSUB

哪些是基于图形/非文本的?大多数是基于文本的。请注意,“文本”可以表示原始文本(例如 ASCII 或 UTF-8)、XML 或 HTML。

ffmpeg 中基于图像的字幕编解码器

  • dvbsub
  • DVD 订阅
  • pgssub
  • x子

ffmpeg 中基于文本的字幕编解码器

  • ssa,屁股
  • webvtt
  • 雅各布
  • 微型DVD
  • mov_text
  • mpl2
  • 睡衣
  • 真实文本
  • 萨米
  • STL
  • 订阅
  • 子查看器
  • 子查看器1
  • 正文
  • vplayer
  • webvtt

EIA 隐藏式字幕EIA-608 是一种隐藏式字幕格式,使用 ffmpeg 进行正确管理似乎有点困难。

eia_608              EIA-608 closed captions (decoders: cc_dec )

这篇 Stack Overflow 帖子提供了关于它们如何运作以及如果您知道它们存在于文件中如何管理它们的更好解释之一:Can ffmpeg extract closed caption data

关于ffmpeg - 是否可以使用 ffprobe 确定字幕轨道是基于图像还是基于文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58808907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com