新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于GM8180的嵌入式視頻服務(wù)器設(shè)計

基于GM8180的嵌入式視頻服務(wù)器設(shè)計

作者: 時間:2010-04-01 來源:網(wǎng)絡(luò) 收藏

H.264編碼引擎內(nèi)建了兩個DMA通道,通道O用于讀寫原始圖像、參考幀、重建幀等數(shù)據(jù),通道1用于將編碼完的H.264碼流回寫到系統(tǒng)內(nèi)存中。在編碼引擎工作之前,需要為圖像原始數(shù)據(jù)、參考幀、重建幀緩存分配物理上連續(xù)的內(nèi)存空間,并將緩存起始地址和長度以一定格式組織成DMA命令鏈數(shù)組,設(shè)置給編碼引擎DMA通道O。將存放編碼后碼流數(shù)據(jù)的緩存基址設(shè)置給通道1。而H.264編碼參數(shù),例如條帶類型、量化參數(shù)等則直接通過寄存器設(shè)置。
編碼1幀圖像時,H.264編碼引擎會根據(jù)DMA命令鏈數(shù)組中的圖像數(shù)據(jù)和參考幀緩存基址,以宏塊為單元讀入當(dāng)前幀和參考幀,進(jìn)行運動估計、運動補(bǔ)償、整型DCT變換和量化。通過DMA將重建幀寫到系統(tǒng)內(nèi)存中,更新參考幀緩存。最后進(jìn)行熵編碼,生成H.264碼流并通過DMA通道1寫回到系統(tǒng)內(nèi)存中。完成編碼之后,編碼引擎通過中斷通知主CPU。
2.3 RTSP流媒體服務(wù)器
實時流協(xié)議(Real Time Streaming Protocol,RTSP)是由Real Networks和Netscape公司共同提出的,該協(xié)議定義了一對多的應(yīng)用程序如何有效地通過IP網(wǎng)絡(luò)傳送多媒體數(shù)據(jù)的方法。RTSP協(xié)議構(gòu)建在實時傳輸協(xié)議(Real-time Transport Protocol,RTP)和實時控制協(xié)議(RealT-ime Control Protocol,RTCP)之上,它使用TCP或者UDP完成數(shù)據(jù)傳輸。
如圖5所示,RTSP服務(wù)器軟件為分層結(jié)構(gòu),采用socket網(wǎng)絡(luò)編程和pthread多線程技術(shù)實現(xiàn)。系統(tǒng)一個單獨的線程用于監(jiān)聽RTSP端口以及進(jìn)行RTSP會話的信令交互處理,這樣的保證服務(wù)器能夠?qū)γ總€客戶連接作出快速的響應(yīng)。當(dāng)一個RTSP會話成功建立之后,服務(wù)器將為該會話分配一組RTP/RTCP端口以及相應(yīng)的緩沖區(qū),同時創(chuàng)建一個新的線程用于負(fù)責(zé)發(fā)送RTP和RTCP報文以及接收、分析客戶端反饋的RTCP接收者報告。在RTSP、RTP、RTCP協(xié)議實現(xiàn)和音視頻編碼器之間設(shè)計了一層實時流媒體管理層,通過它將音視頻采集和編碼驅(qū)動的初始化、采集數(shù)據(jù)、編碼以及在運行過程中更改采集或者編碼參數(shù)(如更改碼率、幀率、請求編碼關(guān)鍵幀)等操作抽象成統(tǒng)一的實時媒體文件接口。

本文引用地址:http://butianyuan.cn/article/151974.htm

結(jié)語
本文設(shè)計的器,通過片上的H.264編碼引擎實現(xiàn)2路D1分辨率的H.264實時編碼,通過軟件實現(xiàn)2路AMRNB音頻編碼,以及實時流媒體傳輸?shù)南嚓P(guān)協(xié)議。充分挖掘了這款A(yù)SIC芯片的潛在性能。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 4 下一頁

評論


相關(guān)推薦

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

關(guān)閉