我正在尝试从我从iphone摄像头捕获的.mov文件中获取缩略图。我目前已经将电影保存在应用程序的文档部分。当我调用Asset duration时,它返回一个空对象。另外,当我尝试调用copyCGImageAtTime:actualtime:error方法时,它也返回一个空对象。我花了更少的时间试图弄清楚这一点。我试着将我的代码移动到我的应用程序的另一个主要部分,看看我是否可以让它工作。我也试过在模拟器上运行它,但没有成功。代码如下:
NSString* destinationPath = [NSString stringWithFormat:@"%@/aaa/aaa.mov", [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]];
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:[NSURL URLWithString:destinationPath] options:nil];
AVAssetImageGenerator *gen = [[AVAssetImageGenerator alloc] initWithAsset:asset];
gen.appliesPreferredTrackTransform = YES;
CMTime time = CMTimeMakeWithSeconds(0.0, 600);
NSError *error2 = nil;
CMTime actualTime;
CGImageRef image = [gen copyCGImageAtTime:time actualTime:&actualTime error:&error2];
UIImage *thumb = [[UIImage alloc] initWithCGImage:image];
CGImageRelease(image); 我还确认了该文件夹下确实存在该电影。任何帮助都将不胜感激。谢谢:)
-编辑--
忘记提到来自copyCGImageAtTime的错误是AVUnknown错误。
--编辑2--找出问题所在。我没有在url的开头包含file://。它现在起作用了。
发布于 2011-12-19 04:41:43
找到了问题所在。我没有在url的开头包含file://。它现在起作用了。
https://stackoverflow.com/questions/7945691
复制相似问题