Scrcpy是一款免費開源的軟件,支持將安卓端屏幕投影到其他設(shè)備,并支持被投屏設(shè)備對安卓的反向控制。基于ADB工具,安卓端無需安裝任何軟件,延遲低,穩(wěn)定性好。現(xiàn)在,安卓也可投屏到恩智浦i.MX RT1170上。
一、硬件組成
硬件平臺包括:
MIMXRT1170-EVKB
二、軟件框架
軟件包括 i.MX RT1170工程與安卓的Scrcpy兩部分。i.MX RT1170工程基于官方的MCUXpresso SDK開發(fā),其中已提供了Libjpeg和LWIP等第三方庫,無需再從頭移植。
安卓端的Scrcpy官方源碼為https://github.com/Genymobile/scrcpy。
下圖是軟件的整體框架:
具體流程可以分為投屏與控制兩部分:
1、投屏流程:
安卓端通過Video Socket與i.MX RT1170建立UDP連接后,將捕捉的屏幕圖像編碼為JPEG格式并通過Wi-Fi發(fā)送。i.MX RT1170使用uSDHC以SDIO協(xié)議從AW611接收數(shù)據(jù),再使用LWIP庫Socket解析。并使用Libjpeg或FFmpeg庫將接收的JPEG數(shù)據(jù)解碼為 YUV格式。YUV數(shù)據(jù)通過硬件PXP轉(zhuǎn)換為RGB格式,并進(jìn)行縮放、旋轉(zhuǎn)等處理,最終通過ELCDIF或LCDIFv2顯示到LCD屏幕上。
2、控制流程:
i.MX RT1170可接收LCD屏幕的觸摸數(shù)據(jù),并將其轉(zhuǎn)換為對應(yīng)的安卓輸入事件。通過Touch Socket與安卓端建立TCP連接后,將事件發(fā)送給安卓端。安卓端的Scrcpy接收到事件數(shù)據(jù)后,解析事件類型、觸摸點坐標(biāo)等,以此對安卓端進(jìn)行控制。
三、運行項目
投屏與控制數(shù)據(jù)通過網(wǎng)絡(luò)傳輸,因此安卓端與i.MX RT1170需處于同一局域網(wǎng)下。i.MX RT1170支持有線(Ethernet)與無線(Wi-Fi)連接。使用無線連接時,i.MX RT1170可選擇使用熱點(AP)模式或客戶(STA)模式。
對于安卓端,需要打開開發(fā)者選項中的USB調(diào)試選項。使用USB數(shù)據(jù)線連接到電腦后,運行ADB命令啟動Scrcpy服務(wù)。命令行中可指定傳輸圖像的幀率、編碼格式、使能控制等。
四、運行結(jié)果
經(jīng)過長時間測試,目前i.MX RT1170可以穩(wěn)定運行在20FPS(傳輸數(shù)據(jù)尺寸為 800x480px時)。根據(jù)具體應(yīng)用場景,可以調(diào)整ADB命令行參數(shù)來側(cè)重提高流暢性或顯示效果。
小結(jié)
本文聚焦恩智浦i.MX RT1170,利用Scrcpy實現(xiàn)安卓到嵌入式平臺的無線投屏與控制,展示了整體框架與具體流程。希望對大家有所幫助!
-
恩智浦
+關(guān)注
關(guān)注
14文章
5963瀏覽量
114501 -
開源
+關(guān)注
關(guān)注
3文章
3639瀏覽量
43644 -
無線模組
+關(guān)注
關(guān)注
1文章
121瀏覽量
15747 -
安卓
+關(guān)注
關(guān)注
5文章
2150瀏覽量
58502
原文標(biāo)題:安卓<->i.MX RT1170 無線投屏與控制
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
基于i.MX RT1170的兩輪車數(shù)字儀表盤參考設(shè)計 全面的技術(shù)解讀

i.MX RT1170的GPIO外設(shè)的使用
如何禁用i.MX RT1170 MCU中的M4內(nèi)核?
恩智浦i.MX RTxxx系列MCU的特性
i.MX RT1170車規(guī)級產(chǎn)品有AEC-Q100認(rèn)證嗎?
i.MX RT1170自定義引導(dǎo)加載程序,如何在i.MX RT處理器上完成?
恩智浦i.MX RT1170開創(chuàng)GHz MCU時代
恩智浦i.MX RT1170在將該系列帶上了更高的層面
恩智浦推出核跨界MCU的第二款產(chǎn)品i.MX RT1160
來數(shù)數(shù)!這款i.MX RT1170智能廚房解決方案,用到了哪些NXP的黑科技?
I.MX RT1170配套PMIC PF5020使用方法
恩智浦i.MX RT1170 uSDHC eMMC啟動時間

評論