有一个3gp格式的视频,放在服务器上,比方说在 。 我使用如下代码,无法从远程直接播放,显示错误“The server is not correctly configured”。但我把这个视频下载到本地,只把URL改成本地路径,就可以用MPMoviePlayerController成功播放。这个链 接是有效的,请帮我看看我是哪里设置不对,还是链接格式不对?
-(void)playMovieButtonPressed{ movieURL = [NSURL URLWithString:@"http://65.49.19.44:9528/videos/ZAWIIlXNGwY.3gp"]; if (movieURL) { if ([movieURL scheme]) // sanity check on the URL { LearnTabViewAppDelegate *appDelegate = (LearnTabViewAppDelegate *)[[UIApplication sharedApplication] delegate]; [appDelegate initAndPlayMovie:movieURL]; } }}-(void)initAndPlayMovie:(NSURL *)movieURL{ MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:movieURL]; if (mp) { self.moviePlayer = mp; [mp release]; [self.moviePlayer play]; }}
mp4的远程 播放貌似一切正常, 3gp不知道了
问题解决,自己做个总结:
用MPMoviePlayer,不仅在iPhone上要设置正确,播放的文件格式要支持(比如3gp, m4v等),并且服务器那端要支持相应的MIME TYPE(这个具体是什么我也不大清楚)。我最开始无法播放远程视频,问题出在服务器不支持3gp的MIME TYPE,后来修改后就ok了。
MPMoviePlayerController播放网络视频,为什么有时可以自动播放,有时不可以
最近遇到一个问题,还希望各路高手能指点一下。 我在用MPMoviePlayerController播放网络视频的时候,有的时候可以自动播放;有时却得点一下中间得播放按钮才能播放。这是为什么呢? 代码如下: -(void)initAndPlayMovie:(NSURL *)movieURL { // Initialize a movie player object with the specified URL MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:movieURL]; if (mp) { // save the movie player object self.moviePlayer = mp; [mp release]; // Apply the user specified settings to the movie player object [self setMoviePlayerUserSettings]; // Play the movie! [self.moviePlayer play]; }
}
有一个mp4格式的视频,放在服务器上,如果用模拟器去播放是可以播放,但如果编译到真机上就出现""不支持此格式",哪位大侠知道能否告诉下小弟怎么回事,如何解决。
NSString *str = [NSString stringWithFormat:@"%@%@",MovieHttp,idstr];
NSURL *url=[NSURL URLWithString:[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; [url retain]; if(url!=nil) { if([url scheme]){ [mp playMovieAtURL:url]; } }我觉得应该不是代码问题,是不是服务器要设置什么东西,或则视频大小有没有要求,主要是真机“不支持此格式‘的问题,模拟器上可以跑 有可能转的mp4不对,可以写个html访问一下试试。