google-cloud-transcoder - 转码带字幕的视频时出现内部错误
问题描述
在 Transcoder API 的 PoC 期间,我尝试将源 MKV 文件转码为带有视频、音频和字幕的 HLS 输出,但不断收到内部错误的错误。并且永远不会生成输出。
职位名称:projects/PROJECT-NUMBER/locations/asia-east1/jobs/JOB-ID
主要目的是将具有多个音轨和字幕的源视频文件转码为只有一个选择音轨和一个选择字幕的输出视频文件。
解决方案
我检查了日志(链接截图),看起来客户正在尝试从视频文件中提取文本,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 格式,并将其作为文本输入提供给 Transcoder API。
AFAIK 仅支持以下组合:
- 带有嵌入式 CEA-608/708 字幕的 TS
- 带有独立 WebVTT 的 fmp4
您能否尝试将容器更改为 fmp4 或将字幕类型更改为 CEA-608/708?
仅供参考,如果无法访问输入媒体文件,我们将无法重现任何问题。
https://cloud.google.com/transcoder/docs/concepts/stream-mappings#default_text_mapping解释了默认文本映射的工作原理。这对于您的用例来说很重要,因为当多个输入中包含文本流时,配置中的输入顺序很重要。
推荐阅读
- docker - Docker compose 无法启动已在使用的服务地址?
- windows - Tomcat停止错误
- javascript - 为什么计数器不增加
- .net - 在角度组件中传递 cookie
- python - 使用放置几何图形显示/隐藏按钮
- amazon-web-services - 无法将 Spring Boot v2 Gradle 应用程序部署到 AWS Beanstalk
- python-3.x - 如何使用 tweepy 提取推文
- networkx - 如何在 Pygraphviz 无向(且不严格)图(Agraph)或 NetorkX 图中获得连接两个节点的边
- soap - WSDL 模式中的 element、complexType 和 sequence 是什么意思?
- python - 为什么 scipy 和 librosa 在读取 wav 文件时不同?