999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于 R8610 的嵌入式網絡音頻播放系統設計與實現*

2013-09-19 06:27:54王小磊任定成
深圳職業技術學院學報 2013年3期
關鍵詞:進程嵌入式用戶

王小磊, 易 定, 任定成

(深圳職業技術學院 計算機工程學院,廣東 深圳 518055)

目前主要的網絡音頻播放方式為:基于PC的網絡音頻播放器和嵌入式網絡音頻播放系統[1].雖然基于 PC的網絡音頻播放器[2]在設計和實現上都很成熟,但是攜帶的靈活性限制了這類軟件的發展.與基于 PC的網絡音頻播放器相比,嵌入式網絡音頻播放系統則具有體積小,功能專業化高,成本低,穩定性高,實時性好等特點[3].目前較成熟的設計方案是以 ARM 系列處理器來實現[4-5],雖然此類方案雖然易于搭建,但是實現的成本較高,不利于推廣,而且在網絡音頻的節目管理上也沒有一個合理的機制.

為了控制嵌入式網絡音頻系統的生產成本,同時保證系統對各類網絡音頻的播放性能,本文設計一種以X86架構的CPU—R8610為核心的嵌入式網絡音頻播放系統.通過使用該芯片來搭建硬件平臺在成本控制上具有較大的優勢.同時,在網絡音頻的節目管理上,配合該系統使用了一種相對完善的網絡音頻播放體系,在該體系下可以較好地完成網絡音頻終端對網絡音頻節目的管理.

1 系統的核心硬件選擇

本系統在設計之初,充分考查了多個設計方案,選擇了3款CPU:最早實現嵌入式網絡音頻播放的BC5,應用比較廣泛的S3C2410以及本設計所使用的R8610進行比較,具體見表1.

表1 CPU對比表

對于系統的硬件選擇著重考慮:芯片的性能、網絡的支持以及PCB的加工等.從表1可以看到,與其它2款CPU相比,R8610的處理能力并不是最強的,但其133MHz的主頻完全滿足網絡音頻播放的需求,可以充分發揮處理器的性能.在網絡的支持上,R8610自身集成了2個網絡接口,免去了硬件設計上對于網絡控制器的選擇,能更好的節省硬件使用成本.此外,在PCB的加工上,R8610可以采用2層板的設計,降低了對加工工藝的要求.通過以上對比說明采用R8610所做的設計方案與其它方案相比具有較大的價格和工藝優勢,利于產品的推廣.

2 系統的架構設計

根據網絡音頻的傳輸過程,本系統的總體網絡設計方案如圖1所示.在該網絡設計方案中涉及:網絡音頻服務器、節目管理服務器、網絡音頻播放系統和互聯網4大部分.網絡音頻播放系統在進行網絡音頻播放時,首先向節目管理服務器發送連接請求,在通過用戶認證以后,獲取相應的節目列表,然后根據用戶的選擇,向對應的網絡音頻服務器發送連接請求,并最終獲取網絡音頻.

在硬件上以底層的硬件接口,32bit的R8610和外圍電路為平臺,在此基礎上進行Linux系統的移植,流媒體播放器的移植,通過音頻播放系統來接收用戶指令,控制網絡音頻的播放.

圖1 系統的網絡結構圖

圖2 網絡音頻播放系統的硬件架構圖

系統的硬件設計如圖2所示,在設計上系統以 R8610CPU為核心,采用了 EN29LV320為Flash,用來啟動系統的Bootloader,Linux內核和文件系統.采用了32M的SDRAM為系統提供32M的內存資源.在系統的音頻 D/A轉換上,采用CMI8738芯片通過PCI總線連接R8610,接收CPU所處理好的流媒體音頻,并將該數字信號進行模擬信號的轉換,然后通過NJM4558接收CMI8738的模擬信號,將信號進行放大處理,并輸送到音頻輸出接口處.系統和用戶的交互上,利用 LCD通過GPIO接口與R8610相連,接收R8610的控制指令,實現和用戶的操作界面的交互.IR感應裝置利用GPIO與R8610進行連接,當用戶按下遙控按鍵后,IR進行按鍵的感應,并將按鍵的代碼發送到R8610,讓應用程序進行功能的解讀.在網絡的支持上由于R8610集成了兩個網絡接口,將RJ45接口利用MII總線連接到R8610的MAC控制器,實現系統對以太網的硬件支持.

網絡音頻播放系統的主要功能是,通過訪問節目管理服務器來獲取網絡音頻的地址,從而通過流媒體傳輸從網絡音頻服務器端獲取音頻資源,用戶可以通過按鍵的控制,實現對網絡音頻播系統的系統設置、網絡設置、音頻播放控制和信息查看等.

3 系統軟件設計與實現

根據系統的運行操作對象以及相應的功能設計,本系統分為圖3所示的3個層分和7大功能模塊.其中用戶界面層用以和用戶進行信息的交互,將系統當前的運行模式和運行狀態及時的反饋給用戶,同時接收用戶的按鍵指令;系統管理層用以實現用戶對系統的各類配置,它是系統運行狀態的決定層,系統正常運行的決定層;音頻播放層網絡音頻播放層是本系統的核心功能層,它根據用戶的播放選擇實現對音頻的獲取和播放.

圖3 系統的軟件層次設計圖

網絡音頻播放系統的功能復雜多樣,下面僅介紹系統的核心網絡音頻播放的實現.網絡音頻的功能啟用由用戶所控制.操作的處理過程如圖 4所示.系統在完成了啟動后,首先對當前的網絡狀態進行測試,并將測試結果反饋給用戶.當網絡正常的情況下,用戶進行網絡播放的選擇,然后才能夠使用系統的網絡播放功能.系統首先向節目管理服務器進行節目列表的查詢,判斷列表的獲取是否正常.當獲取了節目列表以后,系統利用LCD屏幕將列表信息反饋給用戶,用戶通過按鍵或者遙控等設備進行選擇,在得到用戶的選擇以后,系統將開啟播放進程,進行網絡音頻服務器的連接,當連接成功以后,向網絡音頻服務器發出網絡音頻數據的請求,在獲取網絡音頻服務器的允許以后,開始進行音頻數據的下載,最后由流媒體播放器進行緩沖和解碼,并播放給用戶.

圖4 網絡音頻播放時序圖

在系統的實現上其中一個關鍵點是采用何種進程通信方式,讓系統能夠快速響應用戶指令,調用流媒體播放器,進行音頻的播放.在 Linux下的 IPC進程間通信(Interprocess Communication)總共有五種類型: 共享內存(Shared Memory)、內存映射(Mapped Memory)、管道(Pipes)、FIFOs和套接字(Sockets).socketpair是Linux下套接字的一種特殊使用,其函數原型為:int socketpair(int domain,int type,int protocol,int sv[2]),4個參數依次的作用是:

1)套接口的域 指定套接字通信中使用的網絡介質,可以使是 AF_INET,AF_UNIX,AF_ISO,AF_XFA等.由于在本項目中使用該套接字實現系統內部的進程通信,因此將采用AF_UNIX.

2)套接口類型 有三種類型:流式套接字(SOCK_STREAM),數據報套接字(SOCK_DGRAM)及原始套接字.流式套接字提供的是一個有序,可靠,雙向字節流的連接.發送的數據可以確保不會丟失,復制或亂序到達.因此在本項目中使用SOCK_STREAM.

圖5 在線播放的父子進程調用流程圖

3)使用的協議 該參數可以為套接字選擇一個特定的協議類型參數,聲明了希望創建哪種類型的套接口.由于本系統不需要選擇一個特定的協議,只需要使用其默認值即可.

4)文件描述符的指針 用以保存創建的套接字對.

通過對socketpair的調用,能創建一對已連接的無名套接字,實現在同一個文件描述符中讀寫一個雙向通信的管道,而不用像 Pipes那樣要開通兩個管道.該功能函數的流程如圖5所示,在完成了系統的初始化后,首先利用socketpair()函數建立一對匿名的已經連接的套接字,建立的兩個套接字描述符會放在sv[0]和sv[1]中,然后利用fork()進行創建當前進程的副本,從而產生一個子進程.在父進程中關閉描述符 sv[0],在子進程中關閉描述符sv[1],然后在子進程中利用 dup2(sv[0],STDOUT_FILENO);dup2(sv[0], STDIN_FILENO);dup2(sv[0], STDERR_FILENO)等操作,將 sv[0]和系統的標準輸入和輸出進行連接,實現子進程的sv[0]與父進程的sv[1]的關聯,從而實現了父子進程的全雙工通信.系統在運行過程中由父進程接收用戶的指令,進行解析然后利通管道發送到子進程中,由子進程向流媒體播放器發送播放控制指令.

4 測試結果

系統的調試以各個開發模塊為單位,首先將新增加或改動的模塊連接入參考軟件,保證在調試某個模塊的軟件時其余部分軟件的運行是正確的.通過對各個開發模塊的測試,檢查各個程序模塊是否正確地實現了規定的功能.當所有新開發的模塊分別調試過之后,再按照模塊之間的相互關系將某幾個相關的模塊合起來進行集成測試,以檢查與設計相關的軟件體系結構的有關問題,以及各個子系統之間的影響和協同合作能力.最后,在實際運行環境中對整個軟件系統進行系統測試,具體的性能測試結果見表 2,在程序的用戶命令響應上,取得了較好的效果.

表2 流媒體音頻播器的性能測試表

[1] 尹秀文,曾碧,徐以山,等. 基于龍芯 SoC 的嵌入式網絡收音機設計[J]. 計算機工程, 2010,36(16):281-285.

[2] 羅雄科. 基于ARM與LINUX的嵌入式流媒體播放器的研究與實現[D].浙江大學,2006:1-2.

[3] 顧人奎. 基于 Linux系統的網絡實時流媒體嵌入式終端的構建[D].華中科技大學,2006:7-8.

[4] 卓碧華,陳良銀,胡大裟,等. 基于ARM內核的網絡收音機的設計與實現[J]. 西南民族大學學報(自然科學版),2007,33(4):886-889.

[5] 袁海林. 基于 ARM 的嵌入式網絡收音機的設計[J].微計算機信息, 2007,23(7-2):122-124.

猜你喜歡
進程嵌入式用戶
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
搭建基于Qt的嵌入式開發平臺
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
Altera加入嵌入式視覺聯盟
倍福 CX8091嵌入式控制器
自動化博覽(2014年4期)2014-02-28 22:31:15
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
主站蜘蛛池模板: 欧美在线导航| 国产手机在线ΑⅤ片无码观看| 国产欧美日韩免费| 亚洲国产日韩视频观看| 国产黄在线观看| 国产精品无码一二三视频| 91久久国产综合精品| 国产成人永久免费视频| 久久国产免费观看| 国产微拍精品| 2021无码专区人妻系列日韩| 精品一区二区三区水蜜桃| 欧美亚洲另类在线观看| 国产精品手机视频一区二区| 国产免费怡红院视频| 国产一区二区网站| 婷婷六月激情综合一区| 免费人成网站在线高清| 玖玖免费视频在线观看| 国产精品毛片在线直播完整版 | 91九色国产在线| 1769国产精品视频免费观看| 毛片视频网址| 国产欧美日韩综合在线第一| 国产欧美精品专区一区二区| 国产h视频免费观看| 亚洲丝袜第一页| 精品久久蜜桃| 成人日韩欧美| a毛片免费在线观看| 欧美日韩午夜| 亚洲国产精品人久久电影| yy6080理论大片一级久久| 亚洲精品少妇熟女| 亚洲无码高清视频在线观看| 在线观看国产一区二区三区99| 久久久久久国产精品mv| 伊大人香蕉久久网欧美| 99re在线观看视频| 国产门事件在线| 国产白浆一区二区三区视频在线| 国产又黄又硬又粗| 精品亚洲欧美中文字幕在线看| 欧美在线综合视频| 福利片91| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产精品制服| 国产精品欧美激情| 国产成年无码AⅤ片在线| 又大又硬又爽免费视频| 久久久久久久久亚洲精品| 国产又大又粗又猛又爽的视频| 国产精品视频猛进猛出| 免费 国产 无码久久久| 三上悠亚精品二区在线观看| 亚洲AV电影不卡在线观看| 无码专区第一页| 丁香婷婷综合激情| 欧美精品一区二区三区中文字幕| 欧美成人午夜视频免看| 色婷婷成人| 一本色道久久88| 永久免费无码日韩视频| 伊人91视频| 秘书高跟黑色丝袜国产91在线| 99视频在线精品免费观看6| 人妻精品久久无码区| 色悠久久久久久久综合网伊人| 国产精品第一区| 国产成人啪视频一区二区三区 | 乱人伦中文视频在线观看免费| 国产成人精品视频一区视频二区| 亚洲手机在线| 狠狠躁天天躁夜夜躁婷婷| 亚洲国产精品人久久电影| 欧美精品伊人久久| 国产一区在线观看无码| 欧美午夜视频在线| AV在线天堂进入| 成人福利视频网| 成人蜜桃网| 无码一区二区三区视频在线播放|