Титла: Използване на GSM-a като web камера в комютъра. Публикувано от: Naka в Nov 28, 2021, 09:42 Тия дни се мъчих да включа камерата на умнофона към компютъра така, че да се вижда от всички линукс десктоп приложения, все едно че е е стандартна стационарна usb веб камера.
Например вижда се от Google Meet, което е много актуално при сегашното online обучение. Разбира се всеки може да си купи обикновенна убс камера за 30-70лв., но не това е целта. Качеството на GSM камерата е съпоставимо (понякого и доста по-добро) с качеството на тези евтинийки. Разбира се ако някой иска наистина хубава камера, с висока светлочуствителност, нисък шум, висока революция, то трябва да похарчи около 170++лв за качествена век камера, запример това: Logitech C922 Pro Stream. Инструкции има много по нета, но са разхвърляни..някои разчитат даже на специaлни прoграми, които трябва да се инсталират на компютъра и да емулират /dev/videoX Как става: –––––––– 1. Необходимо е на GSM-a да се инсталира програма, която го превръща в IP wifi камера. Необходимо е и стабилен (домашен) wifi, който да държи поне до 1.5-2 МБaйта/сек. Необходимо е задаването на статичен ip адрес на телефона (не по DHCP) - тук в примерите е 192.168.1.16. Всички тези gsm апликации при стартирането си изписват адреса на стрима: например rtsp://192.168.1.16:8080/video/h264 CamON -------- https://play.google.com/store/apps/details?id=com.spynet.camon&hl=bg&gl=US http://192.168.1.16:8080/video/mjpeg rtsp://192.168.1.16:8080/video/h264 http://192.168.1.16:8080 (веб интрфейс) Работи много хубаво. * поддържа 30 fps (950x530) на rtsp;// * Не изкривявя цветовете на ръкописното писанe (синьо, не става черно) въпреки, че се гледа отдалече. * има опция за задаване на Битрейта при rtsp:// (200k като че ли е оптимално) IP Camera 沈垚 / ShenYao China - китайска , иконка мръсно жълто, охра !!! --------------------- https://play.google.com/store/apps/details?id=com.shenyaocn.android.WebCam&hl=en_US&gl=US rtsp://admin:admin@192.168.1.16:8554/live Стрима е с парола. Също работи много хубаво. Има много опции, поддържа големи режими. DroidCam ------------ https://play.google.com/store/apps/details?id=com.dev47apps.droidcam&hl=bg&gl=US Интерфейс: http://192.168.1.16 Свободната версия е ограничена до 640x480 Всички в нета цитират само DroidCam, тя е нещо като стандарт, но не съм очарован. Ако някой иска да я пробва трябва да си я купи, но безплатната не става за нищо. 2. Инсталиране на драйвера v4l2loopback (наричат я още факе камера), който емулира/създава /dev/video0 modprobe v4l2loopback lsmod | grep v4l2 v4l2loopback 45056 0 videodev 286720 1 v4l2loopback в резултат на зареждането на драйвера v4l2loopback в /dev се появява факе файл /dev/video0 cd /dev ls -l crw------- 1 root root 10, 238 Nov 19 22:29 vhost-net crw------- 1 root root 10, 241 Nov 19 22:29 vhost-vsock crw-rw----+ 1 root video 81, 0 Nov 19 22:47 video0 crw-rw-rw- 1 root root 1, 5 Nov 19 22:29 zero naka@debian11:/dev$ su chmod a+rw video0 (иначе някои клиентски приложения не работят, заради групата video) 3. Лепилото между Ip стрима и /dev/video0 CamON -------- Код: ffmpeg -i http://192.168.1.16:8080/video/mjpeg -r 30 -vf format=yuv420p -f v4l2 /dev/video0 IP Camera 沈垚 / ShenYao ---------------------------- Код: ffmpeg -i rtsp://admin:admin@192.168.1.16:8554/live -r 60 -vf format=yuv420p -f v4l2 /dev/video0 4. Тестване cheese или Webcamoid, но най-добре: ffplay /dev/video0 Вече трябва Google meet (или която и да друга програма) да опознае факе камерата като /dev/video0 4. Подробности/още Опцията !!! -r 60 или -r 30 е много важна защото греши (изходния) фрeим рейт, забива или не се конектва. Без нея изходния фрейм рейт го дава много....хиляди и флудва драйвера!!!! (входния фрейм рейт си е ок - такъв какъвто идва от стрима rtsp://....) --- Други възможни колор формати за video for linux (-vf format=yuv420p) Но смисъл от задаването им няма, няма да стане по-качeствено, защото входния ip стим, така и такa си е в yuv420p ----------------------------------------------- yuv420p (хоризонталната хрома е 1/2 от яркостта, вертикална хрома липсва =0) yuv422p (хоризонталната хрома е 1/2 от яркостта, вертикална хрома e 1/2 от яркостта) rgb24 (без компресия на color-space-a) --- В howto не е описано как да направим кърнелския модул v4l2loopback, да се зарежда автоматично при рестарт. Не е оправено и проблема с пермишъните на /dev/video0 (и групата video). Според системата всеки да се оправя. --- В дебиан кърнелсия модул v4l2loopback идва от пакета v4l2loopback-dkms --- В Центос7 и Федора <32 такъв пакет липсва. Има за Центос8 и Федора 32. Има проект: https://github.com/umlaeute/v4l2loopback но той не се компилира под кърнел 3.10.0 (Центос7) дава някава грешка с липсващи кърнелски хедъри за колорспейса. За да се пусне под Центос7 може да се ползва това (мъничко по-стари версии): http://sources.buildroot.net/v4l2loopback/ v4l2loopback-0.12.2.tar.gz 2019-Jun-19 20:39:57 47.9K application/x-gtar-compressed v4l2loopback-0.12.3.tar.gz 2020-Jan-21 20:44:47 48.8K application/x-gtar-compressed v4l2loopback-0.12.4.tar.gz 2020-Apr-10 20:58:02 50.1K application/x-gtar-compressed v4l2loopback-0.12.5.tar.gz 2020-Jun-17 06:40:09 50.2K application/x-gtar-compressed v4l2loopback-v0.10.0.tar.gz 2017-Jun-21 00:05:09 45.8K application/x-gtar-compressed v4l2loopback-v0.12.0.tar.gz 2018-Nov-08 20:06:43 47.5K application/x-gtar-compressed v4l2loopback-v0.12.1.tar.gz 2019-Apr-07 14:08:49 47.7K application/x-gtar-compressed v4l2loopback-v0.12.2.tar.gz 2019-Jun-01 12:45:59 47.9K application/x-gtar-compressed Последната с която се компилира правилно и работи е: v4l2loopback-0.12.4.tar.gz (2020-Apr-10) --- Оптималният бит рейт за rtsp:// е около 200-300кбайта/сек Например в CamOn може да се задава. http:// стимовете обаче ползват mjpeg и при тях (при движение) бит рейта може да скочи до 1.2MB/сек. Оптималната резолюзия е малко по-малка от 1280x720 С тези приграми може да се постигне и 1280x720 X 30fps но му е малко тежичко... --- Някои от андроидските пишат, че можело да пуснат и h265 (HEVC) стрим, но аз не можах да го пусна. Казва че тел. нямал хардуерните възможности... Може би платените версии. --- Не успях да пусна да използва многото камери (3-4), дето са поникнали като пришки на гърба на новите телефони. Тези програми, разпознават само едната (втората). Би трябвало с всичките да стане много качествено. Може би някои други програми или платените им версии...... За китайската програма IP Camera Pro 沈垚 ($2) но платената и версия пише: It supports multi-lens selection on Android 9 and above. --- Ако някой знае друга алтернатива на ffmpeg.... ще се радвам ако я сподели. Аз не успях с mplayer/mencoder нито с vlc (конзолно) -- разправят, че можело също с графичното vlc. КРАЙ Титла: Re: Използване на GSM-a като web камера в комютъра. Публикувано от: go_fire в Nov 28, 2021, 09:57 prodylvawa ...... Извинявай, че задавам тъпи въпроси, преди да си довършил „Как-да“-то. Но, каква е целта на това упражнение? Да вижда даскала, че ученика пише наистина контролните си? Титла: Re: Използване на GSM-a като web камера в комютъра. Публикувано от: Naka в Nov 28, 2021, 10:03 prodylvawa ...... За спорта...Те даскалите и учениците си знаят за какво им е...И други чат програми ползват веб камери, не само Google Meet. А и защото много трудно го събрах това howto - особенно с частта ffmpeg -i ... Никъде го нямаше това описано, само на едно единствено място, забутано в някакъв форум, някой беше пуснал подобен ред..та се усетих как става, почерпих идеята и го доработих до работещ варянт. Така и така го написах за мене си защо да не го пусна тук....На някой може да му е от полза. Титла: Re: Използване на GSM-a като web камера в комютъра. Публикувано от: stancho_25 в Dec 13, 2021, 12:25 Само да допълня малко за DroidCam... Лично аз от страна на телефона ползвам DroidCam OBS ($2), от което общо взето съм по-доволен въпреки стандартната резолюция. От страна на компютъра е необходим самия OBS Studio ($2) към който се добавя съответно плъгин, играещ ролята на клиент. В последните версии стрийм потока създаден в него освен да се изпрати в някоя социалка или платформа, може да се излъчва и през фейк камерата, която си създава. Това може би е малко овърхед, ако се ползва само за вебкамера, но поне за мен е бързо и лесно с няколко клика да я стартирам когато ми трябва. Пък и дава малко повече възможности за настройки на самото видео.
Поздрави :) |