Uscita della fotocamera a 10 bit

Per i dispositivi che eseguono Android 13 e versioni successive, Android supporta l'output della videocamera a 10 bit tramite profili di intervallo dinamico che possono essere configurati dal client della videocamera nell'ambito della configurazione dello stream. I produttori di dispositivi possono aggiungere il supporto per i profili di intervallo dinamico a 10 bit, come HLG10, HDR 10, HDR 10+ e Dolby Vision.

Il supporto per l'output della videocamera a 10 bit consente ai client della videocamera di scoprire i profili di intervallo dinamico a 10 bit supportati di un dispositivo chiamando getSupportedProfiles. Il framework restituisce quindi un'istanza di DynamicRangeProfiles, che include informazioni sui profili di intervallo dinamico supportati e, se disponibili, vincoli della richiesta di acquisizione. Il HLG10 profilo deve essere supportato. Il profilo di intervallo dinamico consigliato è elencato in the REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE campo.

I client della fotocamera possono configurare le combinazioni di stream chiamando setDynamicRangeProfile. Per ulteriori informazioni sulle combinazioni di stream di output obbligatorie, consulta la tabella Configurazioni garantite aggiuntive per l'output a 10 bit in Acquisizione normale.

Requisiti

Per supportare l'output della videocamera a 10 bit, il dispositivo deve avere un sensore della videocamera a 10 bit o superiore con il rispettivo supporto ISP. Per dettagli sui requisiti di compatibilità correlati per il supporto a 10 bit, consulta la sezione 7.5. Videocamere nel CDD.

Implementazione

Per fornire il supporto per l'output della videocamera a 10 bit, i produttori di dispositivi devono eseguire le seguenti integrazioni AIDL HAL della videocamera:

Per ulteriori dettagli sull'output della videocamera a 10 bit in Camera HAL, consulta quanto segue in metadata_definitions.xml:

Per un'implementazione di riferimento di Camera HAL che supporta l'output della videocamera a 10 bit, consulta /hardware/google/camera/devices/EmulatedCamera/hwl.

Convalida

Per convalidare l'implementazione dell'output della videocamera a 10 bit e assicurarti che le app di terze parti possano attivare la funzionalità, ti consigliamo di eseguire le seguenti tre fasi di convalida.

Per la convalida visiva dell'output della videocamera a 10 bit, si presuppone che il dispositivo supporti la visualizzazione HDR (display con più di 1000 nit) e che l'app di visualizzazione video (ad es. Google Foto) supporti la riproduzione di video HDR.

Testare la correttezza funzionale dell'API

Per testare la correttezza funzionale dell'API dell'output della videocamera a 10 bit, esegui i seguenti test CTS, ITS della videocamera e VTS:

Confrontare la videocamera nativa e l'app di terze parti

Ti consigliamo vivamente di assicurarti che i risultati dell'acquisizione di video a 10 bit con un'app di terze parti siano simili, se non identici, a quelli dell'app della videocamera nativa. Ciò significa che le scelte di ottimizzazione, come l'esposizione, l'intervallo dinamico e il colore, devono essere trasferite dall'app nativa alle app di terze parti. Per verificare il comportamento di registrazione video di un'app di terze parti che supporta l'output della videocamera a 10 bit sul tuo dispositivo, utilizza l'app di esempio Camera2Video su GitHub. Le seguenti indicazioni servono a illustrare gli aspetti visibili dell'HDR senza numeri oggettivi, a causa della variabilità di sensori, pannelli, condizioni di visualizzazione e preferenze del fornitore.

Scene suggerite per il confronto

Per confrontare l'app della videocamera nativa e un'app di terze parti, acquisisci video utilizzando diverse scene con l'app della videocamera nativa e l'app di esempio Camera2Video. Di seguito sono riportate le scene suggerite da utilizzare per il confronto:

  • Una scena con illuminazione media o scarsa con un oggetto luminoso, ad esempio una candela o una piccola luce intensa che crea un intervallo di luminosità significativo. In questo modo si conferma il comportamento di esposizione automatica e l'intervallo dinamico.
  • Una scena all'aperto luminosa con colori vivaci e oggetti riflettenti, come i paraurti cromati di un'auto, che creano luci intense. In questo modo si conferma il rendering per le scene luminose con luci ancora più intense.
  • Una scena con intervallo dinamico medio-basso, ad esempio una scena naturale al chiuso in una casa o in un ufficio. In questo modo si conferma che le condizioni di illuminazione meno estreme si comportano come previsto.

Per tutte le scene, ti consigliamo di includere persone e volti per verificare la gestione dell'esposizione, del colore e della tonalità della pelle. La riduzione della variazione tra uno scatto e l'altro semplifica i confronti consecutivi.

Confrontare l'intervallo dinamico standard e l'intervallo dinamico elevato

Per assicurarti che l'utilizzo di un profilo di intervallo dinamico a 10 bit offra un vantaggio percepito rispetto a un profilo di intervallo dinamico standard, confronta le acquisizioni video utilizzando SDR (nessun profilo HDR) con i video HDR per verificare che gli aspetti chiave dell'HDR vengano visualizzati nelle acquisizioni. Per confrontare SDR e HDR, utilizza l' app di esempio Camera2Video e le scene suggerite per confrontare l'app della videocamera nativa e le app di terze parti.

Di seguito sono riportati gli aspetti chiave da verificare nelle scene suggerite. I pannelli di visualizzazione in grado di supportare l'HDR variano in base ai livelli di luminosità (misurati in nit o lumen), pertanto i seguenti numeri sono solo esempi:

  • Nella scena con illuminazione media o scarsa, le luci intense della candela o della piccola luce vengono visualizzate alla luminosità massima per il display (possibilmente fino a 1000 nit) nella clip HDR e alla luminosità massima per SDR (circa 100 nit) nella clip SDR. Nella clip HDR, le luci intense devono risaltare sul display, catturando la percezione dell'utente dell'intervallo dinamico reale della scena. Rispetto alla clip HDR, la clip SDR dovrebbe apparire più piatta e meno luminosa.
  • Nella scena di output luminosa, a seconda dell'ottimizzazione del dispositivo, la clip HDR mostra una differenza evidente nella luminosità dello schermo rispetto alla clip SDR. Per la clip HDR, la luminosità dello schermo per la scena complessiva (a seconda dell'headroom) dovrebbe essere maggiore, ad esempio fino a 800 nit, e ancora di più per le luci intense, come i paraurti cromati, intorno alla luminosità massima.
  • Nell'acquisizione al chiuso con intervallo dinamico medio-basso, le clip HDR e SDR sono simili per colore e tonalità, con l'acquisizione HDR potenzialmente più luminosa dell'SDR. L'HDR non deve essere più scuro dell'SDR. Se le scelte di ottimizzazione lo rendono impossibile, assicurati che il comportamento dell'app di terze parti corrisponda a quello dell'app della videocamera nativa.