亚马逊S3托管流媒体视频

时间:2010-08-17 18:17:45

标签: html5 amazon-s3 video-streaming

如果我公开使用Amazon s3 MP4资源,然后在资源的URL周围抛出Html5视频标记,它会流式传输吗?这真的很简单吗?有很多“编码”api,比如pandastream和zencoder,我不确定这些公司到底做了什么。他们只管理带宽分配(升级/降级流质量和交付率/跨平台优化吗?)或者编码服务做得更多。

6 个答案:

答案 0 :(得分:32)

这是来自Zencoder的Brandon。你正在寻找的东西可能就像视频播放的Video JS(videojs.com)。您只需将MP4上传到S3并在播放器中引用它(或直接在视频标签中引用,但这有其他问题)。我们的服务实际上用于转码视频本身,而不是交付。我们实际上创建了Video JS来帮助我们的客户(以及整个网络)轻松,兼容的HTML5播放。如果您有任何其他问题,请询问。感谢。

答案 1 :(得分:7)

问题第一部分的答案是,,实在是非常简单。关于它有how-to和文章末尾的工作演示,您可以将其视为概念验证。

答案 2 :(得分:4)

Amazon S3是提供视频内容的绝佳选择。我们已经使用它几年没有任何问题,成本是无与伦比的。您还应该考虑使用Amazon CloudFront并配置媒体以使用其“流式传输分发”。它基本上使用您的S3文件,但将它们复制到互联网上的边缘位置,并使用RTMP为用户提供更好的播放体验,并为您节省带宽。

http://aws.amazon.com/cloudfront/

答案 3 :(得分:3)

我和你有同样的问题,很高兴看到将一个mp4文件上传到S3,设置" public"对它的权限,然后使用这个简单的HTML工作很好,没有任何额外的工具。而CloudFront甚至不是必需的。

<video id="clip" controls preload=auto width=640 height=264 data-setup="{}">
    <source src="https://s3.amazonaws.com/xxxxbucketnamexxxxx/xxxxfilenamexxxx.mp4" type='video/mp4'/>        
</video>

答案 4 :(得分:1)

亚马逊S3与亚马逊CloudFront相结合,可扩展的CDN非常强大,可以构建出色的视频解决方案,甚至可以使用带有MPEG-DASH或HLS的媒体源扩展,在HTML5中使用自适应比特率(ABR)视频的类似Netflix的系统,就像Netflix或Youtube一样。

在这里你可以找到一个非常好的教程:http://www.bitcodin.com/blog/2015/02/create-mpeg-dash-hls-content-for-amazon-s3-and-cloudfront/

答案 5 :(得分:0)

您可以使用https://HandBrake.fr之类的免费编码器自己对视频进行编码。或者您的视频编辑器(我使用的是Camtasia)应该具有标准的编码选项。

关于视频播放器,您有几种选择...

1)最简单的选项:上传到S3,公开文件,将整个URL插入WordPress,它会自动成为视频播放器。但是播放器将具有非常基本的选项(没有速度控件,自定义播放器控件的功能等),并且URL是公共的,这意味着它可以进行窃取,热链接和盗版。

2)如果您希望保护文件本身的安全,则将其上传到S3,将其设为私有,使其只能由root帐户访问,然后使用https://S3MediaVault.com之类的插件来创建已签名的URL。 -页面加载的时间,链接将根据您希望它处于活动状态的秒数而很快失效。

3)然后,如果您想保护页面本身,则必须使用某种收费墙软件。因此,如果您使用的是WordPress,那将是WordPress成员资格插件,它将保护该页面并在用户访问该页面之前先使用用户名/密码进行一次登录。然后将加载该页面,并为您的视频生成签名的URL,他们可以从该页面观看或下载(如果允许的话)。

4)您还可以创建对于大多数普通人来说很难下载的流式视频,因为它不再只是.mp4文件-它是.m3u8和一堆.ts文件,这很难对于大多数人来说。然后将那些签名过的URL设置为URL,视频将变得更加难以下载。

如果您使用Apple的HLS技术对流视频进行编码,并将其设置为自适应比特率,则流的下载速度将与观看者的互联网连接速度一样快。视情况而定,这可能是好事也可能是坏事,但这是一个选择。