मैं AVCaptureSession का उपयोग कर कैमरे के साथ एक छवि कैप्चर करना चाहता हूं।आईओएस: कैमरा अभिविन्यास
यह ठीक काम करता है, मैं कैमरा शुरू करता हूं और मैं आउटपुट प्राप्त कर सकता हूं। हालांकि, जब मैं डिवाइस को घुमाता हूं तो मुझे वीडियो अभिविन्यास के साथ कुछ समस्याएं होती हैं।
सबसे पहले, मैं परिदृश्य बाएं और दाएं ओरिएंटेशन का समर्थन करना चाहता हूं और बाद में पोर्ट्रेट मोड भी हो सकता हूं।
मैं लागू:
- (BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation) interfaceOrientation{
return UIInterfaceOrientationIsLandscapse(interfaceOrientation);
}
जब मैं डिवाइस घुमाने के लिए, यह एप्लिकेशन घूमता परिदृश्य परिदृश्य सही या ठीक इसके विपरीत बाएं से, लेकिन मैं केवल कैमरा सही ढंग से देखने के लिए जब मैं परिदृश्य बाईं तरफ हूँ। जब ऐप परिदृश्य पर सही होता है, तो वीडियो 180 डिग्री से घूर्णन होता है।
बहुत बहुत धन्यवाद।
अद्यतन:
मैं Spectravideo328 जवाब की कोशिश की है लेकिन मुझे एक त्रुटि है जब मैं डिवाइस और ऐप दुर्घटना बारी बारी से करने का प्रयास करें।
[AVCaptureVideoPreviewLayer connection]: unrecognized selector sent to instance 0xf678210
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[AVCaptureVideoPreviewLayer connection]: unrecognized selector sent to instance 0xf678210'
त्रुटि इस पंक्ति में होती है::
AVCaptureConnection *previewLayerConnection=self.previewLayer.connection;
मैं इसे shouldAutorotateToInterfaceOrientation विधि के अंदर डाल यह त्रुटि है। क्या आप जानते हैं कि इस त्रुटि का कारण क्या हो सकता है?
धन्यवाद
यह समाधान मेरे लिए काम नहीं करता है। यह कुछ भी नहीं करता है ... मैं [self.prevLayer setOrientation: [[UIDevice currentDevice] अभिविन्यास] का उपयोग कर समस्या का समाधान करता हूं]। लेकिन सेटऑरिएंटेशन को हटा दिया गया है, इसलिए यह एक अच्छा समाधान नहीं है। धन्यवाद –
@ एविला, आपने प्रश्न में वर्णित किया है, कैमरा अभिविन्यास और पूर्वावलोकन परत अभिविन्यास नहीं। बस भविष्य के संदर्भ के लिए, AVCaptureSession 2 अलग कनेक्शन बनाता है (पूर्वावलोकन परत और कैमरा आउटपुट के लिए) और आपको अलग-अलग दोनों को घूमना होगा! मैंने उपरोक्त पूर्वावलोकन परत अभिविन्यास के लिए अपना उत्तर अपडेट किया। – Spectravideo328
आपके उत्तर के लिए धन्यवाद। मैंने कोशिश की है लेकिन मुझे एक त्रुटि है। मैं त्रुटि जानकारी के साथ सवाल अद्यतन। क्या आप जानते हैं कि समस्या क्या है? बहुत बहुत धन्यवाद। –