新四季網

音頻播放中數據流斷點續接的方法和系統、fifo控制器的製作方法

2023-07-01 07:37:56

專利名稱:音頻播放中數據流斷點續接的方法和系統、fifo控制器的製作方法
技術領域:
本發明涉及音頻數據傳輸控制技術領域,特別是涉及一種音頻播放中數據流斷點續接的方法和系統、以及一種FIFO控制器。
背景技術:
在實際的音頻播放中,通常對應有一個FIFO緩存單元來存儲要播放的音頻數據, FIFO控制器將緩存的音頻數據通過的音頻接口(一般是I2S接口)傳輸到音頻設備的音效卡上,實現音頻數據流的播放。一般的,利用直接存儲器訪問(DMA,Direct Memory Access) 控制器或中央處理器(CPU),通過總線仲裁的方式訪問主存,將主存中的音頻數據寫入到 FIFO緩存單元中。但是由於主存同時和多個總線主設備(bus master)相連,各個master 通過總線從主存獲取相應的數據,通過總線仲裁競爭對主線的佔用。因為訪問優先級、傳輸帶寬、DMA或者CPU的延時等原因,音頻數據不一定能夠及時讀到FIFO中,因此就會出現 FIFO緩存為空的可能,一旦FIFO緩存為空,音頻接口上輸出的數據為空,音頻流會被中斷, 表現為聲音播放中的卡音現象的出現。當再次有數據流輸入至FIFO緩存中,後續的音頻播放會將原本的播放時間拉長。通常的,現有技術的解決方法是增大FIFO緩存的容量,一次請求多個數據進行大量數據的緩存,保證有足夠的數據量傳輸給音頻設備。單純的增大請求量和FIFO緩存空間,當訪問主存等待較長的時間時,也會出現FIFO緩存數據量為空的情況,同樣會產生數據流中斷的現象。總之,需要本領域技術人員迫切解決的一個技術問題就是如何能夠提供一種音頻播放中數據流中斷的處理方法,解決音頻播放中的卡音現象,以提高音頻播放的質量。

發明內容
本發明所要解決的技術問題是提供一種音頻播放中數據流斷點續接的方法和系統、以及一種FIFO控制器,解決音頻播放中的卡音現象,以提高音頻播放的質量。為了解決上述問題,本發明公開了一種音頻播放中數據流斷點續接的方法,包括將主存中存儲的音頻數據寫入到FIFO緩存單元中;FIFO緩存單元對從主存中寫入的音頻數據進行緩存,並將音頻數據以先入先出隊列的形式輸入至音頻設備;當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。優選的,所述方法還包括每輸出一個預測數據,計數器的計數累加1。優選的,所述方法還包括當再次有音頻數據寫入FIFO緩存單元,判斷計數器的計數是否為零;若是,則直接將FIFO緩存單元中的音頻數據輸入至音頻設備;若否,則寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1,直到計數器的計數為零;當FIFO緩存單元不為空時,將FIFO緩存單元中後續的音頻數據輸入至音頻設備。優選的,所述方法還包括寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,FIFO緩存單元為空時,根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。優選的,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個X、Y值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y值,作為預測數據。相應的,本發明還公開了一種音頻播放中數據流斷點續接的系統,包括主存、數據讀取控制單元、FIFO控制器和音頻設備;其中,所述主存,用於存儲音頻數據;所述數據讀取控制單元,用於將主存中存儲的音頻數據寫入到FIFO緩存單元中;所述FIFO控制器包括FIFO緩存單元,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備;所述音頻設備,用於接收FIFO控制器輸出的音頻數據或預測數據,並進行音頻播放。優選的,所述FIFO控制器還包括計數器,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1。優選的,所述FIFO控制器還包括判斷單元,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元;若否,則觸發數據刪除單元;數據刪除單元,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元;其中,數據刪除單元每刪除一個音頻數據,計數器的計數遞減1。優選的,數據刪除單元寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,在FIFO緩存單元為空時,觸發預測數據輸出單元根據之前輸出的預測數據和 /或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。優選的,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個X、Y值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y值,作為預測數據。此外,本發明還公開了一種FIFO控制器,包括FIFO緩存單元,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
優選的,所述FIFO控制器還包括計數器,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1,以及每當數據刪除單元刪除一個音頻數據時,將計數遞減1 ;判斷單元,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元;若否,則觸發音頻數據輸出單元;數據刪除單元,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元。優選的,數據刪除單元寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,在FIFO緩存單元為空時,觸發預測數據輸出單元根據之前輸出的預測數據和 /或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。與現有技術相比,本發明具有以下優點本發明在FIFO緩存單元不為空的情況下直接將音頻數據以先入先出隊列的形式輸入至音頻設備;在FIFO緩存單元為空的情況下進行數據傳輸的有效補充,由於相鄰音頻數據之間具有曲線平滑規律,因此補充的數據根據之前輸出的數據進行二次曲線預測獲得。通過預測數據使得數據流在中斷的情況能夠銜接,解決了音頻播放中的卡音現象,以提高音頻播放的質量。並且,由於輸出的預測數據符合音頻的播放規律,在保證播放連續的情況下不影響用戶的聽覺需求。進一步,本發明通過計數器記錄輸出預測數據的個數,對新寫入FIFO緩存單元中的音頻數據按計數進行相應的刪除,使得傳輸的數據量保持一致,保證了音樂播放中的連貫性。


圖1是本發明一種音頻播放中數據流斷點續接的方法實施例一的流程圖;圖2是本發明一種二次曲線預測的原理示意圖;圖3是本發明一種音頻播放中數據流斷點續接的方法實施例二的流程圖;圖4是本發明一種音頻播放中數據流斷點續接的系統實施例一的結構示意圖;圖5是本發明一種音頻播放中數據流斷點續接的系統實施例二的結構示意圖;圖6是本發明一種FIFO控制器實施例的結構示意圖。
具體實施例方式為使本發明的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖和具體實施方式
對本發明作進一步詳細的說明。本發明的核心構思之一在於加入了 FIFO的容錯機制,能夠在FIFO緩存單元為空的情況下進行數據傳輸的有效補充,由於相鄰音頻數據之間具有曲線平滑規律,因此補充的數據根據之前輸出的數據進行二次曲線預測獲得,符合音頻的播放規律,在保證播放連續的情況下滿足用戶的聽覺需求。參照圖1,示出了本發明一種音頻播放中數據流斷點續接的方法實施例一的流程圖,包括步驟101,將主存中存儲的音頻數據寫入到FIFO緩存單元中;
6
主存中存儲有待播放的音頻數據,當有播放需求時,先將主存中存儲的音頻數據寫入到FIFO緩存單元。一般的,利用DMA或者CPU通過總線仲裁的方式訪問主存,將其存儲的音頻數據寫入到FIFO緩存單元中。步驟102,FIFO緩存單元對從主存中寫入的音頻數據進行緩存,並將音頻數據以先入先出隊列的形式輸入至音頻設備;FIFO緩存單元是一種先進先出的雙口數據緩存器,第一個進入其內的數據第一個被移出,其中一個存儲器的輸入口,另一個口是存儲器的輸出口。它與普通存儲器的區別是沒有外部讀寫地址線,這樣使用起來非常簡單。它只能順序寫入數據,順序的讀出數據,其數據地址由內部讀寫指針自動加1完成,不能像普通存儲器那樣可以由地址線決定讀取或寫入某個指定的地址。步驟103,當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。由於FIFO緩存單元中存儲的數據是通過總線從主存內得到的,而其它總線設備的數據獲取也來自於主存,它們之間通過總線仲裁競爭對主線的佔用。因此,音頻數據不一定能夠以及寫入到FIFO緩存單元中。在本發明實施例中,加入FIFO的容錯機制,在FIFO 緩存單元為空的情況進行數據有效的補充,由於相鄰音頻數據之間具有曲線平滑規律,因此補充的數據是根據之前輸出的數據進行二次曲線預測得出的。二次曲線法預測法是研究時間序列觀察值數據隨時間變動,呈現一種由高到低再到高(或者由低到高再到低)的趨勢變化的曲線外推預測方法。由於時間序列觀察值的散點圖呈現拋物線形狀,所以也稱之為二次拋物線預測。具體的,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個X、Y值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y值,作為預測數據。假設曲線趨勢外推預測模型為Yt = a+bXt+cXt2+dXt3+eXt4+......式中,Yt為t時刻音頻數據的預測值(因變量),Xt為時間變量(自變量),t =
1. f 2 f · · · j η ο當c = d = . . . = 0時,Yt = a+bXt,為線性趨勢外推預測法的模型;當d = e = . . . = 0時,Yt = a+bXt+cXt2,為二次曲線外推預測法的模型。如圖2所示,為本發明一種二次曲線預測的原理示意圖。圖(a)和圖(b)分別給出了兩種預測趨勢,一種遞趨勢,一種遞減趨勢。從圖中可以看出,當需要有數據輸出時,根據之前相鄰輸出時刻輸出的音頻數據值,依據二次曲線的變化趨勢,即可預測到下一時刻輸出值。在本發明實施例中,選取之前的三至四個數據進行預測,需要說明的是,預測的參考值的個數可以是多個,本發明對此不做限定。當預置數目多時,預測直較為準確。通過最小二乘曲線擬合確定預測值的具體計算方法是屬於現有技術的內容,本發明在此不再贅述。需要說明的是,上述音頻數據的計數是按照聲音的類型來得到具體的單位的。如果是16bit的立體聲,那麼一個音頻數據為32bit (對應一個word)的數據;如果是Sbit的立體聲,則一個音頻數據是16bit的數據;如果是Sbit的單聲道,則一個音頻數據為Sbit 的數據。通過本發明實施例,解決了傳統方法中音頻數據流在播放過程中傳輸中斷的現象,使音頻在中斷的情況能夠正常地輸出數據,由於輸出的數據經過了二次曲線預測獲得, 能夠符合音頻的播放規律,能夠滿足聽覺需求。參照圖3,示出了本發明一種音頻播放中數據流斷點續接的方法實施例二的流程圖,包括步驟301,將主存中存儲的音頻數據寫入到FIFO緩存單元中;步驟302,FIFO緩存單元對從主存中寫入的音頻數據進行緩存,並將音頻數據以先入先出隊列的形式輸入至音頻設備;步驟303,當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據;步驟304,將預測數據輸入至音頻設備,且每輸出一個預測數據,計數器的計數累加1 ;在本發明實施例二中,通過二次曲線預測將預測數據輸入至音頻設備後,為了保證主存再次有音頻數據寫入空的FIFO緩存單元後,FIFO控制器能夠正常的輸出數據,增加了計數器。計數器的主要目的是記錄FIFO緩存數據為空後,FIFO控制器通過趨勢預測補充輸出給音頻設備數據的個數,補充輸出一個數據計數器加1。步驟305,當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零; 若否,則執行步驟306 ;若是,則執行步驟307 ;步驟306,寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1,直到計數器的計數為零,將FIFO緩存單元中後續的音頻數據輸入至音頻設備;當計數器的計數不為0時,說明已有預測數據補充輸出,補充輸出的個數為計數器的計數個數η。如果此時通過DMA或者CPU返回給FIFO緩存單元斷點傳輸的後續音頻數據時,就會有多餘的數據出現,多餘的數據與已經輸入至音頻設備的預測數據一一對應,因此需要把返回的音頻數據刪除掉η個。則返回一個音頻數據就刪除一個,並且計數器的計數減1,直到計數器的計數為0為止。此時,如果計數器為0,再有數據寫入FIFO緩存單元中就直接寫如FIFO中。從主存中返回到FIFO緩存單元的數據,以burst進行計算,通常一個burst返回 1、2、4或8個word。可以理解的是,通常情況下,FIFO為空後,再次由主存寫入FIFO緩存單元的音頻數據的個數大於之前預測輸出的數據個數時,則能夠保證刪除相應的音頻數據後,FIFO緩存單元中還緩存有能夠繼續傳輸的音頻數據,以供後續傳輸給音頻設備進行播放。步驟307,直接將FIFO緩存單元中的音頻數據輸入至音頻設備。當計數器為0時,表示沒有通過二次曲線趨勢預測輸出數據,或者已經刪除了與預測數據一一對應的新寫入的音頻數據,則當前FIFO緩存單元的狀態是正常的,可以直接將FIFO緩存單元中的音頻數據以先入先出隊列的形式輸入至音頻設備。在本發明實施例中,依據計數器的計數,對新寫入FIFO緩存單元中的音頻數據進行相應的刪除,使得傳輸的數據量保持一致,保證了音樂播放中的連貫性。需要說明的是,如果新寫入FIFO緩存的音頻數據的個數小於計數器的個數時,則通過刪除FIFO緩存單元中的數據再次為空,按照寫入音頻數據的個數計數器的計數減少相應的數目,後續的傳輸還是通過預測進行輸出。
則在本發明的另一個優選實施例中,寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,FIFO緩存單元為空時,根據之前輸出的和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。例如,當前計數器計數為3,從主存返回FIFO緩存單元兩個數據,相應刪除所述數據後,計數器為1,此時,沒有後續數據再次寫入FIFO緩存單元,FIFO再次為空。假設預置通過三個數據進行預測,則依據之前寫入的兩個音頻數據和輸出的倒數第三個預測數據進行二次曲線預測,得到下一時刻需要輸出的預測數據。也就是說,由於之前輸出的數據也為預測數據,為了保證預測的準確性,此時不再按照輸出數據進行預測,而是將輸出的預測數據結合新寫入的音頻數據進行預測。可以理解的是,當有足夠的音頻數據寫入FIFO緩存單元中時,可以僅依據寫入的音頻數據進行預測。例如,計數器為4,從主存返回FIFO緩存單元4個數據,相應刪除所述數據後,計數器為0。同樣,此時沒有後續數據再次寫入FIFO緩存單元,FIFO再次為空,則直接依據新寫入的最後三個音頻數據進行預測。參照圖4,示出了本發明一種音頻播放中數據流斷點續接的系統實施例一的結構示意圖包括主存41、數據讀取控制單元42、FIFO控制器43和音頻設備44 ;其中,所述主存41,用於存儲音頻數據;所述數據讀取控制單元42,用於將主存中存儲的音頻數據寫入到FIFO緩存單元中;所述FIFO控制器43包括FIFO緩存單元431,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元432,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元433,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備;所述音頻設備44,用於接收FIFO控制器輸出的音頻數據或預測數據,並進行音頻播放。參照圖5,示出了本發明一種音頻播放中數據流斷點續接的系統實施例二的結構示意圖包括主存51、數據讀取控制單元52、FIFO控制器53和音頻設備M ;其中,所述主存51,用於存儲音頻數據;所述數據讀取控制單元52,用於將主存中存儲的音頻數據寫入到FIFO緩存單元中;所述FIFO控制器53包括FIFO緩存單元531,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元532,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元533,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備;所述音頻設備M,用於接收FIFO控制器輸出的音頻數據或預測數據,並進行音頻播放。通常的,所述數據讀取控制單元為DMA控制器或者CPU。所述FIFO控制器通過音
9頻接口陽將音頻數據輸入至音頻設備的音效卡上。在本發明的一個優選實施例中,參照圖5,所述FIFO控制器53還包括計數器534,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1。計數器的主要目的是記錄FIFO緩存數據為空後,FIFO控制器補充輸出給音頻設備數據的個數,即預測數據輸出單元輸出預測數據的個數。補充輸出一個預測數據,計數器加1,當計數器為0時表示沒有通過數據輸出單元補充輸出數據,也即當前FIFO緩存的狀態是正常的。進一步,所述FIFO控制器53還包括判斷單元535,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元532 ;若否,則觸發數據刪除單元536 ;數據刪除單元536,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元;其中,數據刪除單元每刪除一個音頻數據,計數器的計數遞減1。在本發明的一個優選實施例中,數據刪除單元536寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,在FIFO緩存單元為空時,觸發預測數據輸出單元 533根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。進一步,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個χ、γ值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y 值,作為預測數據。參照圖6,示出了本發明一種FIFO控制器實施例的結構示意圖,包括FIFO緩存單元61,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元62,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元63,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。進一步,所述FIFO控制器還包括計數器64,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1,以及每當數據刪除單元刪除一個音頻數據時,將計數遞減1 ;判斷單元65,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元;若否,則觸發音頻數據輸出單元;數據刪除單元66,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元。在本發明的一個優選是實施例中,數據刪除單元寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,在FIFO緩存單元為空時,觸發預測數據輸出單元根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對於系統和裝置
10實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。 以上對本發明所提供的一種音頻播放中數據流斷點續接的方法和系統、以及一種 FIFO控制器,進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種音頻播放中數據流斷點續接的方法,其特徵在於,包括 將主存中存儲的音頻數據寫入到FIFO緩存單元中;FIFO緩存單元對從主存中寫入的音頻數據進行緩存,並將音頻數據以先入先出隊列的形式輸入至音頻設備;當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
2.如權利要求1所述的方法,其特徵在於,所述方法還包括 每輸出一個預測數據,計數器的計數累加1。
3.如權利要求2所述的方法,其特徵在於,所述方法還包括當再次有音頻數據寫入FIFO緩存單元,判斷計數器的計數是否為零; 若是,則直接將FIFO緩存單元中的音頻數據輸入至音頻設備; 若否,則寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1,直到計數器的計數為零;當FIFO緩存單元不為空時,將FIFO緩存單元中後續的音頻數據輸入至音頻設備。
4.如權利要求3所述的方法,其特徵在於,所述方法還包括寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後,FIFO緩存單元為空時,根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
5.如權利要求4所述的方法,其特徵在於,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個X、Y值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y值,作為預測數據。
6.一種音頻播放中數據流斷點續接的系統,其特徵在於,包括主存、數據讀取控制單元、FIFO控制器和音頻設備;其中,所述主存,用於存儲音頻數據;所述數據讀取控制單元,用於將主存中存儲的音頻數據寫入到FIFO緩存單元中; 所述FIFO控制器包括FIFO緩存單元,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備;所述音頻設備,用於接收FIFO控制器輸出的音頻數據或預測數據,並進行音頻播放。
7.如權利要求6所述的系統,其特徵在於,所述FIFO控制器還包括計數器,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1。
8.如權利要求7所述的系統,其特徵在於,所述FIFO控制器還包括判斷單元,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元;若否,則觸發數據刪除單元;數據刪除單元,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元;其中,數據刪除單元每刪除一個音頻數據,計數器的計數遞減1。
9.如權利要求8所述的系統,其特徵在於,數據刪除單元寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後, 在FIFO緩存單元為空時,觸發預測數據輸出單元根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
10.如權利要求9所述的系統,其特徵在於,所述二次曲線預測為將預置數目的輸出時刻作為各個X值,將與輸出時刻對應的音頻數據和/或預測數據作為各個Y值;通過對各個X、Y值進行最小二乘曲線擬合,獲得下一輸出時刻對應的Y值,作為預測數據。
11.一種FIFO控制器,其特徵在於,包括FIFO緩存單元,用於對從主存中寫入的音頻數據進行緩存;音頻數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據不為空時,將音頻數據以先入先出隊列的形式輸入至音頻設備;預測數據輸出單元,用於當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
12.如權利要求11所述的FIFO控制器,其特徵在於,所述FIFO控制器還包括計數器,用於每當預測數據輸出單元輸出一個預測數據時,將計數累加1,以及每當數據刪除單元刪除一個音頻數據時,將計數遞減1 ;判斷單元,用於當再次有音頻數據寫入FIFO緩存單元時,判斷計數器的計數是否為零;若是,則直接觸發音頻數據輸出單元;若否,則觸發音頻數據輸出單元;數據刪除單元,用於寫入一個音頻數據,相應刪除該音頻數據,直到計數器的計數為零,並在FIFO緩存單元不為空時,觸發音頻數據輸出單元。
13.如權利要求12所述的FIFO控制器,其特徵在於,數據刪除單元寫入一個音頻數據,相應刪除該音頻數據並將計數器的計數遞減1後, 在FIFO緩存單元為空時,觸發預測數據輸出單元根據之前輸出的預測數據和/或寫入的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。
全文摘要
本發明提供了一種音頻播放中數據流斷點續接的方法和系統、以及一種FIFO控制器,所述方法包括將主存中存儲的音頻數據寫入到FIFO緩存單元中;FIFO緩存單元對從主存中寫入的音頻數據進行緩存,並將音頻數據以先入先出隊列的形式輸入至音頻設備;當FIFO緩存單元中緩存的音頻數據為空時,根據之前輸出的音頻數據進行二次曲線預測獲得預測數據,並將預測數據輸入至音頻設備。通過本發明,使得音頻播放過程中數據流在中斷的情況能夠銜接,且輸出的數據符合音頻的播放規律,解決了卡音現象,提高了音頻播放的質量,滿足用戶的聽覺需求。
文檔編號G11B20/12GK102403008SQ201010287038
公開日2012年4月4日 申請日期2010年9月17日 優先權日2010年9月17日
發明者艾國 申請人:北京中星微電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀