[英]How to get playable video url by selecting a video using ELCImagePickerController
[英]How to get NSData of video in elcImagePickerController?
我想将视频上传到服务器...并且正在使用elcImagePickerController选择多个/单个视频
但在
- (void)elcImagePickerController:(ELCImagePickerController *)picker didFinishPickingMediaWithInfo:(NSArray *)info
方法未获取UIImagePickerControllerMediaURL以获取数据。
那么如何获取视频数据以将其发送到服务器?
这是我的代码
if ([dict objectForKey:UIImagePickerControllerOriginalImage]){
UIImage* image=[dict objectForKey:UIImagePickerControllerOriginalImage];
[images addObject:image];
NSURL *imagePath = [dict objectForKey:UIImagePickerControllerReferenceURL];
NSString *imageName = [imagePath lastPathComponent];
[imgNames addObject:imageName];
UIImageView *imageview = [[UIImageView alloc] initWithImage:image];
[imageview setContentMode:UIViewContentModeScaleAspectFit];
imageview.frame = workingFrame;
[_scrollView addSubview:imageview];
workingFrame.origin.x = workingFrame.origin.x + workingFrame.size.width;
}
终于从这里得到了解决方案https://stackoverflow.com/a/10799693/6011616
ALAssetsLibrary *assetLibrary=[[ALAssetsLibrary alloc] init];
[assetLibrary assetForURL:[NSURL URLWithString:videoLink] resultBlock:^(ALAsset *asset) {
ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];
NSLog(@"%@",data); //this is what I was expecting
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.