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

一種音頻輸出方法及系統(tǒng)的制作方法

文檔序號(hào):6777627閱讀:129來(lái)源:國(guó)知局
專利名稱:一種音頻輸出方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及語(yǔ)音通信技術(shù)領(lǐng)域,尤其涉及一種音頻輸出方法及系統(tǒng)。
背景技術(shù)
現(xiàn)有技術(shù)在實(shí)現(xiàn)音頻解碼輸出時(shí),一般由中央處理單元(CPU,CentralProcessing Unit)/數(shù)字信號(hào)處理器(DSP,Digital Signal Processor)將解碼后左右聲道的數(shù)字音頻信號(hào)(PCM,Pulse Code Modulation)進(jìn)行交錯(cuò)后寫入輸出緩沖單元,然后由直接內(nèi)存訪問(wèn)單元(DMA,Direct Memory Access)將其讀出,并發(fā)送給音頻數(shù)字/模擬轉(zhuǎn)換器(Audio DAC,Audio Digital/Analog Converter),由Audio DAC將所述PCM數(shù)據(jù)轉(zhuǎn)換為音頻模擬信號(hào),再通過(guò)揚(yáng)聲器輸出給用戶。
現(xiàn)有技術(shù)音頻解碼輸出過(guò)程中,如對(duì)音頻格式為WMA(Windows MediaAudio)的音頻解碼,由于對(duì)WMA格式的當(dāng)前幀編碼數(shù)據(jù)進(jìn)行解碼時(shí),DMA需要始終從輸出緩沖單元讀取前一幀數(shù)據(jù),因此,為CPU控制簡(jiǎn)便的目的,一般使用回轉(zhuǎn)式緩沖單元(Ping-Pong Buffer),該回轉(zhuǎn)型緩沖單元共有兩個(gè)緩沖單元,分別為輸出緩沖單元0和輸出緩沖單元1,當(dāng)輸出緩沖單元0中存放了由CPU寫入的第一幀雙聲道PCM數(shù)據(jù)后,DMA從輸出緩沖單元0中讀取數(shù)據(jù),并發(fā)送給Audio DAC,Audio DAC完成數(shù)字/模擬(D/A)轉(zhuǎn)換,獲得音頻模擬信號(hào),該音頻模擬信號(hào)經(jīng)過(guò)功率放大后由揚(yáng)聲器輸出給用戶,而此時(shí)CPU正在對(duì)第二幀音頻壓縮碼流數(shù)據(jù)進(jìn)行解碼,獲得所述第二幀的PCM數(shù)據(jù),并將該數(shù)據(jù)從工作緩沖單元(Working Buffer)中讀出,并進(jìn)行雙聲道交錯(cuò)后發(fā)送到輸出緩沖單元1中,當(dāng)所述DMA將輸出緩沖單元0中的數(shù)據(jù)讀取完以后,將立刻開(kāi)始從輸出緩沖單元1中讀取數(shù)據(jù),以保證揚(yáng)聲器播放聲音的連貫性,此時(shí),CPU可以開(kāi)始對(duì)第三幀音頻壓縮碼流數(shù)據(jù)進(jìn)行解碼,獲得所述第三幀的PCM數(shù)據(jù),并將該數(shù)據(jù)從工作緩沖單元(Working Buffer)中讀出,并進(jìn)行雙聲道交錯(cuò)后發(fā)送到輸出緩沖單元0中,當(dāng)DMA從輸出緩沖單元1讀取數(shù)據(jù)完畢后,再?gòu)妮敵鼍彌_單元0開(kāi)始讀取數(shù)據(jù),也就是說(shuō),在WMA軟件解碼過(guò)程中,所有交錯(cuò)后奇數(shù)幀的雙聲道PCM數(shù)據(jù)都存放在輸出緩沖單元0中,所有交錯(cuò)后偶數(shù)幀的雙聲道PCM數(shù)據(jù)都存放在輸出緩沖單元1中,DMA交替地從輸出緩沖單元0和輸出緩沖單元1中讀取數(shù)據(jù),CPU和DMA只能分別對(duì)不同的輸出緩沖單元進(jìn)行操作,而不會(huì)在某個(gè)時(shí)刻同時(shí)對(duì)輸出緩沖單元0或輸出緩沖單元1進(jìn)行操作。
這種回轉(zhuǎn)式緩沖單元的結(jié)構(gòu)雖然簡(jiǎn)單,但兩個(gè)緩沖單元輸出緩沖單元0和輸出緩沖單元1的長(zhǎng)度都需要為一幀雙聲道PCM數(shù)據(jù)的長(zhǎng)度,對(duì)于雙聲道音頻數(shù)據(jù),一個(gè)聲道最大的幀長(zhǎng)為2048點(diǎn),那么,一個(gè)輸出緩沖單元就需要容納4096PCM采樣點(diǎn),回轉(zhuǎn)式緩沖單元就需要容納8192PCM采樣點(diǎn),在16位的處理模式下,需要占用內(nèi)存16KB,對(duì)于更高精度的24位的處理模式,則需要占用內(nèi)存24KB。因此,現(xiàn)有音頻輸出系統(tǒng),無(wú)法通過(guò)減小音頻解碼時(shí)所占用的輸出緩沖單元來(lái)降低系統(tǒng)成本。
綜上,現(xiàn)有技術(shù)在實(shí)現(xiàn)音頻輸出的過(guò)程中,占用輸出緩沖單元過(guò)大,音頻輸出系統(tǒng)成本高。

發(fā)明內(nèi)容
本發(fā)明提供一種音頻輸出方法及系統(tǒng),用以解決現(xiàn)有技術(shù)在實(shí)現(xiàn)音頻輸出過(guò)程中,占用輸出緩沖單元過(guò)大以及音頻輸出系統(tǒng)成本較高的問(wèn)題。
本發(fā)明方法包括A.將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;B.從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出。
所述步驟A中所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半。
步驟A包括A1、將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元;A2、從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)保存在工作緩沖單元;A3、根據(jù)當(dāng)前所述第一輸出緩沖單元中的數(shù)據(jù)的已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元。
預(yù)先設(shè)置一指針,用于指向所述第一輸出緩沖單元中讀取數(shù)據(jù)的位置,所述指針的值為所述讀取數(shù)據(jù)的地址;所述步驟B中,根據(jù)所述指針的值,從所述第一輸出緩沖單元中讀取數(shù)據(jù),其中,所述指針的初始值為所述第一輸出緩沖單元的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元的首地址。
步驟A3包括A31、獲得每隔一段時(shí)間所述指針的值的變化量;A32、根據(jù)所述變化量將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò),并寫入所述第一輸出緩沖單元。
本發(fā)明系統(tǒng)包括中央處理單元、第一輸出緩沖單元、緩沖單元和直接內(nèi)存訪問(wèn)單元;所述中央處理單元,用于將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;所述直接內(nèi)存訪問(wèn)單元,用于從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出。
所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半。
所述中央處理單元包括第一單元,用于將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元;第二單元,用于從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入所述工作緩沖單元;第三單元,用于根據(jù)當(dāng)前所述第一輸出緩沖單元中已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元。
所述直接內(nèi)存訪問(wèn)單元,用于根據(jù)預(yù)先設(shè)置的指針的值,讀取并輸出所述第一輸出緩沖單元中的數(shù)據(jù);所述指針的值為讀取數(shù)據(jù)的地址,所述指針的初始值為所述第一輸出緩沖單元的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元的首地址。
所述第三單元包括變化量單元,用于獲得每隔一段時(shí)間所述指針的值的變化量;寫入數(shù)據(jù)單元,用于根據(jù)所述變化量將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò),并寫入所述第一輸出緩沖單元。
本發(fā)明通過(guò)將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元,從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出的技術(shù)方案,避免了現(xiàn)有技術(shù)音頻解碼輸出需要占用兩個(gè)一幀雙聲道數(shù)據(jù)長(zhǎng)度的輸出緩沖單元,減小了音頻輸出過(guò)程中需要占用的輸出緩沖單元,降低了音頻輸出系統(tǒng)的成本。


圖1為本發(fā)明方法的流程示意圖;圖2為本發(fā)明方法具體實(shí)施方式
的流程示意圖;圖3為本發(fā)明系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
本發(fā)明的核心思想為通過(guò)將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元,從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出,避免了現(xiàn)有技術(shù)音頻解碼輸出需要占用兩個(gè)雙聲道幀長(zhǎng)的輸出緩沖單元,減小了音頻輸出過(guò)程中需要占用的輸出緩沖單元,降低了音頻輸出系統(tǒng)的成本;其中,所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半,即只能存儲(chǔ)一幀一個(gè)聲道的數(shù)據(jù),而該幀另外一個(gè)聲道的PCM數(shù)據(jù)仍保留在Working Buffer中,CPU根據(jù)當(dāng)前DMA指向緩沖單元中的指針的值,將該幀兩個(gè)聲道的PCM數(shù)據(jù)進(jìn)行交錯(cuò)后發(fā)送給輸出緩沖單元0;這樣就避免了現(xiàn)有技術(shù)音頻解碼需要占用兩個(gè)雙聲道幀長(zhǎng)的輸出緩沖單元,而只需使用1.5個(gè)雙聲道幀長(zhǎng)的輸出緩沖單元,與現(xiàn)有技術(shù)相比,音頻輸出過(guò)程中所占用的輸出緩沖單元減少了25%,降低了音頻輸出系統(tǒng)的成本。
參見(jiàn)圖1,本發(fā)明方法包括S101、CPU/DSP將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半;
較佳地,本步驟包括步驟一將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元;步驟二從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)保存在工作緩沖單元;步驟三根據(jù)當(dāng)前所述第一輸出緩沖單元中的數(shù)據(jù)的已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元;S102、DMA從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出;較佳地,預(yù)先設(shè)置一指針,用于指向所述第一輸出緩沖單元中讀取數(shù)據(jù)的位置,所述指針的值為所述讀取數(shù)據(jù)的地址;根據(jù)所述指針的值,從所述第一輸出緩沖單元中讀取數(shù)據(jù),其中,所述指針的初始值為所述第一輸出緩沖單元的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元的首地址;則,步驟三包括獲得每隔一段時(shí)間所述指針的值的變化量;根據(jù)所述變化量將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò),并寫入所述第一輸出緩沖單元。
參見(jiàn)圖2,本發(fā)明方法的具體實(shí)施例包括步驟S201、CPU對(duì)輸入的音頻壓縮碼流數(shù)據(jù)的第一幀雙聲道數(shù)據(jù)進(jìn)行解碼,獲得第一幀雙聲道PCM數(shù)據(jù);S202、CPU將第一幀雙聲道PCM數(shù)據(jù)進(jìn)行交錯(cuò),并將所述交錯(cuò)后的PCM數(shù)據(jù)發(fā)送給輸出緩沖單元0,然后啟動(dòng)DMA;所述輸出緩沖單元0存儲(chǔ)所述第一幀雙聲道PCM數(shù)據(jù);設(shè)該雙聲道PCM數(shù)據(jù)的長(zhǎng)度為2L,相應(yīng)的,輸出緩沖單元0的長(zhǎng)度也為2L;所述DMA一旦啟動(dòng),就會(huì)不停的按系統(tǒng)的輸出采樣率(Output SamplingRate)從輸出緩沖單元0中讀取數(shù)據(jù),并發(fā)送給Audio DAC,Audio DAC將該數(shù)據(jù)轉(zhuǎn)換成模擬信號(hào),經(jīng)過(guò)功率放大后由揚(yáng)聲器輸出給用戶,直到本音頻壓縮碼流全部解完,由CPU將DMA和Audio DAC關(guān)閉為止。
S203、CPU對(duì)下一幀聲道0的音頻壓縮碼流數(shù)據(jù)進(jìn)行解碼;S204、CPU將所述下一幀聲道0的PCM數(shù)據(jù)發(fā)送給輸出緩沖單元1;所述輸出緩沖單元1存儲(chǔ)所述下一幀聲道0的PCM數(shù)據(jù);設(shè)所述下一幀聲道0的PCM數(shù)據(jù)的長(zhǎng)度為L(zhǎng),相應(yīng)的,輸出緩沖單元1的長(zhǎng)度也為L(zhǎng);所述CPU將所述下一幀聲道0的PCM數(shù)據(jù)全部發(fā)送給所述輸出緩沖單元1后,開(kāi)始對(duì)所述下一幀聲道1的音頻壓縮碼流數(shù)據(jù)進(jìn)行解碼;CPU完成下一幀聲道1的音頻解碼后,將所述下一幀聲道1的PCM數(shù)據(jù)仍保留在Working Buffer中,所述Working Buffer為工作緩沖單元;S205、CPU根據(jù)當(dāng)前DMA對(duì)輸出緩沖單元0的操作指針P0的值,將所述下一幀聲道0的PCM數(shù)據(jù)和所述下一幀聲道1的PCM數(shù)據(jù)進(jìn)行交錯(cuò)后發(fā)送給輸出緩沖單元0;其中,所述下一幀聲道0的PCM數(shù)據(jù)存儲(chǔ)在輸出緩沖單元1中;所述下一幀聲道1的PCM數(shù)據(jù)存儲(chǔ)在Working Buffer中;當(dāng)所述CPU完成對(duì)所述下一幀聲道1的音頻壓縮碼流數(shù)據(jù)的解碼后,讀取DMA當(dāng)前對(duì)輸出緩沖單元0的操作指針的值P0,并用它減去輸出緩沖單元0的首地址,即得到當(dāng)前DMA從所述輸出緩沖單元0中已讀取的數(shù)據(jù)量,設(shè)該數(shù)據(jù)量為N0,那么,所述CPU就將所述輸出緩沖單元1中的所述下一幀聲道0的PCM數(shù)據(jù)和所述Working Buffer中的所述下一幀聲道1的PCM數(shù)據(jù)進(jìn)行交錯(cuò)并發(fā)送給所述輸出緩沖單元0,該發(fā)送的數(shù)據(jù)量與所述已讀取的數(shù)據(jù)量N0相同,以避免覆蓋還未被DMA讀取的數(shù)據(jù);
然后,所述CPU再讀取DMA當(dāng)前對(duì)輸出緩沖單元0的操作指針的值P1,并用它減去所述P0,得到差值N1,那么,所述CPU就再將所述輸出緩沖單元1中的所述下一幀聲道0的PCM數(shù)據(jù)和所述Working Buffer中的所述下一幀聲道1的PCM數(shù)據(jù)進(jìn)行交錯(cuò)并發(fā)送給所述輸出緩沖單元0,該發(fā)送的數(shù)據(jù)量為N1,直到所述下一幀交錯(cuò)后的數(shù)據(jù)全部發(fā)送到所述輸出緩沖單元0,此時(shí),DMA又從所述輸出緩沖單元0的首地址開(kāi)始讀取數(shù)據(jù),即返回步驟S203繼續(xù)執(zhí)行,也就是說(shuō),從第二幀PCM數(shù)據(jù)開(kāi)始的每一幀PCM數(shù)據(jù)的處理過(guò)程都是一樣的。
參見(jiàn)圖3,本發(fā)明系統(tǒng)的具體實(shí)施例,用于對(duì)WMA格式的音頻數(shù)據(jù)進(jìn)行解碼并輸出,該系統(tǒng)包括中央處理單元301、第一輸出緩沖單元302、緩沖單元303、直接內(nèi)存訪問(wèn)單元304、音頻數(shù)字/模擬轉(zhuǎn)換器305及揚(yáng)聲器306;所述中央處理單元301包括第一單元3011、第二單元3012和第三單元3013;所述第三單元3013包括變化量單元30131和寫入數(shù)據(jù)單元30132;所述緩沖單元303包括第二輸出緩沖單元3031和工作緩沖單元3032;其中,假設(shè)每一幀雙聲道的所述WMA格式的音頻數(shù)據(jù)的長(zhǎng)度為2L,則所述第一輸出緩沖單元302的長(zhǎng)度為2L,所述第二輸出緩沖單元3031的長(zhǎng)度為L(zhǎng);所述中央處理單元301,將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元303,從所述緩沖單元303中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元302;所述直接內(nèi)存訪問(wèn)單元304,從所述第一輸出緩沖單元302中讀取數(shù)據(jù)并輸出;其中,所述第一單元3011,用于將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元302;所述第二單元3012,用于從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元3031,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入所述工作緩沖單元3032;所述第三單元3013,用于根據(jù)當(dāng)前所述第一輸出緩沖單元302中已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元302;較佳地,所述直接內(nèi)存訪問(wèn)單元304,根據(jù)預(yù)先設(shè)置的指針的值,讀取并輸出所述第一輸出緩沖單元302中的數(shù)據(jù);所述指針的值為讀取數(shù)據(jù)的地址,所述指針的初始值為所述第一輸出緩沖單元302的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元302的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元302的首地址;所述音頻數(shù)字/模擬轉(zhuǎn)換器305,接收所述直接內(nèi)存訪問(wèn)單元304發(fā)送的數(shù)據(jù),并將該數(shù)據(jù)轉(zhuǎn)換成模擬信號(hào),所述的模擬信號(hào)經(jīng)過(guò)功率放大后由所述揚(yáng)聲器306輸出給用戶,實(shí)現(xiàn)音頻輸出。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種音頻輸出方法,其特征在于,該方法包括步驟A.將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;B.從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出。
2.如權(quán)利要求1所述的方法,其特征在于,所述步驟A中所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半。
3.如權(quán)利要求2所述的方法,其特征在于,步驟A包括A1、將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元;A2、從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)保存在工作緩沖單元;A3、根據(jù)當(dāng)前所述第一輸出緩沖單元中的數(shù)據(jù)的已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元。
4.如權(quán)利要求3所述的方法,其特征在于,預(yù)先設(shè)置一指針,用于指向所述第一輸出緩沖單元中讀取數(shù)據(jù)的位置,所述指針的值為所述讀取數(shù)據(jù)的地址;所述步驟B中,根據(jù)所述指針的值,從所述第一輸出緩沖單元中讀取數(shù)據(jù),其中,所述指針的初始值為所述第一輸出緩沖單元的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元的首地址。
5.如權(quán)利要求4所述的方法,其特征在于,步驟A3包括A31、獲得每隔一段時(shí)間所述指針的值的變化量;A32、根據(jù)所述變化量將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò),并寫入所述第一輸出緩沖單元。
6.一種音頻輸出系統(tǒng),其特征在于,該系統(tǒng)包括中央處理單元、第一輸出緩沖單元、緩沖單元和直接內(nèi)存訪問(wèn)單元;所述中央處理單元,用于將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;所述直接內(nèi)存訪問(wèn)單元,用于從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述緩沖單元包括第二輸出緩沖單元和工作緩沖單元,所述第二輸出緩沖單元的存儲(chǔ)量為所述第一輸出緩沖單元的一半。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述中央處理單元包括第一單元,用于將交錯(cuò)后的第一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入第一輸出緩沖單元;第二單元,用于從第二幀數(shù)字音頻信號(hào)數(shù)據(jù)開(kāi)始的每幀數(shù)字音頻信號(hào)數(shù)據(jù),將第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入第二輸出緩沖單元,并將第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)寫入所述工作緩沖單元;第三單元,用于根據(jù)當(dāng)前所述第一輸出緩沖單元中已讀取的數(shù)據(jù)量,將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò)并寫入所述第一輸出緩沖單元。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述直接內(nèi)存訪問(wèn)單元,用于根據(jù)預(yù)先設(shè)置的指針的值,讀取并輸出所述第一輸出緩沖單元中的數(shù)據(jù);所述指針的值為讀取數(shù)據(jù)的地址,所述指針的初始值為所述第一輸出緩沖單元的首地址,當(dāng)所述指針的值為所述第一輸出緩沖單元的末地址時(shí),所述指針的值重新等于所述第一輸出緩沖單元的首地址。
10.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述第三單元包括變化量單元,用于獲得每隔一段時(shí)間所述指針的值的變化量;寫入數(shù)據(jù)單元,用于根據(jù)所述變化量將所述第一聲道的數(shù)字音頻信號(hào)數(shù)據(jù)和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù)進(jìn)行交錯(cuò),并寫入所述第一輸出緩沖單元。
全文摘要
本發(fā)明公開(kāi)了一種音頻輸出方法及系統(tǒng),用以解決現(xiàn)有技術(shù)在實(shí)現(xiàn)音頻輸出過(guò)程中,占用輸出緩沖單元過(guò)大,音頻輸出系統(tǒng)成本較高的問(wèn)題。本發(fā)明方法包括步驟A.將一幀數(shù)字音頻信號(hào)數(shù)據(jù)寫入緩沖單元,從所述緩沖單元中交錯(cuò)讀取該幀第一聲道和第二聲道的數(shù)字音頻信號(hào)數(shù)據(jù),并寫入第一輸出緩沖單元;B.從所述第一輸出緩沖單元中讀取數(shù)據(jù)并輸出。本發(fā)明還公開(kāi)了一種音頻輸出系統(tǒng)。本發(fā)明用于音頻輸出,減小音頻輸出過(guò)程中所占用的輸出緩沖單元,降低了音頻輸出系統(tǒng)的成本。
文檔編號(hào)G11B20/10GK101030131SQ200710063429
公開(kāi)日2007年9月5日 申請(qǐng)日期2007年1月31日 優(yōu)先權(quán)日2007年1月31日
發(fā)明者侯培新 申請(qǐng)人:北京中星微電子有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
临澧县| 高陵县| 黄平县| 黄陵县| 桃园市| 余干县| 石楼县| 离岛区| 陇川县| 鹤壁市| 夏津县| 囊谦县| 金坛市| 通河县| 于田县| 从化市| 灌阳县| 汝南县| 定日县| 柯坪县| 兴仁县| 寻甸| 清丰县| 公主岭市| 凤冈县| 定日县| 乐至县| 泰州市| 格尔木市| 仙游县| 岐山县| 天气| 于都县| 广西| 长兴县| 龙岩市| 五峰| 射洪县| 叙永县| 汶川县| 莒南县|