欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于FPGA嵌入式系統(tǒng)的多路音頻軟編碼機(jī)制的制作方法

文檔序號(hào):12724112閱讀:來(lái)源:國(guó)知局

技術(shù)特征:

1.一種多路音頻軟編碼方法,其特征在于:包括以下步驟:

將每個(gè)輸入通道的原始音頻數(shù)據(jù)由串行格式轉(zhuǎn)為并行格式,并提取所述原始音頻數(shù)據(jù)的有效PCM數(shù)據(jù),利用乘法器對(duì)所述PCM數(shù)據(jù)進(jìn)行音量放大操作,根據(jù)音頻編碼算法調(diào)整所述PCM數(shù)據(jù)的PCM數(shù)據(jù)位寬,將所述PCM數(shù)據(jù)編碼成ES幀,采用DDR對(duì)所述PCM數(shù)據(jù)完成編碼前PCM幀和編碼后ES幀的交互,多個(gè)ES幀組成一個(gè)PES幀,將與視頻同步的PTS值寫(xiě)入與之對(duì)應(yīng)的PES幀頭部,將PES幀分解為多個(gè)個(gè)TS包并勻速輸出。

2.根據(jù)權(quán)利要求1所述的多路音頻軟編碼方法,采用DDR對(duì)所述PCM數(shù)據(jù)完成編碼前PCM幀和編碼后ES幀的交互,其特征在于:包括:

將各通道輸入的所述PCM數(shù)據(jù),通過(guò)系統(tǒng)總線和DDR控制器緩存在DDR內(nèi)的PCM幀緩存區(qū)內(nèi);嵌入式處理器通過(guò)系統(tǒng)總線讀取所述PCM幀緩存區(qū)的PCM幀進(jìn)行編碼;嵌入式處理器將所述PCM幀編碼生成的ES幀通過(guò)系統(tǒng)總線和DDR控制器緩存在DDR內(nèi)的ES幀緩存區(qū)內(nèi),F(xiàn)PGA發(fā)送模塊讀取所述ES幀緩存區(qū)的數(shù)據(jù)輸出。

3.一種多路音頻軟編碼裝置,其特征在于:

包括PCM數(shù)據(jù)提取模塊、PCM音頻放大模塊、PCM數(shù)據(jù)緩沖器和DDR寫(xiě)控制模塊;

所述PCM數(shù)據(jù)提取模塊將原始數(shù)字音頻輸入格式由串行轉(zhuǎn)換為并行格式,并提取出所述原始數(shù)字音頻的有效PCM數(shù)據(jù)作為音頻編碼的原始輸入數(shù)據(jù);

所述PCM音頻放大模塊,內(nèi)含有符號(hào)乘法器,用于放大所述PCM數(shù)據(jù),并根據(jù)音頻編碼算法要求控制所述PCM數(shù)據(jù)的位寬;

所述PCM數(shù)據(jù)緩沖器,內(nèi)含有PCM數(shù)據(jù)緩存區(qū),用于緩存所述PCM數(shù)據(jù),緩存大小為系統(tǒng)總線寫(xiě)burst長(zhǎng)度,當(dāng)緩存滿burst長(zhǎng)度的PCM數(shù)據(jù)后,由所述DDR寫(xiě)控制模塊控制將PCM數(shù)據(jù)緩存區(qū)的PCM數(shù)據(jù)發(fā)送到系統(tǒng)總線;

所述DDR寫(xiě)控制模塊,用于將傳入系統(tǒng)總線的PCM數(shù)據(jù)通過(guò)DDR控制器寫(xiě)入FPGA片外的DDR內(nèi);DDR內(nèi)分配有PCM幀交互區(qū),用于將PCM數(shù)據(jù)以PCM幀的形式存放。

4.一種利用FPGA嵌入式系統(tǒng)進(jìn)行編碼和輸出編碼數(shù)據(jù)的方法,其特征在于:包括以下步驟:

嵌入式CPU讀取權(quán)利要求3中所述PCM幀交互區(qū)的PCM幀進(jìn)行音頻編碼成ES幀;CPU將音頻編碼后的ES幀寫(xiě)入DDR分配的編碼ES幀交互區(qū),并通知FPGA內(nèi)部的發(fā)送模塊讀取所述ES幀;發(fā)送模塊通過(guò)系統(tǒng)總線讀出ES幀,并將N個(gè)ES幀組成一個(gè)PES幀,將與視頻同步的PTS值寫(xiě)入與之對(duì)應(yīng)的PES幀頭部,將PES幀分解為M個(gè)TS包,并將TS包勻速輸出。

5.一種與視頻顯示實(shí)時(shí)同步的PTS值的產(chǎn)生方法,其特征在于:采用本地PTS計(jì)數(shù)逼近的方法產(chǎn)生與視頻實(shí)時(shí)同步的PTS值,包括以下步驟:

實(shí)時(shí)提取視頻PCR;本地計(jì)數(shù)器PTS_counter在本地時(shí)鐘下進(jìn)行計(jì)數(shù),計(jì)數(shù)初始值為首次提取的視頻PCR值;每當(dāng)視頻PCR更新,比較PTS_counter值與視頻PCR值之間的差值;設(shè)置一個(gè)差值門限,PTS_counter與視頻PCR差值大于差值門限,則調(diào)整PTS_counter值;PTS_counter與視頻PCR差值連續(xù)超過(guò)差值門限值預(yù)設(shè)次數(shù)之后,則將PTS_counter值置為視頻PCR值。將PTS_counter值作為與視頻同步的PTS值。

6.根據(jù)權(quán)利要求5所述的PTS值的產(chǎn)生方法,其特征在于:包括:

接收視頻編碼器的PCR包,提取出所述PCR包的PCR值,PCR值包含PCR_base與PCR_ext兩部分;

本地PTS計(jì)數(shù)器對(duì)27Mhz時(shí)鐘進(jìn)行計(jì)數(shù),本地PTS計(jì)數(shù)器分為PTS_base與PTS_ext兩個(gè)計(jì)數(shù)器;PTS_ext計(jì)數(shù)器計(jì)數(shù)范圍0到299,當(dāng)PTS_ext計(jì)數(shù)300個(gè)27Mhz時(shí)鐘周期后,PTS_ext計(jì)數(shù)歸零并且PTS_base計(jì)數(shù)加1;PTS_base與PTS_ext的初始值為第一次提取的PCR_base與PCR_ext;

每當(dāng)獲取到視頻PCR_base,計(jì)算PCR_base與本地PTS_base的差值DIF_PTS,即DIF_PTS=PCR_base-PTS_base;若DIF_PTS差值小于預(yù)設(shè)閾值,本地PTS_base與PTS_ext不進(jìn)行校正,并將PTS_base值作為與視頻實(shí)時(shí)同步的音頻PTS值;若DIF_PTS大于預(yù)設(shè)閾值,校正本地PTS_base與PTS_ext值。

7.根據(jù)權(quán)利要求6所述的PTS值的產(chǎn)生方法,若DIF_PTS大于預(yù)設(shè)閾值,校正本地PTS_base與PTS_ext值,其特征在于:包括:

將PTS_base計(jì)數(shù)器值置為PTS_base+DIF_PTS/2,采用correct_cnt計(jì)數(shù)器對(duì)DIF_PTS超過(guò)預(yù)設(shè)閾值的次數(shù)進(jìn)行計(jì)數(shù);若correct_cnt達(dá)到預(yù)設(shè)最大值,將本地PTS_base與PTS_ext計(jì)數(shù)器置為PCR_base與PCR_ext。

8.根據(jù)權(quán)利要求7所述的PTS值的產(chǎn)生方法,其特征在于:

采用correct_cnt計(jì)數(shù)器對(duì)DIF_PTS超過(guò)預(yù)設(shè)閾值的次數(shù)進(jìn)行計(jì)數(shù)前,校正次數(shù)計(jì)數(shù)器correct_cnt,包括:

當(dāng)獲取到視頻PCR值時(shí),計(jì)算得到的DIF_PTS小于預(yù)設(shè)范圍或者correct_cnt計(jì)數(shù)到最大值,correct_cnt清零;若DIF_PTS大于預(yù)設(shè)范圍,correct_cnt計(jì)數(shù)加1。

9.一種基于權(quán)利要求5的產(chǎn)生與PES幀對(duì)應(yīng)的PTS值的方法,其特征在于:

在編碼系統(tǒng)時(shí)鐘下,第i(1~n)通道的PCM幀的第一個(gè)有效數(shù)據(jù)出現(xiàn)的時(shí)刻,鎖存計(jì)數(shù)器PTS_counter值作為與此PCM幀對(duì)應(yīng)、且與視頻實(shí)時(shí)同步的PTS值;

PCM幀編碼產(chǎn)生ES幀,ES幀對(duì)應(yīng)的PTS值與此ES幀編碼輸入的PCM幀的PTS值相同;多個(gè)ES幀組成一個(gè)PES幀,將PES幀內(nèi)的第一個(gè)ES幀對(duì)應(yīng)的PTS值作為PES幀的PTS值并寫(xiě)入PES幀頭。

10.根據(jù)權(quán)利要求9所述的產(chǎn)生與PES幀對(duì)應(yīng)的PTS值的方法,其特征在于:

在通道i(1~n)PCM數(shù)據(jù)輸入端,用計(jì)數(shù)器PCM_counter對(duì)輸入PCM數(shù)據(jù)的個(gè)數(shù)進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)滿一個(gè)PCM幀長(zhǎng)度,PCM_counter置0;當(dāng)PCM_counter=1時(shí),將權(quán)利要求5中與視頻實(shí)時(shí)同步的所述PTS值鎖存,此PTS值為被計(jì)數(shù)的PCM幀所對(duì)應(yīng)的PTS值,PCM幀緩存在DDR內(nèi)通道i(1~n)的數(shù)據(jù)區(qū)間,并與寄存的PTS值一一對(duì)應(yīng);

PCM幀經(jīng)過(guò)編碼后成為ES幀,PTS值與PCM幀的一一對(duì)應(yīng)關(guān)系轉(zhuǎn)化為PTS值與編碼后的ES幀的一一對(duì)應(yīng)關(guān)系;PES幀由ES幀組成,PTS值與ES幀的一一對(duì)應(yīng)關(guān)系轉(zhuǎn)換為PTS與PES的一一對(duì)應(yīng)關(guān)系。

11.根據(jù)權(quán)利要求10所述的產(chǎn)生與PES幀對(duì)應(yīng)的PTS值的方法,所述PCM幀經(jīng)過(guò)編碼后成為ES幀,PTS與PCM幀的一一對(duì)應(yīng)關(guān)系轉(zhuǎn)化為PTS與ES幀的一一對(duì)應(yīng)關(guān)系,其特征在于:包括:

對(duì)第i(1~n)通道的PCM幀經(jīng)過(guò)編碼產(chǎn)生ES幀,并將ES幀緩存在DDR中,并將此ES幀的編碼前PCM幀對(duì)應(yīng)的PTS值轉(zhuǎn)存至與此ES幀對(duì)應(yīng)的寄存器中,此PTS信息與ES幀具有一一對(duì)應(yīng)關(guān)系,PTS值表示ES第一個(gè)有效音頻數(shù)據(jù)對(duì)應(yīng)的顯示時(shí)間戳。

12.根據(jù)權(quán)利要求10所述的產(chǎn)生與PES幀對(duì)應(yīng)的PTS值的方法,PES幀由ES幀組成,PTS與ES幀的一一對(duì)應(yīng)關(guān)系轉(zhuǎn)換為PTS與PES的一一對(duì)應(yīng)關(guān)系,其特征在于:包括:

將通道i(1~n)的PES幀封裝的第一個(gè)ES幀對(duì)應(yīng)的PTS作為通道i(1~n)的PES幀對(duì)應(yīng)的PTS值,并將此PTS插入將通道i(1~n)的PES幀的幀頭。

當(dāng)前第2頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
神农架林区| 东莞市| 重庆市| 贵德县| 伊春市| 普兰店市| 探索| 榕江县| 西盟| 启东市| 陈巴尔虎旗| 广河县| 方正县| 永济市| 科技| 咸阳市| 浮梁县| 正定县| 衡阳市| 马尔康县| 巴林左旗| 三亚市| 漾濞| 永和县| 盐山县| 汶上县| 丰顺县| 寻乌县| 永新县| 麟游县| 阜城县| 临夏县| 洛阳市| 东城区| 高碑店市| 高尔夫| 荔浦县| 齐河县| 锡林浩特市| 湘潭县| 永寿县|