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

यह पृष्ठ कैमरा एचएएल को भेजे गए कैप्चर अनुरोध और परिणाम मानों में परिवर्तन देखने के लिए कैमरा सेवा में डिबगिंग टूल का वर्णन करता है। कैमरा सेवा में 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 नहीं कहा जाता है, कैमरा सेवा किसी भी क्लाइंट के लिए टैग की निगरानी नहीं करती है, और टैग मॉनिटरिंग डंप को कैश नहीं करती है। यदि all clients पैरामीटर में पास हो जाते हैं, तो कैमरा सेवा सभी क्लाइंट से टैग और कैश मॉनिटरिंग डंप की निगरानी करती है।

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

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

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
    
  • Linux watch कमांड का उपयोग करके टैग निगरानी जानकारी का लाइव पूर्वावलोकन प्राप्त करें:

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