转码带字幕的视频时出现内部错误

Internal error when transcoding video with subtitle

在 Transcoder API 的 PoC 期间,我尝试将源 MKV 文件转码为带有视频、音频和字幕的 HLS 输出,但不断出现内部错误。并且永远不会生成输出。

职位名称:projects/PROJECT-NUMBER/locations/asia-east1/jobs/JOB-ID

主要目的是将具有多个音轨和字幕的源视频文件转码为只有一个select个音轨和一个select个字幕的输出视频文件。

我检查了日志(link 屏幕截图),看起来客户正在尝试从视频文件中提取文本,这在 AFAIK 中不受支持 - 仅独立的 scc、srt 和 vtt支持文件 https://cloud.google.com/transcoder/docs/concepts/overview#supported_inputs_outputs

ranscoder API 仅支持独立字幕文件,请随时提交内嵌字幕的功能请求,我们的 PM 会查看 go/gcp-transcoder:site#need-help

我可以建议的唯一解决方法是使用 ffmpeg 或类似程序将原始文件中的字幕提取为 scc、srt 或 vtt 格式,并将其作为文本输入提供给转码器 API。

据我所知,仅支持以下组合:

  1. 带有嵌入式 CEA-608/708 字幕的 TS
  2. 带有独立 WebVTT 的 fmp4

能否尝试将容器更改为 fmp4 或将字幕类型更改为 CEA-608/708?

仅供参考,我们无法在无法访问输入媒体文件的情况下重现任何问题。

https://cloud.google.com/transcoder/docs/concepts/stream-mappings#default_text_mapping 解释了默认文本映射的工作原理。这对于您的用例来说很重要,因为当多个输入中包含文本流时,配置中输入的顺序很重要。