我已经看过了,但找不到这个问题的有效答案。我已经使用ALAssets创建了一个自定义图像拾取器,但现在它不是常规的图像拾取器,因此不能自动压缩视频。
这就是我从资产中获取视频NSData的方法:
ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
data = [[NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES] retain];现在的问题是,当我选择一个大的视频文件时,应用程序崩溃了,因为它会收到内存警告。有没有办法压缩视频,甚至裁剪,这样视频文件就不会那么大了?
发布于 2012-09-20 21:11:34
对于大型视频,我也遇到了同样的问题。您应该重复地将少量字节从资源复制到缓冲区中,并将其附加到视频数据中。
https://stackoverflow.com/questions/10270281
复制相似问题