我正在尝试在iphone设备上播放视频但它无效,但此视频在网络浏览器上运行。
这是流媒体链接 http://dinamalar.bc.cdn.bitgravity.com/video/mob/News_27_Knnaiah_06032016.mp4。如果我使用此链接。我的空白黑屏。
这是我的代码,
NSString *mediafilepath = @"http://dinamalar.bc.cdn.bitgravity.com/video/mob/News_27_Knnaiah_06032016.mp4";
NSString *urlString = [mediafilepath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:urlString];
moviePlayer=[[MPMoviePlayerController alloc] initWithContentURL:url];
moviePlayer.view.frame = rectTemp;
moviePlayer.movieSourceType = MPMovieSourceTypeStreaming;
moviePlayer.controlStyle=MPMovieControlStyleDefault;
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(myMovieFinishedCallback:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayer];
[scrollView addSubview:moviePlayer.view];
[moviePlayer play];
答案 0 :(得分:0)
如果视频在桌面计算机上播放,而非iOS(在应用内或在Safari中)播放,则很可能是因为HTTP服务器不支持字节范围请求。如果HTTP服务器不支持字节范围请求,则iOS将不播放视频。这与OS X上的Safari不同,后者无论如何都会播放视频。
来自Safari文档:
托管iOS媒体文件的HTTP服务器必须支持字节范围请求,iOS用于在媒体播放中执行随机访问。 (字节范围支持也称为内容范围或部分范围 支持。)大多数(但不是全部)HTTP 1.1服务器已经支持 字节范围请求。
此外,HTTP服务器必须提供有效的Content-Type标头(上面的URL也列举了有效的MIME类型)。如果MIME类型无效或缺失,iOS将无法播放视频。