如何使用 RTMP 和 Flowplayer 从 Cloudfront 运行私有内容视频
Posted
技术标签:
【中文标题】如何使用 RTMP 和 Flowplayer 从 Cloudfront 运行私有内容视频【英文标题】:How to run a Private Content Video from Cloudfront using RTMP with Flowplayer 【发布时间】:2011-03-08 06:08:50 【问题描述】:重现步骤:
-
设置 S3 存储桶
设置流式分发
生成云端密钥对
使用 RSA 私钥下载 .PEM 文件
使用 http://www.jensign.com/opensslkey/opensslkey.cs 从 RSA 密钥生成 XML
上传文件“testUnsecure.flv”,设置ACL属性让所有人都可以查看。
使用以下 java 脚本设置网页:
var p = flowplayer("rtmpPlayer", src:“flowplayer-3.1.5.swf”,高度:“480px”, 插件: rtmp: url: 'flowplayer.rtmp-3.1.3.swf', netConnectionUrl: 'rtmp://s3py83uop6xa8x.cloudfront.net/cfx/st', 对象编码:'0' , 夹子: 自动播放:假, 网址:'flv:testUnsecure' ,提供者:'rtmp' );
这行得通!
然后这样做:
-
上传 testSecure.flv,设置 ACL 使其私有
生成签名 URL 并构建字符串。
javascript 中的 url 如下所示:
URL: '的flv:testSecure%3fExpires%3d1277469187%26Signature%3dE5OleaO26fwLi6jIKTa4inc8I4P86AgTg5x8SmleTSTyf5C5AfnQyqaFXLDjiF0kiqdplhauA8Kw%7eS37EpRBAn-aJrJScVlw7aZ-SAL24MTLMZ9foSkCd2ai9KjS8AuuweJRwPWmf4eLDpI4X4f3k3H7UUVcq8SX92ed5fCB91w_%26Key线对-ID%3dAPKAJUIBASIKTLFDSDFA' P>
这失败了。视频就挂在那里....
有人知道怎么做吗
-
使用 C# 为私人视频生成签名 URL?
在 Flowplayer 或 JWPLayer 中播放视频(我会使用我能使用的任何一个!)
还有几点—— 我使用与此相同的代码来生成签名 URL:http://beckelman.net/post/2010/03/30/Policy-Signing-in-C-for-Streaming-Private-Content-From-Amazon-CloudFront.aspx
如果你们能解决这个问题,我会为住在我周围 100 英里范围内的每个人买一杯饮料。
【问题讨论】:
【参考方案1】:是的 - 以防万一有人偶然发现这个问题并遇到同样的问题,我就是这样做的:
-
创建云源访问身份(我通过 C# 完成此操作,但可以使用 cloudberry 完成)
下载 cloudberry for S3 - 社区版
在 cloudberry 中的发行版(即流式发行版)上找到 FLV 文件,单击鼠标右键,然后在属性中确保源访问身份具有读取访问权限——这是关键位。
否则上面的代码实际上是正确的。
【讨论】:
如果您自己找到问题的解决方案或其他答案解决了您的问题,您最好将正确答案(解决问题的答案)标记为“已接受的答案”以上是关于如何使用 RTMP 和 Flowplayer 从 Cloudfront 运行私有内容视频的主要内容,如果未能解决你的问题,请参考以下文章
在 FlowPlayer 或 JWPlayer 上播放 m3u8 & RTMP & RTSP?
使用 angularjs 播放 rtmp 流的最佳方法是啥?