在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DLNA數(shù)字媒體適配器的設(shè)計

      基于DLNA數(shù)字媒體適配器的設(shè)計

      作者: 時間:2012-12-20 來源:網(wǎng)絡(luò) 收藏

      3 軟件設(shè)計
      本系統(tǒng)作為產(chǎn)品,符合其開發(fā)標準。表1中列出了互操作架構(gòu)下的關(guān)鍵技術(shù),系統(tǒng)功能實現(xiàn)所需技術(shù)也如表1所列。軟件程序采用C語言編寫,利用Intel SDKfor UPNP Devices的庫文件代碼一起進行交叉編譯成ARM平臺Linux動態(tài)連接庫文件,供上層應(yīng)用調(diào)用。開發(fā)主機采取在VMWare中安裝Linux虛擬機(Ubuntu11.10),以及arm-linux-gcc 4.3.2編譯器作為開發(fā)工具鏈。

      本文引用地址:http://www.biyoush.com/article/148176.htm

      d.JPG


      3.1 控制點軟件模塊設(shè)計
      作為數(shù)字家庭中的重要設(shè)備,能夠根據(jù)用戶提供的某項服務(wù),在設(shè)備間實現(xiàn)互操作,包括設(shè)備間的通信能力以及交換有效信息的能力??刂泣c(Control Point)作為UPNP AV網(wǎng)絡(luò)中最重要的節(jié)點,負責(zé)在網(wǎng)絡(luò)中搜索媒體服務(wù)器和媒體渲染器,發(fā)現(xiàn)用戶所需要的媒體信息,協(xié)調(diào)兩者之間的交互操作。軟件采用模塊化設(shè)計思想,全局分為4個模塊;設(shè)備列表模塊、主控管理模塊、交互通信模塊以及模塊。圖3為控制點軟件模塊結(jié)構(gòu)圖。

      c.JPG


      1)設(shè)備列表模塊
      設(shè)備列表模塊用來在網(wǎng)絡(luò)中實時監(jiān)聽、查找UPNP設(shè)備,對設(shè)備進行添加和刪除,對設(shè)備表述的XML文件進行解析,列表與設(shè)備之間一一對應(yīng)。此模塊的設(shè)計實現(xiàn)了設(shè)備信息的緩存處理。在設(shè)備列表中,包含所有控制點需要的設(shè)備信息和設(shè)置參數(shù);設(shè)備唯一的識別名稱、XML文件描述的網(wǎng)絡(luò)地址、基礎(chǔ)URL以及設(shè)備超時時間等。
      2)主控管理模式
      作為軟件模塊中的中樞部分,主控模塊基于模塊,與設(shè)備列表模塊與交互通信模塊均相連,完成的主要功能包括:管理設(shè)備緩存、處理客戶端命令、響應(yīng)設(shè)備請求、解析設(shè)備回應(yīng)。定義CtrlPointCallbackEventHandlel()函數(shù)注冊UPNP消息回調(diào)函數(shù);接收到SSDP發(fā)現(xiàn)消息后,管理列表中的UPNP設(shè)備,如使用CtrtPointAddDevice()添加設(shè)備;調(diào)用CtrlPointHandleEvent()函數(shù)接收客戶端的消息,對消息進行處理;使用CtrlPointHandleSubscribeUpdate()和StateUpdate()更新訂閱和狀態(tài)列表;調(diào)用CtrlPointSendAction()和CtrlPointSendActi onNumeiicArg()給網(wǎng)絡(luò)中的UPNP設(shè)備發(fā)送消息。
      3)交互通信模塊
      交互通信模塊連接了主控模塊與UPNP客戶端,實現(xiàn)設(shè)備與控制點之間的交互控制,負責(zé)與客戶端的通訊流程,完成服務(wù)端、渲染器以及控制點之間的交互操作。模塊首先確定了與UPNP客戶端的通信方式,定義Upnp Get ServerIpAddress()設(shè)定IP地址、UpnpGetServerProt()設(shè)定端口,使用CtrlPoinHandleGetVar()處理主控模塊發(fā)送過來的數(shù)據(jù)包,完成對命令的解析,調(diào)用CtrlPointCommandLoop()函數(shù)連續(xù)發(fā)送指令,使用CtrlPointProcessCommand()函數(shù)將指令傳送給主控模塊,完成對命令的解析和處理。
      4)模塊
      負責(zé)所有與UPNP協(xié)議有關(guān)的內(nèi)容。系統(tǒng)采用libupnp開發(fā)包、以UPNP庫作為底層協(xié)議,涵蓋UPNP協(xié)議所需要的API接口及庫函數(shù)。
      5)UPNP客戶端
      UPNP客戶端即系統(tǒng)輸出展示設(shè)備,包括電視、音響等。



      評論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉