Debug della videocamera

In questa pagina vengono descritti gli strumenti di debug per la visualizzazione del servizio Fotocamera modifiche ai valori delle richieste di acquisizione e dei risultati inviati e ricevuti per la videocamera HAL. Il servizio di fotocamera include i comandi watch e dumpsys. Disponibile sui dispositivi con Android 13 o versioni successive, Il comando watch consente di controllare quando i tag vengono monitorati e accedervi, quando vengono pubblicati anteprima dei dump del monitoraggio dei tag da client aperti e visualizzazione dei dati memorizzati i dump da client chiusi. Il comando dumpsys consente di accedere al debug ma non fornisce i dump del monitoraggio dei tag da client chiusi.

comando watch

Questa sezione descrive come utilizzare il comando watch e fornisce esempi.

Avvia monitoraggio dei tag

Per avviare il monitoraggio dei tag, utilizza:

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

Esempio:

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

Argomenti:

  • tags: elenco separato da virgole di tag da monitorare. Accetta anche la forma breve 3a, dove 3a si riferisce all'insieme di tutti i android.control.* relativi ad AF, AE e AWB (per l'elenco completo dei tag, consulta TagMonitor.cpp).
  • clients: argomento facoltativo. Elenco separato da virgole del pacchetto client i nomi per i quali i tag vengono monitorati. Controlla tutti i clienti se non sono presenti clienti oppure se all è presente nell'elenco dei client.

Questo comando avvia il monitoraggio dei tag nei client aperti e in tutti i client che vengono aperti successivamente (fino alla chiamata di stop). Dopo la chiamata a start, Il servizio videocamera memorizza nella cache i dump del monitoraggio dei tag dai client quando chiudi.

A meno che non venga chiamato start, il servizio di videocamera non monitora i tag per nessuna e non memorizza nella cache i dump di monitoraggio dei tag. Se all viene passato nel clients, il servizio di videocamera monitora i tag e memorizza nella cache il monitoraggio da tutti i client.

Informazioni sul monitoraggio dei tag di dump

Per eseguire il dump delle informazioni di monitoraggio dei tag, utilizza:

adb shell cmd media.camera watch dump

Questo comando esegue il dump delle informazioni di monitoraggio dei tag nell'output standard, esce. Stampa il tag memorizzato nella cache che monitora i dump dei client che hanno chiuso dal giorno start (o l'ultimo clear) e dall'ultimo dump del monitoraggio dei tag dall'apertura clienti.

Esempio di output:

$ 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
...

Visualizza l'anteprima delle informazioni di monitoraggio dei tag in tempo reale

Per visualizzare l'anteprima delle informazioni di monitoraggio dei tag in tempo reale, utilizza:

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

Esempio:

adb shell cmd media.camera watch live -n 250

Argomenti:

  • refresh_interval_ms: argomento facoltativo. Intervallo in millisecondi per aggiorna le informazioni alla pagina. Il valore predefinito è 1000 se non viene trasmesso alcun valore.

Questo comando stampa le informazioni di monitoraggio dei tag in tempo reale. Per uscire, premi return/enter.

Esempio di output:

$ 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]

Cancella i dump memorizzati nella cache

Per cancellare tutti i dump di monitoraggio dei tag memorizzati nella cache, utilizza:

adb shell cmd media.camera watch clear

Questo comando non interrompe il monitoraggio dei tag.

Interrompi il monitoraggio dei tag

Arresta il monitoraggio dei tag in tutti i client e cancella tutti i buffer conservati per la memorizzazione nella cache. i dump del monitoraggio dei tag, usa:

adb shell cmd media.camera watch stop

comando dumpsys

Il comando dumpsys fornisce una serie di informazioni di debug della videocamera completamente gestito di Google Cloud. Il seguente comando acquisisce l'intero dump di debug dall' servizio videocamera:

adb shell dumpsys media.camera

Il comando dumpsys consente anche di acquisire i dump del monitoraggio dei tag clienti. Tuttavia, dumpsys non fornisce i dump del monitoraggio dei tag da utenti chiusi clienti. Di seguito sono riportati alcuni esempi di utilizzo di dumpsys per il monitoraggio dei tag:

  • Acquisisci i dump del monitoraggio dei tag da tutti i client aperti:

    adb shell dumpsys media.camera -m 3a | grep -A50 Monitored
    
  • Ottieni un'anteprima in tempo reale delle informazioni sul monitoraggio dei tag utilizzando Linux Comando watch:

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