照相机用 UIImagePickerController
,以后拍摄一段录像。我点击了使用视频,该视频保存到图片库。现在我想要这段视频的大小。我用 AlAssetLibrary
将视频保存到图片库。如何可以获取大小的视频只是采取了?请帮助我。先谢谢了。
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
NSURL *recordedVideoURL= [info objectForKey:UIImagePickerControllerMediaURL];
if ([library videoAtPathIsCompatibleWithSavedPhotosAlbum:recordedVideoURL]) {
[library writeVideoAtPathToSavedPhotosAlbum:recordedVideoURL
completionBlock:^(NSURL *assetURL, NSError *error){}
];
}
}
我试过以下代码来获取视频但不是作品的大小:
ALAssetRepresentation *rep = [alasset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSError *error = nil;
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:&error];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];
解决方法 1:
你可以通过三种方式
1.使用NSData length
ALAssetRepresentation *rep = [alasset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSError *error = nil;
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:&error];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];
NSLog(@"Size of video %d",data.length);
2.利用ALAssetRepresentationsize
3.最坏的情况:使用 videoPathURL
指向已保存的视频文件,检索它再次使用 ALAsset
和 caliculate 的大小。