陳雪 高強(qiáng) 張軍
摘要:隨著信息產(chǎn)業(yè)的高速發(fā)展,在國(guó)內(nèi)外音視頻技術(shù)迅猛發(fā)展的基礎(chǔ)上,各種家庭網(wǎng)絡(luò)設(shè)備層出不窮,特別是音頻設(shè)備在日常生活中的使用更是普遍,傳統(tǒng)廣播系統(tǒng)的局限性越來越無法滿足人們的需要,設(shè)計(jì)能夠?qū)崿F(xiàn)局域網(wǎng)內(nèi)的資源共享的智能廣播系統(tǒng)已經(jīng)成為未來發(fā)展的必然趨勢(shì)。以DLNA數(shù)字家庭網(wǎng)絡(luò)為基礎(chǔ),從分析UPnP協(xié)議的模塊出發(fā),利用Linux嵌入式開發(fā)平臺(tái)設(shè)計(jì)一套完整的音頻廣播系統(tǒng)。
關(guān)鍵詞: UPnP協(xié)議; 局域網(wǎng);媒體源; 媒體控制點(diǎn); 音頻服務(wù); ARM
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)11-0221-03
Abstract: With the rapid development of the information industry, various home network devices are emerging on the basis of the rapid development of audio and video technology at home and abroad. Especially the use of audio equipment in daily life is more common, and the limitations of traditional broadcasting systems are unable to meet people's needs. Designing an intelligent broadcast system which is capable of realizing resource sharing within a local area network has become an inevitable trend in the future. Based on the DLNA digital home network, a complete audio broadcasting system is designed with the UPnP protocol module and Linux embedded development platform .
Key words:UPNP agreement; local area network; media resourse; media control point; audio service; ARM
引言
隨著信息產(chǎn)業(yè)的高速發(fā)展,在國(guó)內(nèi)外音視頻技術(shù)迅猛發(fā)展的基礎(chǔ)上,各種家庭網(wǎng)絡(luò)設(shè)備層出不窮,特別是音頻設(shè)備在日常生活中的使用更是普遍,傳統(tǒng)廣播系統(tǒng)的局限性越來越無法滿足人們的需要,因此設(shè)計(jì)能夠?qū)崿F(xiàn)局域網(wǎng)內(nèi)的資源共享的智能廣播系統(tǒng)已經(jīng)成為未來發(fā)展的必然趨勢(shì)。由于UPnP協(xié)議的提出,為基于DLNA(數(shù)字生活網(wǎng)絡(luò)聯(lián)盟)的音頻廣播系統(tǒng)的設(shè)計(jì)提供了便利。UPnP是一中網(wǎng)絡(luò)協(xié)議,它以TCP/IP協(xié)議為基礎(chǔ),功能十分強(qiáng)大。以DLNA數(shù)字家庭網(wǎng)絡(luò)為基礎(chǔ),利用Linux嵌入式開發(fā)平臺(tái)來設(shè)計(jì)一套音視頻廣播系統(tǒng)。
1 系統(tǒng)需求分析
音頻廣播系統(tǒng)的設(shè)計(jì)主要包括媒體服務(wù)器(DMS)的設(shè)計(jì)、媒體控制點(diǎn)的設(shè)計(jì)、和媒體播放器的設(shè)計(jì),在局域網(wǎng)中利用UPnP協(xié)議作為搭建整個(gè)系統(tǒng)的橋梁,將從設(shè)備、服務(wù)、控制點(diǎn)這3個(gè)主要部分出發(fā),建立一套完整的系統(tǒng)。
1.1系統(tǒng)功能需求
通過一臺(tái)PC主機(jī)分別控制多臺(tái)DLNA設(shè)備播放音頻文件,音頻格式上一般都能支持市面上常用的音頻格式,而且在局域網(wǎng)連接到Internet網(wǎng)絡(luò)后,也能支持網(wǎng)絡(luò)上音頻播放。同時(shí)通過廣播的方式告知局域網(wǎng)中音頻設(shè)備的存在,以便控制點(diǎn)可以捕獲到該消息,顯示MFC到界面中。
1.2開發(fā)平臺(tái)環(huán)境
PC部分主要使用VS2013開發(fā)平臺(tái),基于Platinum SDK來完成DNLA部分的音頻服務(wù)端和控制點(diǎn)部分。ARM音頻播放設(shè)備的實(shí)現(xiàn)主要利用開源的renderer0.0.1代碼,自主的發(fā)送SSDP協(xié)議。
2 系統(tǒng)設(shè)計(jì)概要
DLNA數(shù)字生活網(wǎng)絡(luò)聯(lián)盟由微軟提出,其目的在于實(shí)現(xiàn)各種設(shè)備在各種不同網(wǎng)絡(luò)中的互聯(lián)互通,促進(jìn)數(shù)字媒體中網(wǎng)絡(luò)資源最大程度的共享。在不需要其他的設(shè)定動(dòng)作的情況下,DLNA基本就可以實(shí)現(xiàn)基于原有網(wǎng)絡(luò)架構(gòu)上的中介層上的設(shè)備的相互交流。UPnP協(xié)議在DLNA的網(wǎng)絡(luò)協(xié)議中居于核心地位,它分配了家庭中本地的網(wǎng)絡(luò)里的各個(gè)部分的工作,并且定義了設(shè)備發(fā)現(xiàn)控制點(diǎn)、控制點(diǎn)發(fā)現(xiàn)設(shè)備的過程,只要不違背這個(gè)標(biāo)準(zhǔn),各種設(shè)備都可以接入。UPnP的應(yīng)用環(huán)境對(duì)網(wǎng)絡(luò)的依賴性較大,主要是以TCP/IP協(xié)議和因特網(wǎng)為基礎(chǔ)的,接入以后能夠自動(dòng)獲取IP地址,在網(wǎng)絡(luò)中的每個(gè)設(shè)備都可以獲取屬于自己的各種狀態(tài)和參數(shù)。當(dāng)操作完成的時(shí)候,如果成功,可以獲得對(duì)應(yīng)的響應(yīng)消息來確認(rèn)完成操作。該廣播系統(tǒng)主要是在局域網(wǎng)中利用UPnP協(xié)議作為搭建整個(gè)系統(tǒng)的橋梁,將從設(shè)備、服務(wù)、控制點(diǎn)這3個(gè)主要部分出發(fā),建立一套完整的系統(tǒng),其UPnP 組件圖如圖1所示。
系統(tǒng)通過一臺(tái)PC主機(jī)分別控制多臺(tái)DLNA設(shè)備播放音頻,在局域網(wǎng)連接到Internet網(wǎng)絡(luò)后,也就支持網(wǎng)絡(luò)音頻播放。其中DLNA架構(gòu)的音頻廣播系統(tǒng)框架圖如圖2所示。
4 系統(tǒng)詳細(xì)實(shí)現(xiàn)過程
4.1使用VS2013建立DLNA媒體播放工程
PC部分主要使用VS2013開發(fā)平臺(tái),基于Platinum SDK來完成DNLA部分的音頻服務(wù)端和控制點(diǎn)部分。打開VS2013文件菜單,創(chuàng)建一個(gè)基于MFC的可視化應(yīng)用程序。改程序主要是用來開發(fā)PC端用于顯示控制點(diǎn)與設(shè)備的交互過程,當(dāng)控制點(diǎn)成功獲取到設(shè)備,并將音頻文件傳遞給音頻設(shè)備端,就會(huì)在在可視化窗口中顯示所獲取的資源的位置。