कैमरा डिबगिंग

यह पृष्ठ कैमरा एचएएल को भेजे गए कैप्चर अनुरोध और परिणाम मानों में परिवर्तन देखने के लिए कैमरा सेवा में डिबगिंग टूल का वर्णन करता है। कैमरा सेवा में watch और dumpsys कमांड शामिल हैं। एंड्रॉइड 13 या उच्चतर चलाने वाले उपकरणों पर उपलब्ध, watch कमांड टैग की निगरानी और पहुंच पर नियंत्रण, खुले क्लाइंट से टैग मॉनिटरिंग डंप का लाइव पूर्वावलोकन और बंद क्लाइंट से कैश्ड डंप को देखने की अनुमति देता है। dumpsys कमांड डिबगिंग जानकारी तक पहुंचने की अनुमति देता है लेकिन बंद क्लाइंट से टैग मॉनिटरिंग डंप प्रदान नहीं करता है।

निगरानी आदेश

यह अनुभाग बताता है कि watch कमांड का उपयोग कैसे करें और उदाहरण प्रदान करता है।

टैग की निगरानी प्रारंभ करें

टैग की निगरानी शुरू करने के लिए, इसका उपयोग करें:

adb shell cmd media.camera watch start -m <tags> [-c <clients>]

उदाहरण:

adb shell cmd media.camera watch start \
-m android.control.effectMode,android.control.aeMode \
-c com.google.android.GoogleCamera,com.android.chrome

तर्क:

  • tags : निगरानी किए जाने वाले टैग की अल्पविराम से अलग की गई सूची। शॉर्टहैंड 3a भी स्वीकार करता है, जहां 3a AF, AE और AWB से संबंधित सभी android.control.* टैग के सेट को संदर्भित करता है (टैग की पूरी सूची के लिए, TagMonitor.cpp देखें)।
  • clients : वैकल्पिक तर्क। क्लाइंट पैकेज नामों की अल्पविराम से अलग की गई सूची जिसके लिए टैग की निगरानी की जाती है। यदि कोई क्लाइंट तर्क पारित नहीं किया गया है, या यदि क्लाइंट की सूची में all मौजूद हैं, तो सभी क्लाइंट पर नज़र रखता है।

यह कमांड खुले क्लाइंट और बाद में खोले जाने वाले किसी भी क्लाइंट में टैग मॉनिटरिंग शुरू करता है (जब तक stop नहीं कहा जाता)। start के बाद कॉल किया जाता है, जब क्लाइंट बंद हो जाते हैं तो कैमरा सेवा क्लाइंट से टैग मॉनिटरिंग डंप को कैश कर देती है।

जब तक start कॉल नहीं किया जाता है, कैमरा सेवा किसी भी क्लाइंट के लिए टैग की निगरानी नहीं करती है, और टैग मॉनिटरिंग डंप को कैश नहीं करती है। यदि clients पैरामीटर में all पारित हो जाता है, तो कैमरा सेवा सभी क्लाइंट से टैग और कैश की निगरानी डंप की निगरानी करती है।

डंप टैग निगरानी जानकारी

टैग निगरानी जानकारी को डंप करने के लिए, इसका उपयोग करें:

adb shell cmd media.camera watch dump

यह कमांड टैग मॉनिटरिंग जानकारी को मानक आउटपुट पर डंप करता है और फिर बाहर निकल जाता है। यह उन क्लाइंट्स से कैश्ड टैग मॉनिटरिंग डंप प्रिंट करता है जो start (या अंतिम clear ) के बाद से बंद हो गए हैं और खुले क्लाइंट्स से नवीनतम टैग मॉनिटरिंग डंप प्रिंट करता है।

नमूना आउटपुट:

$ adb shell cmd media.camera watch dump
Client: com.android.chrome (active)
1:com.android.chrome  f0:532642803202286ns:             REQ:android.control.aeMode: [ON] output stream ids:  0
1:com.android.chrome  f0:532642803202286ns:             REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids:  0
..
Client: com.google.android.GoogleCamera (cached)
0:com.google.android.GoogleCamera  f0:532601698728552ns:             REQ:android.control.aeMode: [ON] output stream ids:  0  3  1  2
0:com.google.android.GoogleCamera  f0:532601698728552ns:             REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids:  2  1  3  0
0:com.google.android.GoogleCamera  f0:532601698728552ns:             REQ:android.control.awbMode: [AUTO] output stream ids:  0  3  1  2
...

वास्तविक समय में टैग निगरानी जानकारी का पूर्वावलोकन करें

वास्तविक समय में टैग निगरानी जानकारी का पूर्वावलोकन करने के लिए, इसका उपयोग करें:

adb shell cmd media.camera watch live [-n refresh_interval_ms]

उदाहरण:

adb shell cmd media.camera watch live -n 250

तर्क:

  • refresh_interval_ms : वैकल्पिक तर्क। जानकारी को ताज़ा करने के लिए मिलीसेकंड में अंतराल। यदि कोई मान पारित नहीं किया जाता है तो डिफ़ॉल्ट 1000 हो जाता है।

यह कमांड वास्तविक समय में टैग मॉनिटरिंग जानकारी प्रिंट करता है। बाहर निकलने के लिए रिटर्न / एंटर दबाएँ।

नमूना आउटपुट:

$ adb shell cmd media.camera watch live
Press return to exit...

0:com.google.android.GoogleCamera  f0:533016991302201ns:             REQ:android.control.aeMode: [ON] output stream ids:  1  3  0  2
0:com.google.android.GoogleCamera  f0:533016991302201ns:             REQ:android.control.afMode: [CONTINUOUS_PICTURE] output stream ids:  2  0  3  1
...
0:com.google.android.GoogleCamera  f0:533017066793915ns:                            RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera  f0:533017066793915ns: 3                          RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera  f0:533017066793915ns: 2                          RES:android.control.aeState: [SEARCHING]
0:com.google.android.GoogleCamera  f0:533017066793915ns:                            RES:android.control.afState: [PASSIVE_SCAN]

कैश्ड डंप साफ़ करें

सभी कैश्ड टैग मॉनिटरिंग डंप साफ़ करने के लिए, इसका उपयोग करें:

adb shell cmd media.camera watch clear

यह आदेश टैग निगरानी को नहीं रोकता है.

टैग की निगरानी करना बंद करें

सभी क्लाइंट में टैग की निगरानी बंद करने और कैशिंग टैग मॉनिटरिंग डंप के लिए रखे गए सभी बफ़र्स को साफ़ करने के लिए, इसका उपयोग करें:

adb shell cmd media.camera watch stop

डंपसिस कमांड

dumpsys कमांड कैमरा सेवा से कई डिबगिंग जानकारी प्रदान करता है। निम्न आदेश कैमरा सेवा से संपूर्ण डिबगिंग डंप को कैप्चर करता है:

adb shell dumpsys media.camera

dumpsys कमांड खुले क्लाइंट से टैग मॉनिटरिंग डंप को कैप्चर करने की भी अनुमति देता है। हालाँकि, dumpsys बंद क्लाइंट से टैग मॉनिटरिंग डंप प्रदान नहीं करता है। टैग मॉनिटरिंग के लिए dumpsys का उपयोग करने के उदाहरण निम्नलिखित हैं:

  • सभी खुले क्लाइंट से टैग मॉनिटरिंग डंप कैप्चर करें:

    adb shell dumpsys media.camera -m 3a | grep -A50 Monitored
    
  • लिनक्स watch कमांड का उपयोग करके टैग मॉनिटरिंग जानकारी का लाइव पूर्वावलोकन प्राप्त करें:

    watch -n 1 -c 'adb shell dumpsys media.camera -m 3a | grep -A50 Monitored'