我正在爲iPhone中的視頻應用程序創建應用程序,但我不知道如何在iPhone中捕捉視頻;我想將它們存儲在SQLite數據庫中,但我有一個問題:我可以將直接視頻保存在SQLite數據庫中嗎?是可能的,或者我必須存儲視頻路徑?如果我必須在SQLite數據庫中保存路徑,那我該怎麼做?請幫助解決這個問題。如何在iPhone中捕捉視頻
5
A
回答
16
只有iPhone 3GS及以上版本支持視頻錄製。因此,您應該首先檢查是否支持錄製,然後使用以下代碼啓動具有爲屬性設置的所需值的攝像機。
您將擁有「MobileCoreServices/MobileCoreServices.h」來運行此代碼。
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
UIImagePickerController *videoRecorder = [[UIImagePickerController alloc]init];
NSArray *sourceTypes = [UIImagePickerController availableMediaTypesForSourceType:videoRecorder.sourceType];
NSLog(@"Available types for source as camera = %@", sourceTypes);
if (![sourceTypes containsObject:(NSString*)kUTTypeMovie]) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil
message:@"Device Not Supported for video Recording." delegate:self
cancelButtonTitle:@"Yes"
otherButtonTitles:@"No",nil];
[alert show];
[alert release];
return;
}
videoRecorder.sourceType = UIImagePickerControllerSourceTypeCamera;
videoRecorder.mediaTypes = [NSArray arrayWithObject:(NSString*)kUTTypeMovie];
videoRecorder.videoQuality = UIImagePickerControllerQualityTypeLow;
videoRecorder.videoMaximumDuration = 120;
videoRecorder.delegate = self;
self.recorder_ = videoRecorder;
[videoRecorder release];
[self presentModalViewController:self.recorder_ animated:YES];
}
那麼你應該實現以下的委託方法保存在SQL捕獲的video.Storing視頻路徑/ coredata將是理想的,而不是存儲整個視頻文件在裏面。
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
NSString *type = [info objectForKey:UIImagePickerControllerMediaType];
if ([type isEqualToString:(NSString *)kUTTypeVideo] ||
[type isEqualToString:(NSString *)kUTTypeMovie]) { // movie != video
NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
NSData *videoData = [NSData dataWithContentsOfURL:videoUrl];
NSString *videoStoragePath;//Set your video storage path to this variable
[videoData writeToFile:videoStoragePath atomically:YES];
//You can store the path of the saved video file in sqlite/coredata here.
}
}
希望這會有所幫助。
3
您將能夠將視頻數據作爲原始數據存儲在sqlite中,但我強烈建議不要這樣做。表現會很糟糕。最好將視頻保存到文檔目錄,然後將其保存到數據庫中。
如果您使用SQLite的工作,那麼你應該看看CoreData,這使得管理持久性容易得多...下載的源代碼,我的核心數據教程,因爲它包含了一個很好的存儲服務包裝... tutorial here
相關問題
- 1. 如何在iOS(CUSTOM)中捕捉視頻?
- 2. 如何在android中捕捉視頻?
- 3. 如何在iPhone中捕捉屏幕視頻?
- 4. 捕捉iPhone遊戲音頻
- 5. 在iPhone中捕獲視頻
- 6. 如何捕捉iPhone遊戲的視頻,遊戲內
- 7. 如何從iPhone應用程序捕捉視頻?
- 8. 如何捕捉視頻的事件ExitFullScreen?
- 9. 如何捕捉黑白視頻
- 10. 如何視頻捕捉Windows手機?
- 11. 在iphone中捕捉視頻時的顯示速度
- 12. Codename One - 視頻捕捉
- 13. 捕捉視頻編碼
- 14. Phonegap 1.0 Android捕捉視頻
- 15. python視頻捕捉循環
- 16. QTKit,捕捉視頻直播
- 17. 視頻捕捉問題
- 18. 在Android上捕捉視頻並在iPhone上播放它
- 19. iPhone使用UIImagePickerController捕捉視頻中的選擇框
- 20. 在iPhone中捕捉圖像
- 21. 如何在android中暫停捕捉視頻?
- 22. 如何在本地文件中保存捕捉視頻
- 23. 如何在Phonegap中顯示捕捉視頻?
- 24. 如何使用java在linux中從/ dev端口捕捉視頻
- 25. Mac OSX中視頻捕捉的選擇?
- 26. 在60fps視頻捕捉(使用UIImagePickercontroller)
- 27. 視頻在捕捉時水平延伸
- 28. 如何捕捉視頻並保存到iPhone的文檔目錄中
- 29. 如何使用DirectShow NET捕捉音頻和視頻?
- 30. 如何使用Xuggle從相機/ webcamera捕捉視頻和音頻?
感謝您對此有什麼框架? – TommyG 2012-03-26 14:04:04