我正在尝试使用亚马逊云端网络分发在 IOS 设备上流式传输视频(苹果设备不支持 RTMP 流式传输)并且视频存储在 s3 中。此外,每个人都可以访问该链接。当我尝试粘贴视频时浏览器中的链接视频开始下载而不是流式传输。 在检查 instagram 的网站后,我开始知道 instagram 做同样的事情(也许)但不同的是它使用 akamai CDN 而我使用的是亚马逊的云端
我的链接:
http://d16jy53srxox6v.cloudfront.net/brown.mp4
Instagram 视频流链接:
https://igcdn-videos-b-2-a.akamaihd.net/hphotos-ak-xfa1/t50.2886-16/11773361_692383954227382_242786346_n.mp4
instagram 视频可以完美流式传输,我的视频可以下载而不是流式传输。点击谷歌后,我发现 HLS 是解决方案之一,但我正在寻找简单的流式传输替代方案,因为我的视频最大长度为 1 分钟,而 HLS 非常适合更大的文件。任何人都可以建议我应该怎么做才能使我的视频在没有 HLS 的情况下流式传输?
此外,我尝试在 iOS 设备上播放它,但它尝试下载并播放它。这是我的代码:
-(IBAction)click:(id)sender
{
// Make a URL
NSURL *url = [NSURL URLWithString:
@"http://d16jy53srxox6v.cloudfront.net/brown.mp4"];
// Initialize the MPMoviePlayerController object using url
_videoPlayer = [[MPMoviePlayerController alloc]
initWithContentURL:url];
// Set control style to default
_videoPlayer.controlStyle = MPMovieControlStyleDefault;
// Set shouldAutoplay to YES
_videoPlayer.shouldAutoplay = YES;
_videoPlayer.movieSourceType=MPMovieSourceTypeStreaming;
// Add _videoPlayer's view as subview to current view.
[self.view addSubview:_videoPlayer.view];
// Set the screen to full.
[_videoPlayer setFullscreen:YES animated:YES];
}
最佳答案
问题可能是上传视频的内容类型
您可以转到 s3 存储桶并检查 properties
选项卡下的 metadata
字段
我在 s3 上的一个视频遇到了同样的问题,它曾经被下载而不是播放。
我通过将元数据添加到视频中解决了这个问题
Content-Type = video/mp4
希望对你有帮助
关于ios - 云端视频流不适用于 iOS 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31950661/