2010-09-11 9 views
23

मैं एक वीडियो रिकॉर्ड करने का प्रयास करता हूं।आईफोन वीडियो रिकॉर्डिंग: "कैमरा कैप्चरमोड 1 उपलब्ध नहीं है क्योंकि मीडिया टाइप में public.movie है"

UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init]; 
    imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera; 
    imagePickerController.allowsEditing = YES; 
    imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; 
    imagePickerController.delegate = self; 
    [self presentModalViewController:imagePickerController animated:YES]; 
    [imagePickerController release]; 

कोई भी विचार: संदेश मुझे मिल गया डिवाइस पर निम्न कोड से है? मुझे लगता है कि वीडियो लेना वास्तव में आसान होना चाहिए। जब मैं फोन का "कैमरा" ऐप शुरू करता हूं तो मेरे पास वीडियो और चित्र के बीच विकल्प होता है। क्या यह मेरे ऐप के लिए भी उपलब्ध नहीं होना चाहिए?

अग्रिम में 10x, Danail

उत्तर

37

समस्या तरह से मैं वीडियो मोड मोड सेट करने की कोशिश कर रहा था।

इसके बजाय इस का उपयोग करने का

:

imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; 

मैं इसे इस के लिए बदल दिया:

imagePickerController.mediaTypes = 
     [NSArray arrayWithObject:(NSString *)kUTTypeMovie]; 

और यह काम किया।

+2

धन्यवाद के जोड़ने के लिए याद है। "मोबाइलकोर सेवा" - फ्रेमवर्क आयात करने के बाद यह मेरे लिए किया गया ;-) – Micko

+1

'मीडिया टाइप्स' और 'कैमरा कैप्चरमोड' के बीच क्या अंतर है? – user102008

+7

बयानों के आदेश के साथ एक मुद्दा माना जाता है। निम्नलिखित मेरे लिए काम किया (मोबाइलकोर सर्विसेज ढांचे को आयात करने के बाद)। 'imagePickerController.mediaTypes = [NSArray arrayWithObjects: (NSString *) kUTTypeMovie, nil]; imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; ' –

1

यह विधि मेरे आईपॉड में वीडियो की लाइब्रेरी खुलती है 4. मेरे डिवाइस का वीडियो कैमरा नहीं।

क्या कोई मुझे बताएगा कि समस्या से कैसे हल किया जाए, मैंने ऊपर वर्णित दोनों तरीकों का प्रयास किया है।

UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init]; 
    imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera; 
    imagePickerController.allowsEditing = YES; 
    imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; 
    imagePickerController.delegate = self; 
    [self presentModalViewController:imagePickerController animated:YES]; 
    [imagePickerController release]; 

और

imagePickerController.mediaTypes = 
     [NSArray arrayWithObject:(NSString *)kUTTypeMovie]; 

आपकी मदद के लिए धन्यवाद।

1

इस कोशिश herePlease कोड डालें, इससे वीडियो कैमरा

if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) 
       { 
        UIImagePickerController *tmp_picker=[[UIImagePickerController alloc]init]; 
        tmp_picker.sourceType=UIImagePickerControllerSourceTypeCamera; 


        tmp_picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie]; 

        tmp_picker.delegate=self; 

        [self presentModalViewController:tmp_picker animated:YES]; 
        [tmp_picker release]; 
        NSLog(@"button index is %i",buttonIndex); 


       } 
7

ऊपर जवाब में जोड़े, के रूप में Micko उल्लेख किया है, तो आप अपने imagePickerController में अपनी परियोजना में MobileCoreServices.framework जोड़ने और इसे रेफरी की जरूरत है खोलता है। जो लोग अपनी छवि शूटिंग दृश्य में उपकरण पट्टी के नीचे एक स्विच करना चाहते हैं के लिए, बस mediaTypes प्रतिनिधि इस प्रकार सेट:

imagePC.mediaTypes = [NSArray arrayWithObjects:(NSString *)kUTTypeMovie, (NSString *)kUTTypeImage, nil]; 

अब, आप हो सकता है दोनों अभी भी छवि लेने और वीडियो लेने, का आनंद लें !!!

+0

इससे मदद मिली .... धन्यवाद :) –

3

और यदि आप स्विफ्ट के साथ काम कर रहे हैं, तो आपको मोबाइलकोर सर्विसेज.फ्रेमवर्क के साथ-साथ निम्नलिखित मॉड्यूल जोड़ना होगा जहां आप वीडियो रिकॉर्ड करने का प्रयास कर रहे हैं!

import MobileCoreServices 

फिर संपूर्ण रूप से अपने कोड इस

var imag = UIImagePickerController() 
    imag.delegate = self 
    imag.sourceType = UIImagePickerControllerSourceType.Camera; 
    imag.cameraDevice = UIImagePickerControllerCameraDevice.Rear //or Front 
    imag.mediaTypes = [kUTTypeMovie]; 
    self.presentViewController(imag, animated: true, completion: nil) 
+0

imag.mediaTypes = [kUTTypeMovie] तेजी से 3.0 में imag.mediaTypes = [kUTTypeMovie के रूप में स्ट्रिंग] का उपयोग करके लाइन को प्रतिस्थापित करें – emraz

7

स्विफ्ट 3.0 के लिए की तरह कुछ है, तो आप दोनों फ़ोटो और वीडियो का समर्थन करने के रेखा से नीचे दर्ज करनी होगी

import MobileCoreServices 

    imagePicker.mediaTypes = [kUTTypeMovie as String, kUTTypeImage as String] 
1

एक्सकोड 9 - स्विफ्ट 4।एक्स:

लें इन बयानों के आदेश के बारे में देखभाल:

imagePickerController.mediaTypes = [kUTTypeMovie as String] 
imagePickerController.cameraCaptureMode = .video 

और आप इस जानकारी के लिए करने के लिए info.plist:

enter image description here

संबंधित मुद्दे