3

MPMoviePlayerController の再生時にスクリーンショットを撮ります。スクリーン ショットを完全に保存しますが、画像は黒色のみです。以下のコードを使用します。

UIGraphicsBeginImageContext(self.moviePlayerController.view.frame.size);
[self.moviePlayerController.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
4

2 に答える 2

3

最後に、この問題を修正しました...私はこのコードを使用しています...完全に機能しています...すべてに感謝します...

- (void)captureScreenShot
{
    CGImageRef originalImage = UIGetScreenImage();
    CGImageRef videoImage = CGImageCreateWithImageInRect(originalImage, CGRectMake(0, 66, 320, 230));            
    UIImage *snapShotImage = [UIImage imageWithCGImage:videoImage];
    UIImageWriteToSavedPhotosAlbum(snapShotImage, nil, nil, nil);
    CGImageRelease(originalImage);                
    CGImageRelease(videoImage);  
}
于 2012-06-30T10:13:37.810 に答える
0

thumbnailImageAtTimeの方法で試すことができますMPMoviePlayerController

UIImage *aThumbnail = [player thumbnailImageAtTime:timeCode timeOption:MPMovieTimeOptionExact];
//timeCode is a time within the video length, for example: 5 seconds.
于 2012-06-29T09:04:42.893 に答える