如何修复用AVAssetImageGenerator检索的扭曲拇指图像?

时间:2013-09-30 00:50:02

标签: iphone ios avfoundation avasset

相机应用程序中的相机胶卷显示图像的正确宽高比。

当我用AVAssetImageGenerator检索拇指时,一些拇指看起来非常扭曲。比高度长10倍。总是相同的图像看起来扭曲,而其他图像看起来正确。用相机应用程序拍摄的所有图像相机应用程序内部相机卷,所有图像看起来都正确。也是使用AVAssetImageGenerator失真的那些。

我像这样检索拇指:

if (!_imageGenerator) {
        self.imageGenerator = [[AVAssetImageGenerator alloc] initWithAsset:self.avAsset];

        _imageGenerator.appliesPreferredTrackTransform = YES;
    }
    _imageGenerator.maximumSize = maxSize;

    [_imageGenerator generateCGImagesAsynchronouslyForTimes:[NSArray arrayWithObject:[NSValue valueWithCMTime:kCMTimeZero]]
                                         completionHandler:^(CMTime requestedTime,
                                                             CGImageRef image,
                                                             CMTime actualTime,
                                                             AVAssetImageGeneratorResult result,
                                                             NSError *error) {

                                                 if (result == AVAssetImageGeneratorSucceeded) {

                                                     weakSelf.thumbImage = [UIImage imageWithCGImage:image];
                                                     dispatch_async(dispatch_get_main_queue(), ^{
                                                         NSLog(@"Loaded thumbnail");
                                                         completionHandler(weakSelf.thumbImage);
                                                     });
                                                 }
                                                 else if (result == AVAssetImageGeneratorFailed) {
                                                     // retry
                                                 }
                                     }];

在iPhone 5上使用iOS 7进行测试。还测试了除零之外的其他时间。相同的视频总是提供扭曲的拇指,而其他人都可以。可能是什么问题或有解决方法吗?

0 个答案:

没有答案