我使用以下ViewController.m创建了一个新项目。当我运行应用程序时,我可以看到一盒预期的原点/尺寸(38,100,250,163),但是它是黑色的,没有视频播放。有在Xcode一个奇怪的输出:无法使用MPMoviePlayerViewController播放视频
2012-08-23 15:36:45.559 VideoTest1[11398:c07] [MPAVController] Autoplay: Disabling autoplay for pause
2012-08-23 15:36:45.560 VideoTest1[11398:c07] [MPAVController] Autoplay: Disabling autoplay
2012-08-23 15:37:18.186 VideoTest1[11398:c07] [MPAVController] Autoplay: Skipping autoplay, disabled (for current item: 1, on player: 0)
注意,视频转换与Videora iPhone转换器和Xcode中扮演OK(所以它不是显卡的问题);视频的路径是可以的,因为当我指定demo-iPhone1(它不存在)时,我得到一个零例外。我尝试在模拟器和iPhone上:总是黑匣子。有任何想法吗?
#import "ViewController.h"
#import <MediaPlayer/MediaPlayer.h>
@interface ViewController()
@end
@implementation ViewController
- (void)moviePlaybackComplete:(NSNotification *)notification
{
MPMoviePlayerController *moviePlayerController = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController.view removeFromSuperview];
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSString *filepath = [[NSBundle mainBundle] pathForResource:@"demo-iPhone" ofType:@"mp4"];
NSURL *fileURL = [NSURL fileURLWithPath:filepath];
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlaybackComplete:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController.view setFrame:CGRectMake(38,
100,
250,
163)];
[self.view addSubview:moviePlayerController.view];
[moviePlayerController play];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
@end
您是否尝试过使用其他任何视频。也许一个mp4从vimeo下载? –
史蒂夫,视频真的很好,因为它在我的另一个应用程序中播放的代码完全相同。但仍然无法弄清楚差异。顺便说一句,我添加了Xcode输出。也许它会给你一些想法是什么问题。 – maxgrinev