当前位置: 首页 > news >正文

ffmpeg提取字幕

使用ffmpeg -i test.mkv 获取视频文件的字幕流信息如下

  Stream #0:4(chi): Subtitle: subrip (srt) (default)
      Metadata:
        title           : chs
  Stream #0:5(chi): Subtitle: subrip (srt)
      Metadata:
        title           : cht
  Stream #0:6(jpn): Subtitle: dvd_subtitle (dvdsub), 720x480
      Metadata:
        title           : jap
  Stream #0:7(eng): Subtitle: subrip (srt)
      Metadata:
        title           : eng

4个字幕流数据,其中三个是subrip (srt)格式,可以使用ffmpeg -i test.mkv -map 0:s:0 output.srt命令提取字幕。

还有一个dvd_subtitle (dvdsub)格式的字幕文件,ffmpeg -i test.mkv -map 0:s:2 outputjp.sup 命令提取字幕时报错:Automatic encoder selection failed Default encoder for format sup (codec hdmv_pgs_subtitle) is probably disabled. Please choose an encoder manually.

日志报错,hdmv_pgs_subtitle编码器被禁用

使用命令ffmpeg -codecs 查看支持的编解码器信息,发现只支持D.S... hdmv_pgs_subtitle 解码是支持的,但是不支持E.S... hdmv_pgs_subtitle。

需要重新编译一版支持hdmv_pgs_subtitle编码格式的ffmpeg,

对于PGS字幕支持,你可以在配置FFmpeg时添加--enable-libmp4v2选项(因为PGS字幕通常与MP4V2库相关联)。

重新编译FFmpeg:

./configure --enable-libmp4v2 --enable-gpl --enable-nonfree

make

sudo make install

确保所有必需的依赖库都已正确安装。对于PGS字幕,可能需要安装额外的库,如libmp4v2。

尚未尝试本地编译ffmpeg

相关文章:

  • 八大排序——c++版
  • 如何使用 Coze 的 HTTP 请求节点实现高效数据交互
  • 《深度揭秘:借助MySQL实现AI模型训练全程追溯》
  • 数据驱动金融韧性升级,开启数据交换“新范式”:构建“实时、国产化强适配”的数据交换与共享平台
  • java基础使用- 泛型
  • 《DeepSeek RAG 增强检索知识库系统》Ollama DeepSeek 流式应答页面对接之三
  • Postgres数据库源码编译及部署
  • 【11408学习记录】英语语法核心突破:揭秘表语从句结构与通知写作实战技巧
  • 数据结构与算法:基础与进阶
  • 5分钟上手GitHub Copilot:AI编程助手实战指南
  • 【大模型】DeepSeek+蓝耕MaaS平台+海螺AI生成高质量视频实战详解
  • TDengine JAVA 语言连接器
  • Ai云防护技术解析——服务器数据安全的智能防御体系
  • 安卓玩机工具-----安卓机型通用 无损备份与恢复数据的工具BackupToolkit 操作过程
  • 26届Java暑期实习面经,腾讯视频一面
  • 单例模式的写法(保证线程安全)
  • 【GeoDa使用】空间自相关分析操作
  • 数据清洗
  • Java学习-异常抛出及自定义
  • Go语言从零构建SQL数据库(5)-Pratt解析算法:SQL表达式解析的核心引擎
  • 怎样做当当网站代理/seo是什么岗位
  • 快速建站代理/seo入门培训学校
  • 网站建设和网站优化哪个重要/西安外包网络推广
  • 网站开发的工作流程/网站优化排名易下拉软件
  • 网站建设最新活动/网页制作免费模板
  • 阿里云ECS1M做影院网站/app推广方法及技巧