2012-01-24 11 views
1

私のiPhoneアプリは、写真とビデオをカメラロールに保存することができ、カメラロールのアイテムにもアクセスできました。カメラロールに保存されたビデオを再生する

カメラのロールから写真を表示するのは簡単でした。私はALAssetsLibraryを使ってそれを行い、UIImageで完全に表示されます。私もビデオにアクセスでき、MPMoviePlayerControllerを使ってビデオを表示しようとしました。ここで

は私のコードです:

ALAssetsLibrary *assetLibrary = [[ALAssetsLibrary alloc] init]; 

    // Enumerate just the photos and videos group by using ALAssetsGroupSavedPhotos. 
    [assetLibrary enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos 
        usingBlock:^(ALAssetsGroup *group, BOOL *stop){ 
         // Within the group enumeration block, filter to enumerate just videos. 
         [group setAssetsFilter:[ALAssetsFilter allVideos]]; 

          // Chooses the video at the last index 
          [group enumerateAssetsAtIndexes:[NSIndexSet indexSetWithIndex:([group numberOfAssets]-1)] 
                options:0 
               usingBlock:^(ALAsset *alAsset, NSUInteger index, BOOL *innerStop){ 
                if (alAsset){ 
                 ALAssetRepresentation *representation = [alAsset defaultRepresentation]; 
                 MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL: [representation url]]; 
                 [moviePlayer.view setFrame:CGRectMake(20, 20, 200, 300)]; 
                 [self.view addSubview: moviePlayer.view]; 
                 [moviePlayer prepareToPlay]; 
                 [moviePlayer play]; 
                } 
               } 
          ]; 
         } 
        failureBlock: ^(NSError *error){ 
         // handle error 
         NSLog(@"No groups"); 
        } 
    ]; 

私は黒のみ、フレーム、ビデオなしを参照してください。

誰でも手伝ってもらえますか?

ありがとうございました。

答えて

0

はMPMoviePlayerViewControllerを見てください:

MPMoviePlayerViewController *player = [[MPMoviePlayerViewController alloc] initWithContentURL:[representation url]]; 
[self presentMoviePlayerViewControllerAnimated:player]; 
[player.moviePlayer play]; 
[player release]; 

ドキュメント:http://developer.apple.com/library/ios/documentation/mediaplayer/reference/mpmovieplayerviewcontroller_class/Reference/Reference.html#//apple_ref/occ/instp/MPMoviePlayerViewController

+0

投稿する前にこれも試しましたが、うまくいきませんでした。 :( – rookieRailer

+0

私の投稿を編集しました。 – rookieRailer

0

はこれを試してみてくださいを。私はCollectionViewCellのためにこれを記述します。必要に応じてmoviePlayerController.view.frameを更新できます。

MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:[[asset defaultRepresentation] url]]; 
     moviePlayerController.view.frame = CGRectMake(cell.frame.origin.x, cell.frame.origin.y, cell.frame.size.width, cell.frame.size.height);//self.view.frame; 
     moviePlayerController.movieSourceType= MPMovieSourceTypeFile; 
     moviePlayerController.fullscreen = YES; 
     [self.view addSubview:moviePlayerController.view]; 
     [moviePlayerController play]; 
関連する問題