日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]嵌入式以太網(wǎng)數(shù)字語音廣播系統(tǒng)技術(shù)設(shè)計(jì)

本文給出一種嵌入式以太網(wǎng)數(shù)字語音廣播系統(tǒng)解決方案,能夠較簡(jiǎn)單地實(shí)現(xiàn)廣播系統(tǒng)的區(qū)域廣播功能。該系統(tǒng)基于ARM架構(gòu),采用系統(tǒng)播放終端仲裁的方法控制區(qū)域廣播的實(shí)現(xiàn),廣播內(nèi)容能夠同步播放和保存。

以太網(wǎng)數(shù)字語音廣播系統(tǒng)主要是指以以太網(wǎng)為傳播介質(zhì)提供音頻服務(wù)的廣播系統(tǒng),可以很好地利用以太網(wǎng)解決語音信號(hào)遠(yuǎn)距離傳輸難題。允許設(shè)計(jì)者創(chuàng)建大型網(wǎng)絡(luò)結(jié)構(gòu)來實(shí)現(xiàn)數(shù)以千路的數(shù)字語音信號(hào)在以太網(wǎng)上傳輸,充分利用了現(xiàn)有網(wǎng)絡(luò)資源,避免重復(fù)架設(shè)線路的麻煩,實(shí)現(xiàn)了廣播與計(jì)算機(jī)網(wǎng)絡(luò)的多網(wǎng)合一,徹底解決了傳統(tǒng)廣播系統(tǒng)存在的音質(zhì)不佳、容易受干擾、維護(hù)管理復(fù)雜以及互動(dòng)性差等問題。同時(shí)可以實(shí)現(xiàn)選擇全部、部分或特定區(qū)域進(jìn)行定向分組廣播,突破了傳統(tǒng)廣播系統(tǒng)只能對(duì)全部區(qū)域進(jìn)行公共廣播的局限?,F(xiàn)有的以太網(wǎng)數(shù)字語音廣播系統(tǒng)在實(shí)現(xiàn)區(qū)域廣播功能上大都采用控制信號(hào)控制播放終端加入或者離開組播組的方式實(shí)現(xiàn),需要在實(shí)現(xiàn)廣播之前發(fā)送控制信號(hào)使終端加入組播組然后才能實(shí)現(xiàn)廣播,或者在服務(wù)器端建立一張復(fù)雜的映射表來維護(hù)播放終端的狀態(tài)以實(shí)現(xiàn)區(qū)域廣播,功能實(shí)現(xiàn)較為復(fù)雜。

  1 結(jié)構(gòu)設(shè)計(jì)

  該系統(tǒng)采用C/S結(jié)構(gòu),由廣播系統(tǒng)服務(wù)器端與廣播系統(tǒng)播放終端兩部分組成,如圖1所示。

  廣播系統(tǒng)服務(wù)器端在PC機(jī)上實(shí)現(xiàn),是一個(gè)由VC++實(shí)現(xiàn)的語音信號(hào)采集、存儲(chǔ)、網(wǎng)絡(luò)傳輸?shù)某绦?。該部分通過麥克風(fēng)對(duì)語音信號(hào)進(jìn)行采集存儲(chǔ),然后將語音數(shù)據(jù)通過UDP的方式傳輸?shù)揭蕴W(wǎng)上,實(shí)現(xiàn)語音數(shù)據(jù)的網(wǎng)絡(luò)傳輸功能。

  廣播系統(tǒng)播放終端為基于LM3S8962的嵌入式終端,實(shí)現(xiàn)從以太網(wǎng)上接收發(fā)送給它的IP語音數(shù)據(jù)包,并由音頻解碼芯片MS6336完成語音數(shù)據(jù)的數(shù)/模轉(zhuǎn)換及播放。

  2 廣播系統(tǒng)播放終端硬件設(shè)計(jì)

  廣播系統(tǒng)播放終端主控制芯片采用LuminaryMicro公司所提供的微控制器LM3S8962。該系列芯片是首款基于ARM CortexTM-M3的控制器,內(nèi)部集成以太網(wǎng)控制器,是業(yè)界首款支持工業(yè)以太網(wǎng)(IEEE)的ARM芯片,可以方便地實(shí)現(xiàn)網(wǎng)絡(luò)功能。

  音頻解碼芯片采用MOSA公司生產(chǎn)的MS6336芯片。該芯片是一款16位立體聲音頻數(shù)字模擬轉(zhuǎn)換器,支持的數(shù)字輸入格式有Right Justifl-ed,Left Justified,I2S。MS6336控制接口采用I2C總線,接口容易設(shè)定。DAC部分具有精確穩(wěn)定的電流量,結(jié)合極好的對(duì)稱譯碼方式,能夠重現(xiàn)出高質(zhì)量的音頻信號(hào)。

  主控制芯片LM3S8962通過磁性元件與RJ45接口相連,用于從以太網(wǎng)上接收語音數(shù)據(jù)。LM3S8962為音頻解碼芯片MS6336提供控制信號(hào)和語音數(shù)據(jù)信號(hào)。LM3S8962支持I2C功能,PB2和PB3口分別提供了I2C的時(shí)鐘和數(shù)據(jù)信號(hào),可以將這兩個(gè)引腳和MS6336的I2C功能引腳直接相連,并且需要加上拉電阻。LM3S8962不支持MS6336需要的數(shù)據(jù)輸入格式,系統(tǒng)中MS6336的數(shù)據(jù)輸入格式采用I2S,所以要給MS6336提供語音數(shù)據(jù),需要采用LM3S8962的GPIO口軟件模擬實(shí)現(xiàn)MS6336需要的I2S數(shù)據(jù)輸入格式。在設(shè)計(jì)中采用PA5,PA6,PA7口來模擬實(shí)現(xiàn)該功能。三個(gè)引腳分別對(duì)應(yīng)I2S的聲道選擇信號(hào)、時(shí)鐘信號(hào)和數(shù)據(jù)信號(hào),將這三個(gè)引腳和MS6336的I2S功能引腳相連。

  以太網(wǎng)數(shù)字語音廣播系統(tǒng)播放終端硬件結(jié)構(gòu)如圖2所示。

[!--empirenews.page--]

  3 廣播系統(tǒng)軟件設(shè)計(jì)

  廣播系統(tǒng)軟件分為廣播系統(tǒng)服務(wù)器端軟件和播放終端軟件兩部分。

  該設(shè)計(jì)實(shí)現(xiàn)語音數(shù)據(jù)的實(shí)時(shí)播放,所以要求語音數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性得到保障,而對(duì)于數(shù)據(jù)的完整性要求不是太嚴(yán)格,少量的丟包也不會(huì)影響整體的播放效果,所以該系統(tǒng)的語音數(shù)據(jù)傳輸采用UDP傳輸方式,同時(shí)本系統(tǒng)工作在局域網(wǎng)內(nèi),臨時(shí)用戶較少,故采用IP地址靜態(tài)分配,簡(jiǎn)化播放終端軟件部分的實(shí)現(xiàn)。

  3.1 廣播系統(tǒng)服務(wù)器端語音數(shù)據(jù)的采集、存儲(chǔ)與發(fā)送

  語音數(shù)據(jù)的采集利用低層WAVE音頻API函數(shù)實(shí)現(xiàn),為了不造成語音數(shù)據(jù)的丟失,該設(shè)計(jì)利用雙緩沖來存儲(chǔ)語音數(shù)據(jù),實(shí)現(xiàn)流程如圖3所示。

  當(dāng)一個(gè)錄音緩沖區(qū)滿時(shí),系統(tǒng)立刻將另一個(gè)錄音緩沖區(qū)發(fā)送給錄音設(shè)備繼續(xù)錄音,而應(yīng)用程序此時(shí)要讀取已經(jīng)錄音滿的緩沖區(qū)中的數(shù)據(jù),并進(jìn)行處理。然后調(diào)用waveInAddBuffer函數(shù)將該緩沖區(qū)重新賦給錄音設(shè)備,循環(huán)利用。

  為了防止錄音過程中語音數(shù)據(jù)的丟失,只是簡(jiǎn)單地利用雙緩沖是不夠的,還要注意的一點(diǎn)是,當(dāng)一個(gè)緩沖區(qū)錄音滿以后,應(yīng)用程序?qū)υ摼彌_區(qū)的數(shù)據(jù)進(jìn)行處理,同時(shí)第二個(gè)緩沖區(qū)用于錄音,數(shù)據(jù)處理的時(shí)間一定要小于第二個(gè)緩沖區(qū)錄音滿需要的時(shí)間,否則在第二個(gè)緩沖區(qū)錄音滿以后第一個(gè)緩沖區(qū)還沒有重新賦給錄音設(shè)備,就會(huì)造成語音數(shù)據(jù)的丟失。當(dāng)語音信號(hào)采樣率大的時(shí)候適當(dāng)增加緩沖區(qū)的大小,可以有效地解決這個(gè)問題。

  為了將廣播的內(nèi)容進(jìn)行保存以備后需,需要將廣播內(nèi)容保存在一個(gè)WAV文件中。WAV文件具有固定的頭格式,在保存語音數(shù)據(jù)之前,需要先將WAV文件的頭部設(shè)定好,否則保存的WAV文件無法播放。在每一次錄音緩沖區(qū)滿時(shí),首先找到WAV文件的結(jié)尾處,然后將采集到的數(shù)據(jù)依次寫在文件尾部。當(dāng)整個(gè)廣播過程結(jié)束時(shí),所有的語音數(shù)據(jù)都被保存在了WAV文件中,實(shí)現(xiàn)了語音數(shù)據(jù)的存儲(chǔ)。

  當(dāng)一個(gè)錄音緩沖區(qū)滿后,這時(shí)就需要將已經(jīng)采集到的語音數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)送出去。在設(shè)計(jì)中首先利用Csocket類創(chuàng)建一個(gè)套接字,接下來只需要將采集到的數(shù)據(jù)封裝成IP包發(fā)送出去。該設(shè)計(jì)中語音信號(hào)的采樣率為44.1 kHz,16位雙聲道。為了避免語音數(shù)據(jù)丟失,錄音緩沖區(qū)的大小設(shè)定為1024B。

  3.2 區(qū)域廣播的實(shí)現(xiàn)

  以太網(wǎng)數(shù)字語音廣播系統(tǒng)的一個(gè)重要應(yīng)用就是不僅可以實(shí)現(xiàn)全區(qū)廣播,同時(shí)可以實(shí)現(xiàn)局域廣播功能,即對(duì)指定的終端進(jìn)行廣播。因此,在語音IP數(shù)據(jù)包的網(wǎng)絡(luò)傳輸中采用UDP組播包的形式進(jìn)行數(shù)據(jù)傳輸。采用組播包傳輸數(shù)據(jù),在局域網(wǎng)內(nèi)所有包含在該組中的終端都可以接收到數(shù)據(jù),實(shí)現(xiàn)全區(qū)廣播。為了實(shí)現(xiàn)局域廣播功能,該設(shè)計(jì)中在語音數(shù)據(jù)前面添加了一個(gè)結(jié)構(gòu)體,如下所示,同時(shí)還有一個(gè)配置文件用于存儲(chǔ)系統(tǒng)各終端的IP地址。

  struct STRING

  {String IPNO1;

  String IPNO2;

  …

  String IPNO9;

  String IPNO10};

  當(dāng)需要對(duì)某幾個(gè)終端進(jìn)行區(qū)域廣播時(shí),在廣播系統(tǒng)服務(wù)器端的面板上(如圖4所示)將這幾個(gè)終端對(duì)應(yīng)的編號(hào)選上。這時(shí)就將被選中終端的IP地址從配置文件中讀出并賦給該結(jié)構(gòu)體中對(duì)應(yīng)的變量。當(dāng)終端接收到IP組播包時(shí),首先判斷該結(jié)構(gòu)體是否有和自己的IP地址相同的變量,如果有,則進(jìn)行數(shù)據(jù)的接收播放,如果沒有則對(duì)數(shù)據(jù)進(jìn)行丟棄處理,這樣就實(shí)現(xiàn)了區(qū)域廣播功能。相對(duì)于采用控制信號(hào)控制播放終端加入或者離開組播組,或者通過動(dòng)態(tài)維護(hù)復(fù)雜的映射表以實(shí)現(xiàn)區(qū)域廣播功能的方法。該方法不需要在每次廣播之前對(duì)播放終端進(jìn)行交互控制,也不需要?jiǎng)討B(tài)跟蹤終端狀態(tài),只需要在終端第一次加入系統(tǒng)時(shí)將終端對(duì)應(yīng)的IP地址寫入配置文件即可,功能實(shí)現(xiàn)簡(jiǎn)單。

  3.3 廣播系統(tǒng)播放終端軟件的實(shí)現(xiàn)

  廣播系統(tǒng)播放終端分為兩個(gè)部分來實(shí)現(xiàn),音頻數(shù)據(jù)接收部分用于接收語音數(shù)據(jù)并進(jìn)行存儲(chǔ)轉(zhuǎn)發(fā),音頻解碼器實(shí)現(xiàn)語音信號(hào)的D/A轉(zhuǎn)換并播放。音頻數(shù)據(jù)接收部分采用Socket編程實(shí)現(xiàn)從以太網(wǎng)上接收語音數(shù)據(jù),在接收到語音數(shù)據(jù)包以后,首先要對(duì)數(shù)據(jù)包進(jìn)行判斷,是否是發(fā)給自己的數(shù)據(jù)包。終端通過將IP包中結(jié)構(gòu)體struct STRING的成員變量與自己的IP地址進(jìn)行比較,如果有成員變量和自己的IP地址相等,則存儲(chǔ)該數(shù)據(jù)包中的數(shù)據(jù),否則丟棄。

[!--empirenews.page--]

  語音數(shù)據(jù)的接收存儲(chǔ)采用循環(huán)隊(duì)列的方式,由于UDP數(shù)據(jù)傳輸?shù)臒o序性,在語音數(shù)據(jù)接收端接收到語音數(shù)據(jù)以后需要對(duì)語音數(shù)據(jù)包進(jìn)行排序,以保證對(duì)語音數(shù)據(jù)的順序處理,還原出正確的語音信號(hào)。同時(shí)為了避免網(wǎng)絡(luò)抖動(dòng),每次在循環(huán)隊(duì)列中包含至少5個(gè)數(shù)據(jù)包的時(shí)候才對(duì)數(shù)據(jù)進(jìn)行處理。

  設(shè)計(jì)中MS6336的數(shù)據(jù)輸入格式采用I2S格式,由于LM3S8962不支持該數(shù)據(jù)格式,所以通過GPIO口采用軟件模擬實(shí)現(xiàn)I2S功能。為了完整還原出語音信號(hào),需要保證I2S信號(hào)時(shí)序嚴(yán)格精確,高低電平的轉(zhuǎn)換采用延時(shí)程序?qū)崿F(xiàn),I2S時(shí)序圖如圖5所示。


  廣播系統(tǒng)播放終端時(shí)鐘頻率為40 MHz,由采樣率計(jì)算可得每發(fā)送一個(gè)數(shù)據(jù)位的時(shí)間為600 ns。LM3S8962給MS6336提供語音數(shù)據(jù),按照采樣點(diǎn)通過GPIO口實(shí)現(xiàn)串行傳輸。每個(gè)采樣點(diǎn)包含四個(gè)字節(jié),一個(gè)采樣點(diǎn)數(shù)據(jù)發(fā)送流程如圖6所示。


  4 結(jié)果分析

  該系統(tǒng)通過以太網(wǎng)傳輸?shù)恼Z音數(shù)據(jù)包大小為1024B,為了避免網(wǎng)絡(luò)抖動(dòng),終端在收到5個(gè)數(shù)據(jù)包的時(shí)候開始廣播,廣播延時(shí)時(shí)間為30 ms左右,滿足功能指標(biāo)。服務(wù)器端可以同時(shí)控制10個(gè)播放終端的工作,通過在服務(wù)器端選定相應(yīng)終端的編號(hào),可以成功實(shí)現(xiàn)廣播系統(tǒng)的全區(qū)廣播和局域廣播功能。

  5 結(jié)語

  這里從實(shí)際需求出發(fā),設(shè)計(jì)實(shí)現(xiàn)一個(gè)以太網(wǎng)數(shù)字語音廣播系統(tǒng),實(shí)驗(yàn)結(jié)果表明由系統(tǒng)播放終端決定是否進(jìn)行語音廣播來實(shí)現(xiàn)區(qū)域廣播是一種簡(jiǎn)單有效的實(shí)現(xiàn)語音信號(hào)全局廣播和區(qū)域廣播的方法。系統(tǒng)播放終端采 用GPIO口軟件模擬實(shí)現(xiàn)了I2S功能,能夠精確地實(shí)現(xiàn)I2S時(shí)序,完成語音信號(hào)的數(shù)據(jù)傳輸,實(shí)現(xiàn)語音信號(hào)的實(shí)時(shí)廣播。該設(shè)計(jì)結(jié)構(gòu)合理,并且能夠方便地實(shí)現(xiàn)功能擴(kuò)充,如定時(shí)播音、音樂播放、遠(yuǎn)程管理、實(shí)時(shí)監(jiān)控等。該設(shè)計(jì)具有重要的現(xiàn)實(shí)意義,為解決大型復(fù)雜的以太網(wǎng)廣播系統(tǒng)提供了基礎(chǔ)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

杭州2022年9月9日 /美通社/ -- 9月8日,百世集團(tuán)高級(jí)副總裁、百世供應(yīng)鏈總經(jīng)理張芒粒應(yīng)邀出席在廈門召開的2022第五屆全國服裝物流與供應(yīng)鏈行業(yè)年會(huì),并發(fā)表了題為《共創(chuàng)服裝行業(yè)供應(yīng)鏈價(jià)值元年》的演講,她表示,在產(chǎn)...

關(guān)鍵字: 供應(yīng)鏈 數(shù)字化 網(wǎng)絡(luò) 終端

2022亞馬遜企業(yè)購年度論壇線上舉行 上海2022年9月7日 /美通社/ -- 在昨日舉行的2022亞馬遜企業(yè)購年度論壇期間,亞馬遜全球開店發(fā)布了亞馬遜企業(yè)購新三大業(yè)務(wù)重點(diǎn):持續(xù)賦能制造工廠和產(chǎn)業(yè)帶數(shù)字轉(zhuǎn)型,完善數(shù)字化...

關(guān)鍵字: 亞馬遜 數(shù)字化 終端 BSP

上海2022年9月2日 /美通社/ -- 自2021年底,紫荊花第一家5.0版本行業(yè)標(biāo)桿藝術(shù)涂料形象店落地湖南邵陽以來,其藝術(shù)涂料業(yè)務(wù)發(fā)展迅猛,至今全國具有體驗(yàn)性的超級(jí)形象店累計(jì)已經(jīng)突破100家,尤其是在湖南、湖北、浙江...

關(guān)鍵字: 國美 終端 家庭裝修 網(wǎng)絡(luò)

北京2022年9月2日 /美通社/ -- 8月19日,由Top智匯主辦,上海市軟件行業(yè)協(xié)會(huì)、中國云體系產(chǎn)業(yè)創(chuàng)新戰(zhàn)略聯(lián)盟等多家機(jī)構(gòu)聯(lián)合舉辦的2022企業(yè)數(shù)智應(yīng)用大會(huì)暨第七屆SaaS應(yīng)用大會(huì)成功開幕。大會(huì)以"演進(jìn)?...

關(guān)鍵字: CRM SAAS 終端 軟件

摘要:廣東電網(wǎng)全面實(shí)施遠(yuǎn)程低壓集抄應(yīng)用,對(duì)業(yè)務(wù)人員相關(guān)技能水平提出了更高的要求。目前,受場(chǎng)地、裝置體積重量的限制,開展計(jì)量運(yùn)維終端培訓(xùn)時(shí)需將理論和實(shí)操分開,培訓(xùn)效果不佳。現(xiàn)通過將多業(yè)務(wù)終端設(shè)備集成在固定裝置中,實(shí)現(xiàn)現(xiàn)場(chǎng)理...

關(guān)鍵字: 多業(yè)務(wù) 終端 裝置

科技賦能運(yùn)動(dòng),安踏攜手華為運(yùn)動(dòng)健康共創(chuàng)未來智能運(yùn)動(dòng)體驗(yàn) 廈門2022年8月9日 /美通社/ -- 為紀(jì)念北京奧運(yùn)會(huì)成功舉辦,每年的8月8日已成為倡導(dǎo)人民廣泛參加體育健身運(yùn)動(dòng)之時(shí),是為全民健身日。作為中國體育用品領(lǐng)導(dǎo)品牌...

關(guān)鍵字: 華為 CE 大眾 終端

(全球TMT2022年8月9日訊)近日,山東省工業(yè)和信息化廳公示第一批山東省優(yōu)秀數(shù)字產(chǎn)品(方案)導(dǎo)向目錄,浪潮新基建研發(fā)的浪潮城市大腦、浪潮CIM基礎(chǔ)平臺(tái)、浪潮城市運(yùn)行管理平臺(tái)和物聯(lián)感知平臺(tái)四產(chǎn)品,經(jīng)企業(yè)申報(bào)、各市推薦...

關(guān)鍵字: 新基建 智能化 終端 數(shù)字化

北京2022年8月5日 /美通社/ -- 近日,由雙井街道工委、樂成集團(tuán)黨委、樂成商管聯(lián)合主辦的雙井街道樂成黨群服務(wù)分中心啟動(dòng)儀式暨樂成中心企業(yè)服務(wù)發(fā)展計(jì)劃發(fā)布會(huì)在樂成中心樂享空間圓滿舉行。雙井街道工委副書記郭孟、樂成集...

關(guān)鍵字: 樓宇 終端 直播帶貨 數(shù)字經(jīng)濟(jì)

歐洲議會(huì)和歐盟理事會(huì)代表達(dá)成一致,同意到2024年,統(tǒng)一歐盟區(qū)域內(nèi)所有便攜式電子設(shè)備充電接口。除了統(tǒng)一充電接口,歐洲議會(huì)的此份公報(bào)還指出,對(duì)支持快速充電的設(shè)備充電速度也要統(tǒng)一,讓用戶可使用任何兼容的充電器以相同的速度為設(shè)...

關(guān)鍵字: 智能 終端 快充技術(shù)標(biāo)準(zhǔn)

(全球TMT2022年7月30日訊)7月28日,2022全球數(shù)字經(jīng)濟(jì)大會(huì)在北京開幕,浪潮新基建作為大會(huì)"從數(shù)字孿生城市邁向數(shù)字原生城市分論壇"的協(xié)辦方亮相,充分展現(xiàn)在數(shù)字孿生城市領(lǐng)域的探索與實(shí)踐。論壇期間,浪潮新基建與...

關(guān)鍵字: 新基建 數(shù)字經(jīng)濟(jì) 數(shù)字化 終端

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉