簡體   English   中英

我使用MPMoviePlayerController播放了ios6文檔中子文件夾中存儲的視頻,但是它不起作用

[英]i play a video stored in a subfolder in ios6 documents using MPMoviePlayerController ,but it doesn't work

我使用MPMoviePlayerController播放了存儲在ios6文檔中名為test1的子文件夾中的視頻,但是它不起作用

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentDirectory = [paths objectAtIndex:0];//
NSString *movieFolderPath = [documentDirectory stringByAppendingPathComponent:@"/test1"];
NSString *newsrc = [[NSString alloc]initWithFormat:@"/%@",new.src ];
NSString *moviePath   = [movieFolderPath stringByAppendingPathComponent:newsrc];
NSURL *url = [[NSURL alloc]initWithString: [moviePath  stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding] ];
_moviePlayer = [[MPMoviePlayerController alloc]initWithContentURL:url];
_moviePlayer.movieSourceType = MPMovieSourceTypeFile;
_moviePlayer.view.frame = new.region;
[_moviePlayer prepareToPlay];
_moviePlayer.shouldAutoplay = YES;
[self.view addSubview:_moviePlayer.view];

好:url是/ Users / fengsu / Library / Application Support / iPhone Simulator / 6.0 / Applications / 53C97346-C8FD-42DF-AD37-F2B14D5D3984 / Documents / test1 / v1.mp4

我認為網址有問題,但是我不知道為什么,請幫助我,非常感謝

問題是如何構造NSURL對象。

MPMoviePlayerController期望指向本地文件的URL具有file://前綴。

這樣做的方法如下:

NSString *filename = @"your_video.mpeg";
NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString *documentsDirectory = [pathArray objectAtIndex:0];
NSString *yourVideoPath = [documentsDirectory stringByAppendingPathComponent:filename];
NSURL *movieURL = [NSURL fileURLWithPath:yourVideoPath isDirectory:NO];
_moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
// Rest of the code...

使用[NSURL fileURLWithPath:moviePath]用於打開文件中的url。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM