【问题标题】:How can I convert iPhone-captured-video to HTTP Live Streaming files?如何将 iPhone-captured-video 转换为 HTTP Live Streaming 文件?
【发布时间】:2012-08-07 15:50:15
【问题描述】:
我在 Amazon Web Services EC2/S3 上有一个 iOS 应用程序和 Django 后端。当前进程:
- iOS 应用程序使用 UIImagePickerController 捕获视频
输出 MP4。
- MP4 被上传到我的 EC2 (Ubuntu) 服务器
运行 Django。
- Django 读取文件并上传到 S3
贮存。
- 现在,iOS 应用程序可以访问 S3 电影以观看
晚点。这使用渐进式流式传输(即假流式传输,
只是在下载时播放)。
目标:我的目标是在这里使用 HTTP Live Streaming (HLS)。
有人可以就如何更改我当前的工作流程以在 S3 上获取 HLS 文件(.M3U8 和 .TS)以允许流式传输提供建议吗?谢谢。
【问题讨论】:
标签:
ios
video-streaming
http-live-streaming
【解决方案1】:
这个问题真的很老了,我猜你已经继续了......
但为了完整起见 - 您至少有两种选择:
一个。将文件一次性转换为具有所有所需比特率的 HLS 格式,将转换后的文件托管在 S3 中。
您可以使用 Encoding.com 或 Zencoder 之类的 3rd 方编码服务来执行此操作,使用 Kaltura 之类的平台部署您自己的堆栈(还有很多其他平台我一时记不起来了)或推出您自己的转码服务器与 ffmpeg。
湾。使用可以从您已有的 MP4 转码为动态选择格式的媒体服务器(取决于请求的客户端)。
Wowza Media Server 就是一个很好的例子。 Microsoft 的 IIS 媒体服务和 Adobe 的 Flash 媒体服务器也被广泛用于向 iOS PLUS 提供其他几个平台。这里实际上有无穷无尽的选择,您所要做的就是为 HLS 正确配置每个服务器。 Google 可以轻松找到适合您的样品。
在这两种情况下,您都可以设置 CloudFront,然后从 S3 或您选择的媒体服务器读取文件。后者相对较难,我没有做过,所以很遗憾我没有对你有用的链接。