[問題] 手機是怎麼當webcam的?

作者: OPliao (OPman)   2019-03-15 17:53:25
各位好 請問android手機當作webcam的開發原理是什麼
(這裡就先不提哪款APP)
手機端:安裝app,開啟USB偵錯,連接模式選PTP
PC端:安裝軟體,安裝driver
之後就可以透過傳輸線當作webcam
以下是幾個疑問(很久沒碰android, 問題有錯還請指教)
1. 為什麼選PTP模式可以傳輸影像? 我查詢MTP,PTP都是用來傳檔案的。
2. 電腦端安裝的driver是UniversalAdbDriver,所以原理跟adb有關囉?不過我查詢adb的功能只看到像是安裝APK, 查詢設備, 截圖, 錄影等功能,那麼是如何透過adb來把即時影像傳輸的?這部分是app的功能?
3. 上面提到的universaladbdriver好像是把google提供的包裝起來?那如果要從官方下載安裝,要到哪裡找?
4. 電腦端是怎麼拿到影像的?(這部分可能跟android無關,有人知道也請分享~)
以上知道任何一個,都可以留言分享
謝謝各位~
作者: y3k (激流を制するは静水)   2019-03-16 03:04:00
應該就透過NDK 使用類似libusb之類的東西跟PC driver溝通阿
作者: OPliao (OPman)   2019-03-16 09:27:00
你說的應該是電腦端的程式? 那開啟手機相機傳影像這方面有相關資訊嗎
作者: y3k (激流を制するは静水)   2019-03-17 00:23:00
libusb跟ndk就是寫在Android這端的阿
作者: v00623 (阿哩他命EX PLUS)   2019-03-17 10:15:00
剛剛查了NDK才知道是什麼,所以以一般java寫法是沒辦法達到此功能嗎?
作者: y3k (激流を制するは静水)   2019-03-17 10:27:00
這種會直接Access到硬體的功能 絕大多數會需要NDK就算你不是要寫Library也一樣 Java"或許"可以簡單的在硬體上做一些操作 但是複雜一點的功能在效能跟資源上會搞死你
作者: OPliao (OPman)   2019-03-17 20:18:00
了解,所以在app這邊可能是使用ndk存取硬體與driver溝通,那想請問我內文中提到的driver是google提供的嗎,就是所謂adb driver,不過我安裝的似乎是第三方包裝好for大部分手機的版本,這類driver應該是google或各大手機商提供的?
作者: y3k (激流を制するは静水)   2019-03-18 08:59:00
這我雖然沒寫過但覺得不是 因為adb跟mtp這類功能明顯可以同時跑在一個裝置上 driver應該是你自己的cam接收driver或是像UVC等generic的driver
作者: bab7171   2019-03-22 19:58:00
手機上架個webrtc,電腦用網頁看,這樣開發快
作者: natsu0813 (terence)   2019-06-05 02:19:00
直接串webrtc最快

Links booklink

Contact Us: admin [ a t ] ucptt.com