37

有没有办法通过嵌入网站的 Flash 小部件或其他方法流式传输存储在 Amazon S3 上的 MP3?

4

2 回答 2

41

是的。首先,您需要在您的 S3 帐户中创建一个全部小写、全局唯一且与 DNS 兼容的存储桶;例如,我创建了一个名为“media.torusknot.com”的存储桶。

然后,为了让这一切看起来不错,您需要创建一个 DNS CNAME 条目以将您站点的子域映射到该 S3 存储桶。这将允许您通过 '<a href="http://media.example.com/somefile.mp3" rel="noreferrer">http://media.example.com 访问您上传到该 S3 存储桶的文件/somefile.mp3'。您只需要在文件和存储桶上设置 ACL 以确保允许公共访问。

最后,如果您想通过 Flash 播放器将视频文件从 S3 流式传输到另一个域,您还必须告诉 Flash 可以从另一个域中提取内容。在存储桶中创建一个名为“crossdomain.xml”的文件,其中包含以下内容:

<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
</cross>

这允许从任何地方访问媒体 - 如果需要,您可以更具体,但这是最简单的方法。

相关资源:

于 2009-03-27T13:17:27.353 回答
38

要更新此问题的答案,如果您想真正向客户进行 STREAM,您可以在您的 S3 存储桶之上使用 Amazon Cloudfront(如 Rudolf 所述)。在 Cloudfront 中创建指向您的 S3 存储桶的“流式分发”。

这将通过 RTMP 流式传输(适用于网络和 Android 设备)。您可以使用 JW Player 或类似的播放器来播放流文件。

Cloudfront Streaming uses Adobe Flash Media Server 3.5.

There is also the ability to play secure content using signed urls.

于 2012-04-11T18:14:57.537 回答