iOS: iPhone 11 प्रो पर टार्च का स्तर


9

मैं AVCaptureDevice.setTorchModeOn(level)चर चमक पर टॉर्च चालू करने के लिए विधि का उपयोग कर रहा हूं ।

मेरे पुराने iPhone एसई पर यह ठीक काम कर रहा है - मैं स्पष्ट रूप से 4 अलग चमक स्तर देख सकते हैं के रूप में मैं बदल levelसे 0करने के लिए 1

लेकिन iPhone 11 प्रो पर टॉर्च केवल स्तर होने पर ही चालू होती है 1.0! और यह चमक अगर है अब तक अधिकतम स्तर से (नियंत्रण केंद्र से टॉर्च की तुलना में)।

मैंने maxAvailableTorchLevelनिरंतर उपयोग करने की कोशिश की , लेकिन परिणाम उपयोग करने के समान हैं 1.0
इसके अलावा मूल्यों से अधिक की कोशिश की 1.0- यह अपवाद के रूप में परिणाम (उम्मीद के अनुसार)।

क्या किसी को भी यह समस्या थी? शायद कुछ वर्कअराउंड हैं?


1
इस पर किसी भी अद्यतन ? मैं इस मुद्दे के साथ रिपोर्ट प्राप्त करता हूं इसलिए मैं आपातकालीन स्थिति में iPhone 11 प्रो खरीदने की कगार पर हूं क्योंकि इस पर: /
blackjack75

दुर्भाग्य से अभी तक नहीं। शायद Apple इसे कुछ अपडेट में ठीक कर देगा ... क्या आप जानते हैं कि यह iPhone 11 प्रो पर है या केवल सभी नए फोन?
पावेल एलेक्सी

मुझे अभी तक यकीन नहीं है कि iPhone 11 प्रभावित होता है या नहीं। मुझे केवल iPhone 11 प्रो के उपयोगकर्ताओं से शिकायतें थीं। मैं कुछ अंधा सुधार की कोशिश की, और अधिक विस्तार आदि को संभालने, लेकिन मुझे नहीं पता कि यह मदद की है क्योंकि मैं अभी तक डिवाइस नहीं है। यदि आपके पास वास्तविक उपकरण है तो आप यहां संस्करण 1.81 की जांच कर सकते हैं और देखें कि क्या यह मदद करता है? मुझे लगता है कि उपयोगकर्ताओं ने मुझे बताया था कि यह पहली शुरुआत में काम कर रहा था, लेकिन फिर चमक में बदलाव पर विफल रहा और मंद हो गया, इसलिए शायद एक बदलाव है। i.smte.ch/ledflashfree
लाठी

डेवलपर .apple.com/documentation/avfoundation/avcapturedevice/… क्या आप टॉर्च सेट करने से पहले LockForConfiguration () और unlockForConfiguration () कहते हैं?
एंटोनियो याफ़ियार

@antonioyaphiar, मुझे यकीन है!
पावेल अलेक्सीव

जवाबों:


1

मुझे याद है कि आईओएस 3.x दिनों में हमारे पास साधारण एलईडी एपीआई नहीं था। हमें एक पूर्ण वीडियो कैप्चर सत्र शुरू करना था। वैसे यह पता चला है कि iPhone 11 के साथ यह एकमात्र समाधान है। मैं दूसरों के बारे में सुनना पसंद करूँगा जिन्हें इसकी आवश्यकता नहीं है।

यह मेरा परखा हुआ काम है। मैं यहाँ Objective C का उपयोग कर रहा हूँ, Swift का नहीं क्योंकि यही वह है जो मैंने 2009 से इस पुराने ऐप में इस्तेमाल किया था! आप वीडियो कैप्चर शुरू करने के लिए स्विफ्ट कोड आसानी से पा सकते हैं (और आउटपुट को अनदेखा कर सकते हैं, इसे उसी तरह से काम करना चाहिए।

AVCaptureSession* session = [[AVCaptureSession alloc] init];

AVCaptureDevice *inputDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];

AVCaptureDeviceInput *deviceInput = [AVCaptureDeviceInput deviceInputWithDevice:inputDevice error:&error];
if ([session canAddInput:deviceInput]) {
    [session addInput:deviceInput];
}

AVCaptureVideoPreviewLayer *previewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
[previewLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill];

CALayer *rootLayer = self.view.layer;
[rootLayer setMasksToBounds:YES];

CGRect frame = self.view.frame;
[previewLayer setFrame:frame];
[rootLayer insertSublayer:previewLayer atIndex:0];

//This is where you'd save the video with AVCaptureVideoDataOutput but of course we don't.

[session startRunning];

और इसके बाद आप हमेशा की तरह एलईडी शुरू करें:

NSError *error = nil;

if ([inputDevice isTorchModeSupported:AVCaptureTorchModeOn])
[inputDevice setTorchModeOnWithLevel:1.0 error:&error];

यह मेरे iPhone 11 प्रो पर अधिकतम चमक प्राप्त करता है। मैं अब वीडियो कैप्चर का उपयोग किए बिना उसी समाधान की तलाश कर रहा हूं (जो स्पष्ट रूप से बैटरी का उपयोग करता है और एक अनुमति की आवश्यकता होती है, जो उपयोगकर्ताओं को पसंद नहीं हो सकता है। इसे अच्छी तरह से समझाया जाना चाहिए)।


-1

दस्तावेज़ के अनुसार maxAvailableTorchLevel के लिए

यह स्थिरांक हमेशा अधिकतम उपलब्ध मशाल स्तर का प्रतिनिधित्व करता है, जो वर्तमान में डिवाइस द्वारा समर्थित वास्तविक अधिकतम मूल्य से स्वतंत्र है।

यदि यह स्थिरांक हमेशा अधिकतम उपलब्ध मशाल स्तर का प्रतिनिधित्व करता है, तो हम न केवल अलग-अलग उपकरणों के अलग-अलग अधिकतम उपलब्ध स्तर निकालते हैं, बल्कि यह भी कि आपके द्वारा उल्लिखित डिवाइस 1.0 से अधिक नहीं जा सकता है।

सबसे अच्छा अब यह कर सकता है कि एप्पल के डेवलपर समर्थन तक पहुंच बनाई जाए ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.