1、OpenHarmony3.1的分布式硬件管理框架
簡(jiǎn)介:分布式硬件管理框架是為分布式硬件子系統(tǒng)提供信息管理能力的部件。分布式硬件管理框架為分布式硬件子系統(tǒng)提供統(tǒng)一的硬件接入、查詢和使能等能力。
其系統(tǒng)架構(gòu)圖如下圖所示:
硬件接入管理(AccessManager):硬件接入管理模塊對(duì)接設(shè)備管理(DeviceManger)子系統(tǒng),用于處理設(shè)備的上下線事件響應(yīng)。
硬件資源管理(ResourceManager):對(duì)接分布式數(shù)據(jù)服務(wù),用于存儲(chǔ)信任體系內(nèi),本機(jī)和周邊設(shè)備同步過來的設(shè)備硬件信息。
分布式硬件部件管理(ComponentManager):對(duì)接各分布式硬件實(shí)例化的部件,實(shí)現(xiàn)對(duì)分布式硬件的動(dòng)態(tài)加載和使能/去使能等操作。
本地硬件信息管理(LocalHardwareManager):用于采集本地硬件信息,并通過ResourceManager進(jìn)行硬件信息的持久化存儲(chǔ);同時(shí),通過對(duì)接硬件驅(qū)動(dòng),用于感知本地硬件的插拔等操作,感知是否新增或移除可用硬件,將動(dòng)態(tài)變化的硬件設(shè)備也納入分布式硬件管理。
部件加載管理(ComponentLoader):用于解析部件配置文件,按需加載部件驅(qū)動(dòng)的實(shí)現(xiàn)so,獲取驅(qū)動(dòng)外部接口函數(shù)句柄以及實(shí)現(xiàn)版本,供其他業(yè)務(wù)使用。
版本管理(VersionManager):用于管理超級(jí)終端內(nèi),各個(gè)設(shè)備的分布式硬件平臺(tái)和分布式硬件部件的版本號(hào),供分布式硬件業(yè)務(wù)各個(gè)部件業(yè)務(wù)使用。
2、OpenHarmony3.1的分布式屏幕
簡(jiǎn)介:分布式屏幕是一種屏幕虛擬化能力,支持用戶指定組網(wǎng)認(rèn)證過的其他OpenHarmony設(shè)備的屏幕作為display的顯示區(qū)域。在分布式硬件子系統(tǒng)中,分布式屏幕組件提供跨設(shè)備屏幕能力調(diào)用,為OpenHarmony操作系統(tǒng)提供系統(tǒng)投屏、屏幕鏡像、屏幕分割等能力的實(shí)現(xiàn)。
系統(tǒng)架構(gòu)如下圖所示:
屏幕區(qū)域管理(ScreenRegionManager):管理主控端映射在被控端屏幕上的顯示區(qū)域的狀態(tài),包括為顯示區(qū)域指定顯示的display,設(shè)置顯示區(qū)域的寬高,解碼類型等參數(shù)。
分布式屏幕管理(DScreenManager):管理被控端屏幕的參數(shù)和狀態(tài),負(fù)責(zé)主控端相關(guān)對(duì)象的創(chuàng)建和銷毀。
屏幕服務(wù)(ScreenService):分布式屏幕主控端SA服務(wù)和分布式屏幕被控端SA服務(wù),負(fù)責(zé)處理分布式硬件管理框架的IPC調(diào)用。
軟總線適配器(SoftbusAdapter):對(duì)接軟總線傳輸接口,為屏幕圖像、輸入事件等提供封裝的統(tǒng)一調(diào)用接口,實(shí)現(xiàn)設(shè)備間的流數(shù)據(jù)、字節(jié)數(shù)據(jù)傳輸和交互。
屏幕傳輸組件(ScreenTransport):分布式屏幕傳輸模塊,實(shí)現(xiàn)屏幕圖像數(shù)據(jù)編碼、解碼、發(fā)送、接收。
屏幕代理客戶端(ScreenClient):屏幕圖像顯示代理客戶端,用于在設(shè)備上顯示其他設(shè)備投射過來的屏幕圖像數(shù)據(jù)。
3、OpenHarmony3.1的分布式手寫板
1.介紹
基于TS擴(kuò)展的聲明式開發(fā)范式開發(fā)一個(gè)分布式手寫板應(yīng)用。涉及的OS特性有分布式拉起和分布式數(shù)據(jù)管理,使用這兩個(gè)特性實(shí)現(xiàn)不同設(shè)備間拉起與筆跡同步,即每臺(tái)設(shè)備在書寫的時(shí)候,連接的其他設(shè)備都能實(shí)時(shí)同步筆跡,效果圖如下:
2.代碼結(jié)構(gòu)
整個(gè)工程的代碼結(jié)構(gòu)如下:
common:存放公共資源
media:存放圖片
model:存放數(shù)據(jù)模型類
KvStoreModel.ts:分布式數(shù)據(jù)存儲(chǔ)類
RemoteDeviceModel.ts:遠(yuǎn)程設(shè)備類
pages:存放頁面
index.ets:主頁面
config.json:配置文件
4、OpenHarmony3.1的分布式相機(jī)
簡(jiǎn)介:分布式相機(jī)是多個(gè)設(shè)備的相機(jī)同時(shí)協(xié)同使用的能力。分布式相機(jī)組件是為分布式硬件子系統(tǒng)提供這一能力的組件。本組件不直接對(duì)接應(yīng)用,只向分布式硬件框架子系統(tǒng)提供C++接口。應(yīng)用可以通過相機(jī)框架的接口使用分布式相機(jī)組件操作其他設(shè)備的Camera,使用方式與本地相機(jī)一致。
其系統(tǒng)架構(gòu)圖如下圖所示:
分布式相機(jī)接口(DistributedCameraSDK):為分布式硬件管理框架提供超級(jí)終端虛擬Camera使能/去使能能力,以及相機(jī)狀態(tài)。
分布式相機(jī)主控端生命周期管理(DistributedCameraSourceMgr):通過狀態(tài)機(jī)管理主控端Camera狀態(tài),負(fù)責(zé)主控端相關(guān)對(duì)象的創(chuàng)建銷毀,以及兩端的參數(shù)協(xié)商。
分布式相機(jī)被控端生命周期管理(DistributedCameraSinkMgr):管理被控端Camera狀態(tài),負(fù)責(zé)被控端相關(guān)對(duì)象的創(chuàng)建銷毀,以及兩端的參數(shù)協(xié)商。
通道模塊(Channel):通過軟總線連接主控端與被控端,接收發(fā)送主控端的相機(jī)指令或被控端的圖像信息。
數(shù)據(jù)處理器(DataProcess):對(duì)相機(jī)框架返回的圖像數(shù)據(jù)做處理(編解碼、色彩空間轉(zhuǎn)換、分辨率縮放、幀率調(diào)整,角度調(diào)整等)。
分布式相機(jī)客戶端(CameraClient):被控端調(diào)用多媒體接口查詢操作本地相機(jī)(查詢相機(jī)數(shù)量及相關(guān)信息;打開、關(guān)閉、獲取流等操作)。
虛擬相機(jī)HDF層實(shí)現(xiàn)(VirtualCameraHdf):在HDF層建立的虛擬Camera硬件,能夠被多媒體框架發(fā)現(xiàn)和加載,像使用本地的Camera一樣被使用。
-
OpenHarmony
+關(guān)注
關(guān)注
25文章
3647瀏覽量
16071
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論