首页 文章

AWS弹性转码器 - 用于移动流的实时转码和分发

提问于
浏览
-1

目标:我有一个允许用户上传视频的应用程序,然后我需要能够立即将这些视频流式传输给其他用户 . 我目前的设置工作正常,但我现在想要对视频进行转码,以便针对移动流媒体进行优化 . 寻找一些最佳实践,请帮忙!

当前设置:我正在使用S3存储桶来存储视频资产 . 成功上传后,我正在其他地方创建一个单独的视频对象,其中包含该特定视频的所有元数据,包括用于检索它的URL . *请注意,实际上我是通过AWS CloudFront进行流式处理的,因此我在视频对象上保存为属性的URL实际上是连接到S3存储桶的CloudFront分配的基本URL .

问题:现在我想将视频转码为移动优化流媒体 . 我可以使用弹性转码器运行后台作业,该转码器将它们从一个AWS桶(称为“bucket1”)中取出,对它们进行转码,然后将它们放入指定用于优化视频的另一个桶中(称之为“bucket2”) . 但我的问题是,现在当用户上传视频时,流程如下所示:上传到bucket1,并使用元数据创建相应的视频对象 . 视频对象需要一个URL,以便我可以稍后流式传输视频 . 我设置了与bucket2相关联的URL(最终将放置优化的视频资产) . 问题是,我的批处理作业不再运行一小时,但用户从现在开始请求该视频一分钟 . 显然,bucket2 URL上还没有优化版本,所以我无法流式传输视频 .

我仍然得到内容,它让我明显地覆盖文件(我可以通过将它们放在第二个桶中来解决这个问题,然后使用copyObject操作进行覆盖,按照这个帖子:aws transcoder overwrite files on s3) . 但是,更大的问题是这一切都需要一个文件名,包括扩展名 . 如果我想将.mov格式(例如)的文件转换为扩展名为.m3u8的hls播放列表,那似乎是不可能的 .

如果有人有任何最佳实践技巧来解决这个问题我已经说过了我会非常感激!

干杯,布兰登

2 回答

  • 0

    http://www.bitcodin.com能够比实时转码更快,并且可以立即向用户输出视频 . 它也可以在Amazon AWS中使用,例如遵循本教程:http://www.bitcodin.com/blog/2015/02/create-mpeg-dash-hls-content-for-amazon-s3-and-cloudfront/

  • 0

    我知道这已经有几年了,但是想增加额外的信息 . 希望您在2年前找到其他解决方案,但您可以使用在线视频平台或转码服务,这两种服务都是为了处理您描述的内容而设计的,还有更多 . 市场上有很多可供选择,从免费到付费 . 此外,当Stefan说“比实时转码更快”时,这意味着如果您的视频长度为15分钟,则转码将花费不到15分钟 .

相关问题