2016-07-02 100 views
0

你好,我用相機捕捉視頻如何將視頻捕獲視頻轉換爲NsData?

url = "file:///private/var/mobile/Containers/Data/Application/F5A89447-0720-4956-BD83-EEB541EE69AC/tmp/capture-T0x146e04ad0.tmp.TnQgmW/capturedvideo.MOV" 

而且我不能用它dataWithContentsOfFile給我無所有的時間。

_videourl = [info objectForKey:UIImagePickerControllerMediaURL]; 
     NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType]; 

[picker dismissViewControllerAnimated:YES completion:NULL]; 

if (CFStringCompare ((__bridge_retained CFStringRef)mediaType, kUTTypeMovie, 0) == kCFCompareEqualTo) { 


NSString *str=[[NSBundle mainBundle] pathForResource:@"capturedvideo" ofType:@"MOV"]; 

NSData *fileData = [NSData dataWithContentsOfFile:str]; 


NSData *videoData = [NSData dataWithContentsOfFile:[_videourl absoluteString]];  
NSData *videoData2 = [NSData dataWithContentsOfURL:_videourl]; 

兩個FileDataVideoData爲null,並且videoData2只有一個具有價值

我的問題是如何與臨時URL中使用dataWithContentsOfURL從相機不從畫廊?

+0

將'absoluteString'替換爲'path'。這將修復'videoData'。 – rmaddy

+0

感謝rmaddy它爲我工作 – MOMMH

回答

1

轉換視頻文件爲NSData

NSData *videoData = [NSData dataWithContentsOfFile:videopath]; 

或者視頻的網址

NSData *videoData = [NSData dataWithContentsOfURL:VideoUrl]; 
-1

所有你需要做的就是代替你的代碼與這一點,它會正常工作

NSData *dataVideo = [NSData dataWithContentsOfURL:@"file:///private/var/mobile/Containers/Data/Application/F5A89447-0720-4956-BD83-EEB541EE69AC/tmp/capture-T0x146e04ad0.tmp.TnQgmW/capturedvideo.MOV"];