12

我有一项任务是将大量视频转换为 ogg、webm 和 mp4,用于不同的分辨率和移动设备等,我正在考虑使用 ffmpeg 运行转码作业队列或使用弹性转码器。(背景信息:源文件已经在 S3 上,Web 应用程序完全集成到 AWS SDK 中,文件每天都在添加,不需要实时转换)

我知道使用 EC2 和 ffmpeg 将需要一些开发时间和精力,而不仅仅是使用 transcorder API。但是,如果有良好的成本节约...

因此我有两个问题

1) AWS 表示费用约为每分钟视频 (SD) 的 0.015 美元。我的问题是,每个输出文件是否单独收费。Docs 说他们支持最多 30 个输出来完成同一个工作。但不清楚是每分钟工作还是每分钟每种输出格式(那么 30 种输出格式的视频每分钟 0.45 美元)?

2)在这个用例中是否有人有使用 EC2 和 ffmpeg 的经验?这比transcorder便宜吗??

上次我开发这种性质的东西时,我没有考虑 EC2 的 I/O 成本,最终 I/O 的成本超过了实例本身。我可以做任何代码优化以使其更便宜吗?(除了使用现场实例、更便宜的区域等)。

4

1 回答 1

11

AWS 弹性转码服务仅支持 MP4/H.264/AAC。它目前不支持 WebM/VP8/Vorbis 或 Ogg/Theora/Vorbis(这是您正在寻找的另外两个容器/视频/音频组合)。

因此,自定义 ffmpeg 安装是您分配任务的必要条件,但如果您使用错误的软件库组合,您可能很快就会误入法律问题。这是专利法问题的法律雷区。

一旦你克服了这一点,你需要弄清楚你在寻找什么。便宜&慢与快&贵。之前构建过这个东西,我建议不要比 EC2 XL 实例更小。如果您尝试使用 Micro 或 Small,请准备好花费数小时等待编码完成。

您还需要考虑如何在上传时触发编码,如果这就是您想要的。ETS 不这样做——您必须手动触发它们。

更新: ElasticTranscoder 现在默认支持 Webm VP8 & VP9、HLS 和其他一些格式。

于 2013-08-03T06:08:33.077 回答