Android като уеб камера UVC на Windows: качество, фокус и латентност

  • Android 14 включва услугата DeviceAsWebcam, за да покаже камерата на мобилния телефон като стандартна UVC уеб камера чрез USB на Windows и други системи.
  • Качеството и латентността зависят от форматите (MJPEG или YUYV), резолюцията, USB честотната лента и, при безжични връзки, стабилността на мрежата.
  • Windows 11 ви позволява да използвате телефони с Android като камера, свързана чрез Mobile Link, създавайки виртуална камера без нужда от кабели или допълнителен софтуер.
  • Ако вашият мобилен телефон или компютър не поддържа тези вградени функции, приложения на трети страни като DroidCam или Iriun все още са валидна алтернатива за използване на Android като уеб камера.

UVC уебкамера

Ако Камерата на лаптопа ви ужасна ли е или вашият компютър дори няма уеб камера?, използвайте мобилния си телефон като уеб камера Може да ви измъкне от затруднено положение… и с много по-добро качество на изображението. В днешно време не говорим само за решения със странни приложения: Android 14, Google Pixel и Windows 11 направиха огромна крачка напред в използването на телефона ви като „истинска“ уеб камера.

В тази статия ще видим как всичко това работи вътрешно, каква е разликата между използването на Android като UVC уеб камера чрез USB и използване чрез Mobile Link на Windows 11Какви опции имате, ако телефонът ви е по-стар, и какво трябва да имате предвид, за да постигнете най-доброто качество, фокус и латентност? Идеята е да ви помогнем да изберете решението, което най-добре отговаря на вашето устройство, без да се подлудявате.

Какво е UVC и защо има значение, когато използвате Android като уеб камера?

Когато чуете за UVC, мислете за него като за един вид „стандартен език за уеб камери“. UVC устройство (USB видео клас) Представя се на компютъра като всяка нормална USB уеб камера: Windows, Linux, macOS или ChromeOS я разпознават без странни драйвери и тя се появява в системата като просто още една камера.

В Android 14 и по-нови версии, Google добави официална поддръжка за работа на телефона като... UVC джаджаВътрешно всичко се върти около системна услуга, наречена DeviceAsWebcam, който е отговорен за преобразуването на сигнала от камерата в UVC видео поток и експонирането му през USB порта.

Този поток достига до компютъра чрез UVC драйвера на операционната система, който в Linux се превежда например в възли на устройства от тип /dev/видео*От гледна точка на Windows, нова камера просто се появява в панела с видеоустройства, без да е необходимо да инсталирате нищо допълнително.

Android 14

Как работи Android 14 вътрешно: услугата DeviceAsWebcam

Започвайки с Android 14 QPR1, операционната система официално интегрира възможността за използвайте самото устройство като USB уеб камераЦялата тази функционалност е оркестрирана от рамковата услуга, наречена DeviceAsWebcam, който се занимава както с техническите аспекти, така и с потребителското изживяване.

Потокът започва, когато потребителят отвори USB настройки на Android и изберете опцията за използване на мобилния ви телефон като уеб камера. В този момент приложението Настройки уведомява системата чрез класа USB Manager, че функцията FUNCTION_UVC трябва да бъде активирана. Оттам се стартират няколко вътрешни компонента.

Процесът, казано по-просто, работи така: системният сървър (системен_сървър) извиква HAL на USB устройството, използвайки метода setUsbFunctions да поиска активиране на UVC функцията. След това HAL на устройството конфигурира UVC драйвера на устройството, използвайки ConfigFS, настройвайки типичната функция, наречена uvc.0, точно както се прави с други режими като MTP или ADB.

Когато HAL завърши конфигурацията и върне потвърждението, системата издава излъчване, получено от услугата DeviceAsWebcamВ този момент услугата може да инициира частта с камерата, да управлява потребителския интерфейс и да координира предаването на видео. UVC драйверът всъщност започва да предава, когато хостът (например вашият компютър с Windows) договори формата и активира стрийминга чрез собствения си видео драйвер.

Ключова част от преживяването е предварителната дейност (DeviceAsWebcamPreview.javaТози екран позволява на потребителя да го види на мобилното си устройство. как ще изглежда изображението, преди да стигне до компютъраи предлага контроли за фина настройка на резултата, без да се разчита на приложението за видеообаждания.

Контроли за предварителен преглед, фокус и камера в Android 14

Дейността за предварителен преглед, включена в DeviceAsWebcam, не е просто обикновен прегледник: тя добавя няколко контроли, предназначени да ви позволят Регулирайте кадрирането и фокуса на уеб камерата без да се затруднявате със сложни менюта на компютъра.

От този преглед можете да изберете дали искате да предавате с предна камера или задна камерапревключване между тях в движение. Това е важно, защото и двете камери трябва да поддържат еднакви резолюции и FPS, така че превключването е прозрачно за хост системата.

Имате и контрол на мащабирането, обикновено с плъзгач или малки бутониТази функция ви позволява да увеличавате или намалявате мащаба, без физически да премествате телефона си. Това ви дава място да регулирате кадрирането, когато сте ограничени от пространството на работния си плот.

Друг силен момент е възможността да докоснете определена област от визуализацията, за да насочете фокуса си към тази конкретна точкаАко искате лицето ви да е перфектно остро или обект, който показвате на камерата, да е ясно видим, просто докоснете съответната област от изображението на телефона си.

Всичко това се интегрира с обичайните възможности за достъпност на Android, като например TalkBack, подобрена достъпност или гласов достъпПо този начин хората със зрителни или двигателни затруднения могат да продължат да настройват камерата на мобилния си телефон, без да пропускат забавлението.

Android като уеб камера UVC на Windows: качество, фокус и латентност

Ядро, HAL и ConfigFS: от какво се нуждае Android, за да бъде стабилна UVC уебкамера

За да работи всичко горепосочено, не е достатъчно системата да има красиви менюта: Ядро на Android и хардуерни слоеве Те трябва правилно да поддържат UVC режим. От Android 14 насам, образът на генеричното ядро ​​(GKI) се предлага с Драйверът за UVC притурка е активиран по подразбиранекоето значително улеснява живота на производителите.

В HAL слоя на USB устройството (този, който комуникира между рамката и ядрото), Android 14 добави нова UVC функция в интерфейса. GadgetFunction.aidlРолята на този HAL е сравнително проста: когато бъде поискано да активира UVC, той създава необходимите символни връзки в ConfigFS (например, чрез свързване на „uvc.0“ в настройките на притурката) и гарантира, че рекламираните VID/PID комбинации са подходящи за стандартна уеб камера.

Сложната логика на UVC (видео формати, резолюции, FPS и др.) не е имплементирана в HAL, а в инициализацията на доставчика и в самата услуга. DeviceAsWebcamHAL просто представя функцията като още едно парче от пъзела, точно както прави с MTP, ADB или други USB режими.

Накрая, за да може устройството правилно да обяви кои формати и размери поддържа, производителят трябва да конфигурира ConfigFS с подходящите UVC описанияТова обикновено се прави от инициализиращи скриптове на производителя, които създават директории, записват параметри като резолюция или максимален размер на кадъра и декларират наличните честоти на кадрите.

Качество на изображението, поддържани резолюции и ограничения на честотната лента

Една от най-забележимите промени при преминаване от вградена уеб камера на лаптоп към мобилен телефон е... драматично подобрение в качеството на изображениетоТова качество обаче е ограничено от USB честотната лента и начина, по който са конфигурирани UVC форматите.

  • USB 2.0Теоретичната скорост е 480 Mbps (около 60 MB/s). В действителност няма да използвате цялата тази честотна лента само за видео, така че е най-добре да бъдете консервативни. Като ориентир, ако се стремите към 30 FPS, максималният размер на кадър трябва да е около 2 MB, а ако се стремите към 60 FPS, в идеалния случай трябва да се стремите към около 1 MB на кадър.
  • DeviceAsWebcamУслуга, която поддържа предимно два вида видео поток: компресиран MJPEG и некомпресиран YUYV.
  • Некомпресирано видео (YUYV)Всеки пиксел заема 2 байта, така че скоростта на пренос на данни се увеличава бързо. При 30 FPS, разумен лимит за USB 2.0 е 720p, защото по-високите резолюции започват да консумират твърде много честотна лента. Предимството е, че има по-малко компресионна работа на мобилното устройство (намаляване на латентността и натоварването на процесора).
  • MJPEGАко приемем приблизително съотношение на компресия 1:10 в сравнение с YUV, е възможно дори да се предава 4K през USB 2.0, с размер на кадрите около 1,18 MB. За повечето потребители обаче 1080p или 720p са повече от достатъчни и се поддържат по-добре от приложенията за видео разговори.

Google препоръчва и двете основната задна камера, както и предната камера Те поддържат всички рекламирани резолюции и FPS, защото интерфейсът за предварителен преглед ви позволява да превключвате между тях, без да поставяте потока на пауза.

Препоръчителни резолюции и активиране на режим на уеб камера на Android

За съвместимост с Windows и други платформи има набор от „класически“ резолюции Тези резолюции работят много добре с почти всички приложения: 480p (640×480), 720p (1280×720) и 1080p (1920×1080). Това са резолюциите, които най-често се очакват от инструменти като Zoom, Teams и Google Meet.

По отношение на честотата на кадрите, обичайната практика е да се задава минимум 30 кадъра в секундаОсвен това, подобрението в плавността е по-малко забележимо от увеличението на потреблението на ресурси, а много приложения за видеоконферентна връзка са проектирани да работят с 30 FPS.

За да се появи режимът на уеб камера в системата, производителят трябва да активира свойство в компилацията на Android: ro.usb.uvc.enabled=trueТова обикновено се намира във файла device.mk на вашата конфигурация. Когато това свойство е активирано, USB предпочитанията ще показват опция „Уеб камера“ в менюто за използване на USB.

В допълнение към активирането от интерфейса, по време на тестване е възможно да се принуди UVC режим чрез ADB с команда svc usb setFunctions uvcТова позволява на разработчиците и тестерите да се уверят, че хардуерът и ядрото работят правилно, без да разчитат единствено на потребителските менюта.

Google предоставя и ръководства за проверка, като например специфични тестове в CTS (Compatibility Test Suite), които потвърждават, че устройството Ясно обявява форматите, размерите и FPS.Препоръчително е да се извърши ръчно тестване с различни приложения и операционни системи, за да се открият редки несъвместимости.

Консумация на енергия, температура и стабилност по време на дълги сесии

Използването на мобилния ви телефон като уеб камера не е съвсем лесна работа: поддържането на камерата включена и непрекъснатото изпращане на видео може да доведе до прегряване на устройството. Прегрява твърде много и бързо изтощава батерията.особено ако връзката не осигурява достатъчно захранване на терминала.

За да контролира това, услугата DeviceAsWebcam може да активира следата в HAL на камерата. STREAM_USE_CASE_VIDEO_CALL, специфичен режим за видео разговори, който помага за оптимизиране на консумацията на енергия, без да се жертва прекалено много качество.

Ако енергията все още е проблем, има възможност да се прибегне до стриймове от специфични физически камери (например, използване на по-малко взискателен вторичен сензор), конфигуриран чрез наслагвания на ресурси по време на изпълнение (RRO). Това решение намалява консумацията на енергия, но също така значително понижава качеството и може да бъде объркващо за потребителя, така че се счита за крайна мярка.

При сесии с продължителност няколко часа, освен вътрешната топлина, е важно да се следи и натоварването: в идеалния случай то трябва да бъде телефонът да е включен в електрически контакт Докато го използвате като уеб камера, махнете калъфа, ако е възможно, за да подобрите разсейването на топлината. Поддържането на ниски настройки на яркостта на екрана също помага за намаляване на общата температура.

По отношение на стабилността, корекциите, въведени в UVC драйвера на ядрото, са решили предишни проблеми. трептящи и повредени кадриВъпреки това, все още има любопитни случаи, като например някои несъвместимости с USB 3.0+ кабели, свързани към macOS хостове, поради грешка в UVC драйвера на Apple, който не зависи директно от Android.

телефонна връзка

Android като безжична уеб камера на Windows 11 с Mobile Link

Ако устройството ви не е Pixel или все още няма активиран UVC от производителя, Windows 11 предлага друг начин: Използвайте вашия Android телефон като безжична уеб камера чрез интеграция с Мобилна връзка (Връзка към Windows на телефона).

Тази функция изисква Компютър с Windows 11 или по-нова версияактуализирана до версия, която включва функцията „свързана камера“, и телефон с Android 9.0 или по-нова версия с Приложение за Windows Link в съответната версия (например 1.24022 или по-нова). На много телефони на Samsung, OnePlus и други производители, Link to Windows е предварително инсталиран.

Сдвояването става рутина: отваряте Mobile Link на вашия компютър, посочвате, че искате да сдвоите телефон с Android и системата показва QR код, който трябва да сканирате с мобилния си телефонАко приложението няма собствен четец на QR кодове, можете да използвате всеки четец на QR кодове, който отваря връзката във вашия браузър. Основното изискване е да използвате същия акаунт в Microsoft и на двете устройства.

След като се свърже, Mobile Link започва да показва функции в Windows, като например Синхронизиране на SMS, обаждания, известия и достъп до снимки или приложенияНастройките на уеб камерата обаче не се конфигурират тук, а в общите настройки на Bluetooth и устройството на операционната система.

В секцията „Мобилни устройства“ в настройките на Windows 11 ще видите сдвоения си телефон и превключвател за „използване като свързана камера“Когато е активиран, мобилният телефон става достъпен като видео източник за системата, която вътрешно създава „виртуална Windows камера“, която се захранва от потока на телефона.

Ключови стъпки за използване на мобилния ви телефон като уеб камера в Windows 11

След като сдвояването е завършено и превключвателят „камера свързана“ е активиран, следващата стъпка е да кажете на приложенията си, че искате да използвате телефона си, а не тромавата уеб камера на лаптопа си. Windows 11 разкрива Виртуална камера на Windows като всяко друго устройство, така че просто трябва да го изберете в Zoom, Teams, Google Meet (от браузъра) или OBS.

Когато дадено приложение започне да използва тази виртуална камера, компютърът изпраща заявка до телефона. Телефонът ще се събуди, ако е заключен, и ще покаже много опростен контролен панел, от който можете превключване между предна и задна камера или временно паузиране на видеото без да докосвате нищо по компютъра.

Едно от големите предимства на този подход е, че всичко работи по безжично, използвайки връзката между мобилния телефон и компютъра (WiFi, Bluetooth и инфраструктурата Link to Windows), така че не се нуждаете от кабели. Това ви дава голяма гъвкавост при поставянето на устройството, стига покритието да е добро.

На практика латентността обикновено е ниска и повече от достатъчна за нормални видео разговори, стига да имате прилична WiFi мрежа, за предпочитане на 5 GHzЛатентността може да се увеличи, ако има голямо претоварване на мрежата, така че е най-добре да се избягват бавни връзки или връзки, споделени с много устройства.

За да се възползвате от тази функция, е важно да се уверите, че Bluetooth на мобилния телефон и компютъра са активирани и сдвоенизащото функцията за свързана камера се нуждае от този слой, за да управлява разрешенията, завъртането на екрана и други контролни сигнали, в допълнение към изпращането на видео.

Алтернативи с приложения на трети страни: DroidCam, Iriun, IP Webcam и други

Не всеки има Android 14, UVC активиран или модерна версия на Windows 11. В тези случаи все още има по-стари решения, които превръщат телефона ви в уеб камера, използвайки приложения на трети страни, много популярен от години.

DroidCam

Предлага се за Android и iOS, с клиенти за Windows и Linux. DroidCam Това е една от най-популярните опции. Вместо да се разчита на оригиналния UVC, Той инсталира собствен драйвер на компютъра, който се представя на системата като виртуална уеб камера.докато мобилното приложение изпраща видеото (и, ако желаете, аудиото) чрез WiFi или USB.

Типичната употреба на DroidCam включва инсталиране на приложението от Google Play, предоставяне на разрешения на камера, микрофон и мрежаи след това инсталирайте клиента на вашия компютър от уебсайта на разработчика. В Windows инсталаторът може също да добави звуков драйвер, за да използва микрофона на телефона като аудио вход в приложенията.

Ако изберете WiFi, приложението на мобилното ви устройство показва IP адрес и порт който трябва да въведете в настолния клиент. Ако предпочитате USB, можете да използвате ADB и специфичен режим, който пренасочва трафика по кабела, което обикновено намалява латентността и избягва проблеми с локалната мрежа.

Ириун уеб камера

Ириун уеб камера Работи с много подобен подход: Мобилният телефон предава видео през мрежата или кабела, а компютърът инсталира компонент, който представя сигнала като просто още една уеб камера. Не е толкова „чист“ като оригиналния UVC, но все пак е напълно валиден, ако вашият хардуер или операционна система не поддържат съвременни опции.

С всички тези части, използвайки a Android като UVC уеб камера на Windows, или чрез USB с вградена поддръжка, или безжично с Mobile LinkТова се превърна в напълно жизнеспособен вариант за ежедневна работа, стрийминг или онлайн обучение. Ако мобилният ви телефон е сравнително модерен, имате достатъчно възможности да постигнете по-добро качество, по-добър фокус и много по-ниска латентност в сравнение с вградената уеб камера на вашия лаптоп, избирайки между вградени решения или външни приложения в зависимост от вашата версия на Android или Windows и предпочитания от вас тип връзка.

Мобилно устройство с Android като уеб камера за Windows 11
Свързана статия:
Мобилно устройство с Android като уеб камера в Windows 11: изисквания, вградено активиране и алтернативи