Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje doprovodné aplikace, funkci rozšiřitelnosti pro výrobce fotoaparátů k vytváření vlastních aplikací, které mohou konfigurovat kameru a upravit výchozí nastavení obrázku.
Úvod
Windows 11 poskytuje doprovodnou architekturu aplikace fotoaparátu, která umožňuje výrobcům vyvíjet aplikace s následujícími funkcemi:
Možnost zobrazit nebo upravit stejné výchozí nastavení hodnoty, které stránka nastavení fotoaparátu podporuje (například jas, kontrast, efekty pozadí atd.).
Možnost zaregistrovat, aktualizovat nebo odstranit výchozí nastavení hodnoty pro jiné ovládací prvky fotoaparátu, které jsou známé pro Windows, ale nejsou přístupné prostřednictvím stránky nastavení fotoaparátu (například ovládací prvek Hue).
Možnost zaregistrovat, aktualizovat nebo odstranit výchozí nastavení pro ovládací prvky fotoaparátu, které jsou specifické pro výrobce (například ovládací prvek zapnuto/vypnuto pro vlastní efekt úpravy osvětlení výrobce fotoaparátu).
Když kamera zaregistruje přidruženou doprovodnou aplikaci, přidá se položka na stránku nastavení kamery. Pokud je aplikace nainstalovaná, můžete ji spustit ze stránky nastavení fotoaparátu, jinak se zobrazí odkaz na Microsoft Store, kde si ji můžete stáhnout.
Doprovodné aplikace mají speciální přístup k rozhraní API, které jim umožňuje registrovat, aktualizovat nebo odstraňovat výchozí hodnoty, jako je stránka nastavení fotoaparátu.
Terminologie a požadavky
| termín | Definice |
|---|---|
| Doprovodná aplikace | Vlastní aplikace vyvinutá výrobcem fotoaparátu, která kromě stránky nastavení kamery umožňuje konfiguraci a správu kamery. |
| Aktuální hodnota | Hodnota ovládacího prvku fotoaparátu, který je aktuálně aktivní v isp fotoaparátu a je uložený v dočasné paměti fotoaparátu. |
| Výchozí hodnota | Počáteční hodnota ovládacího prvku fotoaparátu, který je uložený na disku a uložený pro konkrétní kameru, pro konkrétní uživatelský účet na konkrétním počítači. |
| HSA | Aplikace podpory hardwaru, což je rámec podporovaný Microsoftem, automaticky stáhne a nainstaluje aplikace přidružené k hardwaru z Microsoft Store, když je zařízení připojeno. |
| NPU | Jednotka pro neurální zpracování, vyhrazený hardware navržený pro zpracování úloh umělé inteligence s vysokou propustností a efektivitou. |
| Efekty Windows Studio | Kolekce video efektů dostupných na vybraných počítačích s Windows s NPU. |
| UVC | USB Video Class, standardizované rozhraní pro ovládání a streamování z USB připojených kamer. |
Požadavky na doprovodnou aplikaci
Doprovodné aplikace musí být zabalené aplikace s balíčkovou identitou. Doprovodná aplikace musí být také vydána v Microsoft Storu, což umožňuje stránce nastavení fotoaparátu vést zákazníky do Storu, aby aplikaci nainstalovali, pokud ještě není nainstalovaná.
Tradiční desktopové aplikace bez identity balíčku se nedají použít jako doprovodná aplikace.
Doprovodné aplikace jako HSA
Doprovodné aplikace nemusí být také nakonfigurované jako aplikace podpory hardwaru, ale důrazně se doporučuje. HsA jsou speciální aplikace v Microsoft Storu, které jsou přidružené ke konkrétnímu hardwarovému zařízení. Když je toto zařízení připojené k počítači, modul HSA se automaticky stáhne a nainstaluje z Microsoft Storu, pokud je k dispozici.
Přidružení doprovodné aplikace ke kameře
Výrobce fotoaparátu může přidružit doprovodnou aplikaci vyplněním specifického klíče vlastnosti zařízení názvem rodiny balíčků (Package Family Name, PFN) doprovodné aplikace.
| Název | Typ | Údaje |
|---|---|---|
| SCSVCamPfn | REG_SZ | <PFN> |
Pokud chcete identifikovat PFN doprovodné aplikace, spusťte rutinu Get-AppxPackage z PowerShellu, například:
Get-AppxPackage -Name CompanionAppName
Pokud chcete přidružit doprovodnou aplikaci ke kameře, použijte popisovač MSOS v kameře UVC nebo direktivu AddReg v INF ovladače kamery. Například pomocí souboru INF:
[SocCaptureSim.RearCamera.AddReg]
HKR,,SCSVCamPfn,,%AppPFN%
...
[Strings]
AppPFN="Contoso.CameraCompanion_xxxxxxxx00000"
Když je doprovodná aplikace přidružená ke kameře, stránka nastavení fotoaparátu obsahuje odkaz na doprovodnou aplikaci pod nadpisem Související nastavení na stránce nastavení konkrétní kamery.
Pokud už je doprovodná aplikace nainstalovaná, zobrazí se odkaz "Otevřít {název doprovodné aplikace}". Po kliknutí se aplikace spustí.
Pokud doprovodná aplikace ještě není nainstalovaná, zobrazí se odkaz, který spustí Microsoft Store a stáhne a nainstaluje aplikaci.
Kamera může mít přidruženou jenom jednu doprovodnou aplikaci.
Spuštění doprovodné aplikace ze stránky nastavení fotoaparátu
Když stránka nastavení fotoaparátu spustí doprovodnou aplikaci, symbolický odkaz kamery se předává jako kontext prostřednictvím argumentů Application.OnLaunched .
| Důvod | Typ | Údaje |
|---|---|---|
| cameraId | Řetězec | Symbolický odkaz |
Tato funkce umožňuje doprovodné aplikaci zobrazit správná nastavení fotoaparátu v následujících scénářích:
Jedna doprovodná aplikace podporuje více fotoaparátů v jednom systému (například aplikace poskytovaná výrobcem OEM podporuje přední a zadní kamery na tabletu).
Zákazník má dvě stejné (nebo stejné značky) kamery připojené ke svému systému, které spravuje stejná doprovodná aplikace.
Spuštění stránky nastavení fotoaparátu z doprovodné aplikace
Doprovodná aplikace může spustit stránku nastavení fotoaparátu systému Windows pomocí deeplink URI. Další informace najdete v tématu Spuštění stránky nastavení fotoaparátu.
Konfigurace výchozích hodnot z doprovodných aplikací
Doprovodná aplikace může k nastavení výchozí hodnoty aktuálního uživatele použít rozhraní API IMFCameraConfigurationManager. Toto rozhraní API umožňuje doprovodné aplikaci číst všechny nakonfigurované výchozí hodnoty (například výchozí hodnoty nastavené uživatelem pomocí stránky nastavení fotoaparátu), upravovat všechny výchozí hodnoty, registrovat nové výchozí hodnoty nebo odebírat uložené výchozí hodnoty.
Výchozí hodnoty jsou registrovány v systémové databázi jako dvojice identifikátoru GUID vlastnosti KS a odpovídající hodnoty. To umožňuje, aby architektura byla nezávislá na definici vlastnosti KS. Tato flexibilita umožňuje doprovodné aplikaci nastavit, upravit nebo odstranit výchozí hodnoty pro některé z následujících nastavení:
Nastavení, která se dají konfigurovat také pomocí stránky nastavení fotoaparátu (například Jas, Kontrast, Efekty pozadí atd.)
Nastavení pro jiné ovládací prvky fotoaparátu, které jsou známé pro Windows, ale nejsou přístupné prostřednictvím stránky nastavení fotoaparátu (například ovládací prvek Hue)
Nastavení pro proprietární ovládací prvky fotoaparátů výrobců (například ovládací prvek zapnutí/vypnutí pro efekt úpravy osvětlení specifický pro výrobce kamer)
Konfigurace jasu z doprovodné aplikace
Existuje několik způsobů, jak fotoaparát ovládat efektivní jas zachyceného obrázku. Jas může být například zvýšen použitím jednoduchého zesílení na obraz nebo zvýšením doby expozice fotoaparátu.
Systém Windows podporuje zastaralý ovládací prvek Jas (KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS), který byl navržen s jednoduchými ovládacími prvky zesílení. Systém Windows podporuje také ovládací prvek kompenzace expozice (KSPROPERTY_CAMERACONTROL_EXTENDED_EVCOMPENSATION), který je navržený tak, aby ovládl pozitivní nebo negativní předsunutí hodnoty expozice algoritmu automatické expozice fotoaparátu.
Bez ohledu na to, jaký ovladač jasu je kamerou používán, měl by být ve fotoaparátu implementován tak, že když je nastaven na střed, je jas neutrální, a zákazník může upravit hodnotu zvýšením nebo snížením. Pro nejlepší kvalitu obrazu se důrazně doporučuje, aby kamery podporovaly ovládací prvek kompenzace expozice, takže pokud zákazník upraví ovládací prvek Jas na stránce nastavení kamery nebo v doprovodné aplikaci, aby kamera použila pevnou pozitivní nebo negativní korekci expozice, bez ohledu na světelné podmínky kdykoli.
Další informace naleznete na stránce nastavení fotoaparátu pro chování ovládacího prvku Jas na stránce nastavení fotoaparátu na základě toho, který ovládací prvek fotoaparát implementuje. Pokud doprovodná aplikace také nabízí posuvník Jas, je důležité replikovat logiku, aby se zajistila synchronizace mezi posuvníkem Jas na stránce nastavení fotoaparátu a doprovodnou aplikací.
Ukázka doprovodné aplikace propojená níže obsahuje referenční implementaci této logiky.
Monitorování změn aktuálních hodnot v reálném čase
Pokud je doprovodná aplikace spuštěná současně se stránkou nastavení fotoaparátu, je možné, že zákazník může změnit výchozí hodnotu pomocí stránky nastavení fotoaparátu, zatímco doprovodná aplikace je současně spuštěná ve sdíleném režimu, aby se zobrazil náhled. V tomto případě je žádoucí, aby doprovodná aplikace monitoruje změny výchozí hodnoty ovládacích prvků, aby zůstala synchronizovaná.
K tomu může doprovodná aplikace použít IMFCameraControlMonitor ke sledování změn aktuální hodnoty ovládacích prvků (KS Properties), které nás zajímají. K těmto změnám může dojít z následujících důvodů:
Aplikace fotoaparátu (například Microsoft Teams) používá kameru a provádí změnu aktuální hodnoty ovládacího prvku.
Stránka nastavení fotoaparátu používá kameru a provede změnu výchozí hodnoty ovládacího prvku (který také aktualizuje aktuální hodnotu).
Toto rozhraní API se dá použít jako trigger k opětovnému načtení výchozí hodnoty pro řízení zájmu pomocí rozhraní API MMFCameraConfigurationManager a aktualizaci uživatelského rozhraní, pokud se změnily nějaké výchozí hodnoty.
Ukázky doprovodných aplikací
Ukázková doprovodná aplikace je dostupná na GitHubu: Ukázka CameraSettingsExternalSettingsApp. Tato ukázka ukazuje, jak pomocí rozhraní API PRO MMFCameraConfigurationManager změnit výchozí hodnotu pro kontrast, jas a segmentaci pozadí.
Další ukázková aplikace demonstrující, jak pomocí rozhraní API MMFCameraControlMonitor monitorovat změny ovládacích prvků zájmu, je k dispozici na GitHubu: Ukázka ControlMonitorApp.
Viz také
Ukázka aplikace CameraSettingsExternalSettingsApp
KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS
KSPROPERTY_CAMERACONTROL_EXTENDED_EVCOMPENSATION