如何使用ios中的视频网址将从图库中挑选的视频转换为NSData?
我已经在使用Photo框架的collectionview中显示了图库中的所有视频。我已经解压缩PHCachingImageManager(PHAsset LIB)的视频的URL下面给出:如何使用ios中的视频网址将从图库中挑选的视频转换为NSData?
[imageManager requestAVAssetForVideo:asset options:nil resultHandler:^(AVAsset *avAsset, AVAudioMix *audioMix, NSDictionary *vidInfo) {
// Use the AVAsset avAsset
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:avAsset];
AVPlayer *videoPlayer = [AVPlayer playerWithPlayerItem:playerItem];
NSURL *vUrl=[self urlOfCurrentlyPlayingInPlayer:videoPlayer];
NSString *url=[NSString stringWithFormat:@"%@",vUrl];
if (url.length>0) {
[videoInfo addObject:url];
}
}];
至于我上传选择的视频,所以我将其转换为NSData的象下面这样:
NSData* data = [NSData dataWithContentsOfFile:selectedFileUrl options:0 error:&error];
越来越网址如:video url=file:///var/mobile/Media/DCIM/100APPLE/IMG_0165.MOV
但我收到的数据总是为空。
我在这里做错了什么?请帮忙!
谢谢!!!
检查:
NSData* data = [NSData dataWithContentsOfFile::[NSURL URLWithString: selectedFileUrl] options:nil error:&error];
通常这是一个好主意,在你的答案中阐述代码。告诉你它是如何工作的,或者你在做什么。这有助于新开发人员准确理解发生了什么。 –
尝试用它
[imageManager requestAVAssetForVideo:asset options:nil resultHandler:^(AVAsset *avAsset, AVAudioMix *audioMix, NSDictionary *vidInfo) {
// Use the AVAsset avAsset
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:avAsset];
AVPlayer *videoPlayer = [AVPlayer playerWithPlayerItem:playerItem];
NSURL *vUrl=[self urlOfCurrentlyPlayingInPlayer:videoPlayer];
if (vUrl) {
[videoInfo addObject:vUrl];
}
}];
现在你可以使用获得的数据:NSData *videoData = [NSData dataWithContentsOfURL:videoURL];
谢谢!但它没有奏效 – sarita
的NSData *数据= [NSData的dataWithContentsOfURL:[NSURL URLWithString:selectedFileUrl] ]。检查此 –
尝试:'NSData * videoData = [NSData dataWithContentsOfURL:videoURL];' –
谢谢@NAVEENKUMAR。我试着你们说什么......仍然没有成功 – sarita