專利名稱:實現(xiàn)音頻和視頻同步呈現(xiàn)的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用非同步處理裝置實現(xiàn)視頻流和音頻流同步呈現(xiàn)或再現(xiàn)的
背景技術(shù):
MPEG-4是由運動圖像專家組(MPEG)提出的國際標(biāo)準(zhǔn),該組織還發(fā)展了許多其他MPEG類的音頻數(shù)據(jù)和視頻數(shù)據(jù)壓縮標(biāo)準(zhǔn),例如MPEG-1和MPEG-2。編碼后/壓縮后的數(shù)據(jù)被作為對象數(shù)據(jù),并且視頻數(shù)據(jù)和音頻數(shù)據(jù)兩者都被結(jié)合在單個的位流(bit stream)中。因為MPEG-4系統(tǒng)被設(shè)定為把數(shù)據(jù)當(dāng)作對象數(shù)據(jù),便很容易通過將所收到的位流分成多個單個數(shù)據(jù)包來重新組織所收到的位流。因而,MPEG-4播放器允許音頻和視頻數(shù)據(jù)在計算機或者其他設(shè)備上再現(xiàn)。
發(fā)明內(nèi)容
即使MPEG類標(biāo)準(zhǔn)的視頻編碼能提供高清晰的圖像,其應(yīng)用還需要一個或多個更為強大的、專用的處理器,例如一種用于對MPEG類標(biāo)準(zhǔn)的視頻數(shù)據(jù)進行編碼或解碼的數(shù)字信號處理器。只用一個計算機處理完整的MPEG類流會消耗計算機通用CPU(中央處理單元)幾乎所有的計算資源,這樣致使計算機實際上不能用于其它用途。因而,MPEG類數(shù)據(jù)的處理非常需要MPEG-類的技術(shù)能夠使用遠程計算機或設(shè)備網(wǎng)絡(luò),在一個計算機或設(shè)備上處理視頻流的同時將音頻數(shù)據(jù)發(fā)往第二計算機或設(shè)備進行處理,因為這種處理可以用任意標(biāo)準(zhǔn)的計算機或設(shè)備對視頻和音頻進行處理。
因此,需要使用兩個處理裝置或計算機播放或呈現(xiàn)視頻數(shù)據(jù)和音頻數(shù)據(jù),其中為了呈現(xiàn)或再現(xiàn)視頻流和音頻流,視頻流和音頻流需要被同步。
本發(fā)明要解決的一個問題是,使用基本上相互不同步的單獨的設(shè)備提供視頻和音頻的同步呈現(xiàn)或再現(xiàn)。這個問題通過權(quán)利要求1中所揭示的方法解決。在權(quán)利要求8中揭示了應(yīng)用這個方法的裝置。
通過本發(fā)明所揭示的方法以及應(yīng)用這個方法的裝置,有利地解決了這個問題。
下面所描述的發(fā)明特征是利用兩個處理裝置或計算機使音頻數(shù)據(jù)的呈現(xiàn)或再現(xiàn)與適當(dāng)?shù)囊曨l數(shù)據(jù)同步。由第一處理裝置接收包括音頻流和視頻流的數(shù)據(jù)流,將收到的數(shù)據(jù)流分成視頻流和音頻流,并由第一處理裝置給音頻數(shù)據(jù)包加上時間戳。隨后音頻數(shù)據(jù)包被轉(zhuǎn)發(fā)給第二處理裝置,確定第二處理裝置的本地系統(tǒng)時間,基于本地系統(tǒng)時間和音頻數(shù)據(jù)包的時間戳計算音頻數(shù)據(jù)包從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期。隨后基于傳輸時間周期使視頻和音頻播放/呈現(xiàn)同步。有利的是,播放處理伴隨有對傳輸時間周期的低通濾波,這樣可獲得用于使視頻和音頻的呈現(xiàn)或再現(xiàn)同步的平均傳輸時間。也可以使用一個中值濾波器,對所測量的傳輸時間周期進行低通濾波以得到測量結(jié)果。
本發(fā)明解決上述現(xiàn)有技術(shù)的問題,并提供一種能夠在啟動時快速反應(yīng)同時在處理期間高度穩(wěn)定的方法。中值濾波器還特別不受大測量誤差的影響。
MPEG類流被分成視頻數(shù)據(jù)和音頻數(shù)據(jù),其中視頻數(shù)據(jù)在第一裝置PC_A上進行處理,音頻數(shù)據(jù)被加上時間戳并轉(zhuǎn)發(fā)給第二設(shè)備PC_B,PC_B比較所收到的時間戳和本地時間。二者之差被認為是所需傳輸時間。第一處理設(shè)備和第二處理設(shè)備的內(nèi)部定時時鐘并不同步。
通過從第二處理設(shè)備PC_B的本地時間中減去平均傳輸時間周期獲得用于使視頻流和音頻流同步的時間參考。隨后可以用數(shù)字濾波器進行附加的低通濾波,例如使用截止頻率比需要消除的高頻動作(抖動)的頻率低的巴特沃思(Butterworth)濾波器。
參考附圖對本發(fā)明的實施例進行描述,其中圖1是描述呈現(xiàn)或再現(xiàn)視頻和音頻的第一和第二處理裝置網(wǎng)絡(luò)的方塊圖;圖2是發(fā)明步驟的流程圖。
具體實施例方式
圖1的方塊圖表示根據(jù)本發(fā)明的多媒體計算機網(wǎng)絡(luò)的主要結(jié)構(gòu),參考標(biāo)號100表示MPEG-4播放器,將MPEG-4數(shù)據(jù)流102發(fā)往包括一個視頻播放器108的第一處理裝置PC_A104。所收到的MPEG類流包括系統(tǒng)、視頻和音頻流,并進一步包含視頻數(shù)據(jù)包116和音頻數(shù)據(jù)包134。
流分析模塊110檢查流,因為系統(tǒng)流還包括視頻和音頻播放器的結(jié)構(gòu)和配置。第一計算機PC_A104處理獲取自MPEG-4視頻流的視頻數(shù)據(jù),并用顯示器顯示,例如所附帶的監(jiān)視器。加時間戳模塊112核對本地時鐘106,并將時間戳插入音頻數(shù)據(jù)包中。網(wǎng)絡(luò)118,例如以太型網(wǎng)絡(luò)(TCP/IP),連接第一處理裝置104和第二處理裝置120,例如第二計算機PC_B,第二計算機PC_B使用音頻播放器126處理接收自第一計算機PC_A的音頻數(shù)據(jù)包。第一計算機104的時間基114與第二計算機120的時間基132彼此不同步,并有偏離彼此的趨勢。第二計算機或網(wǎng)絡(luò)或第一計算機核對本地時鐘122,并比較所收到的時間戳124和時鐘122的本地時間。第二計算機或網(wǎng)絡(luò)或第一計算機計算相應(yīng)的傳輸時間周期。
為了獲得平均傳輸時間,中值濾波器128能夠用于對傳輸時間周期進行低通濾波,該平均傳輸時間轉(zhuǎn)而用于使音頻和視頻播放同步。巴特沃思濾波器130提供附加的低通濾波,目的是改善最終結(jié)果。
MPEG-4播放器100將MPEG-4數(shù)據(jù)流送往第一處理裝置PC_A,由PC_A處理視頻數(shù)據(jù),并且還通過網(wǎng)絡(luò)將實現(xiàn)的并加有時間戳的音頻數(shù)據(jù)包轉(zhuǎn)發(fā)給第二計算機PC_B。在從第一計算機PC_A接收到音頻數(shù)據(jù)包及其配置之后,第二計算機PC_B比較所收到的時間戳和本地時間。二者的差值被認為是傳輸時間周期。
視頻處理計算機104的時間基和音頻處理計算機120的時間基不同步。同樣,第一計算機和第二計算機的內(nèi)部時鐘不同步,并且緩慢地偏離彼此。因而,可以認為第二計算機所接收的時間戳可以根據(jù)它們的值被改變,因為實際傳輸時間不能被精確指定。這樣可以具有不同的原因,例如網(wǎng)絡(luò)線或線路上的流量,TCP/IP和以太網(wǎng)結(jié)構(gòu),操作系統(tǒng)的線程,數(shù)據(jù)量的變化等。為了使音頻數(shù)據(jù)的呈現(xiàn)或再現(xiàn)與適當(dāng)?shù)囊曨l數(shù)據(jù)同步,計算數(shù)據(jù)包的發(fā)送和接收之間的時間差。然后用中值濾波器對差值進行濾波。
中值濾波器是離散時間非線性濾波器,存儲所獲取的樣本,將樣本分類并提供中間樣本值(或者是輸入值的數(shù)目為偶數(shù)時,取兩個中間樣本值的平均值)作為其運算的輸出。用于本發(fā)明的中值濾波器對于它所處理的輸入樣本數(shù)目是很靈活的。開始時所有的樣本值都被設(shè)為零。在采集了預(yù)定的第一數(shù)目的樣本之后,例如19個,中值濾波器開始輸出平均傳輸時間,這樣中值濾波器的長度對應(yīng)于所述第一數(shù)目。作為一種選擇,在一接收到進一步輸入的樣本時,每另外接收到一個輸入樣本,所用的濾波器長度增加1,直到達到預(yù)定的最大長度,例如499。從而既能實現(xiàn)起始時具有快速反應(yīng)時間也能實現(xiàn)穩(wěn)定地連續(xù)運算。隨后由數(shù)字濾波器再進行通濾波,例如使用截至頻率比需要消除的高頻動作(抖動)的頻率低的巴特沃思濾波器。這類運算能讓視頻和音頻在時間上同步呈現(xiàn),從而消除了兩個計算機時間基上的不連續(xù)。
在圖2流程圖的步驟200中,由第一處理裝置PC_A接收包括視頻和音頻流的MPEG類流。在接下來的步驟202中,將所述MPEG類數(shù)據(jù)流分成視頻流和音頻流,其中包含視頻播放器的第一處理計算機PC_A處理視頻流,包含音頻播放器的第二處理計算機PC_B處理音頻流。隨后,在步驟204,視頻處理計算機PC_A給音頻數(shù)據(jù)包加上時間戳并轉(zhuǎn)發(fā)給音頻處理計算機PC_B,該計算機PC_B被配置為從視頻處理計算機PC_A接收音頻數(shù)據(jù)。在接下來的步驟206中,確定音頻處理計算機的本地系統(tǒng)時間。隨后在步驟208計算音頻流從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期。在最后的步驟210中,基于計算出的傳輸時間周期使音頻和視頻的呈現(xiàn)或再現(xiàn)同步。
也可以用視頻數(shù)據(jù)的呈現(xiàn)或再現(xiàn)與適當(dāng)?shù)囊纛l數(shù)據(jù)的同步代替音頻數(shù)據(jù)的呈現(xiàn)或再現(xiàn)與適當(dāng)?shù)囊曨l數(shù)據(jù)的同步,在這種情況下,由第一處理裝置給視頻流的視頻數(shù)據(jù)包加上時間戳,并且將視頻數(shù)據(jù)包轉(zhuǎn)發(fā)給第二處理設(shè)備,該第二處理設(shè)備被配置為接收音頻數(shù)據(jù)包?;谙鄳?yīng)的本地系統(tǒng)時間和視頻數(shù)據(jù)包的時間戳計算視頻數(shù)據(jù)包從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期。
權(quán)利要求
1.一種實施音頻和視頻呈現(xiàn)或再現(xiàn)的方法,包括以下步驟-接收包括視頻流和音頻流的數(shù)據(jù)流;-將所述數(shù)據(jù)流分成視頻流和音頻流;-由第一處理裝置給所述音頻流的音頻數(shù)據(jù)包加上時間戳,并將音頻數(shù)據(jù)包轉(zhuǎn)發(fā)給被配置為接收音頻數(shù)據(jù)包的第二處理裝置;-確定所述第二處理裝置的本地系統(tǒng)時間;-基于所述本地系統(tǒng)時間和所述音頻數(shù)據(jù)包時間戳,計算音頻數(shù)據(jù)包從所述第一處理裝置傳輸?shù)剿龅诙幚硌b置的傳輸時間周期;-基于所述計算出的傳輸時間周期,使音頻和視頻的呈現(xiàn)或再現(xiàn)同步。
2.根據(jù)權(quán)利要求1的方法,其中第一處理裝置使用第一處理裝置的內(nèi)部時鐘給音頻數(shù)據(jù)包加上時間戳。
3.根據(jù)權(quán)利要求1或2的方法,其中通過第二處理裝置的本地時間減去傳輸時間周期來獲得呈現(xiàn)或再現(xiàn)音頻的時間參照。
4.根據(jù)權(quán)利要求1至3中一個權(quán)利要求的方法,其中基于從第一處理裝置傳輸?shù)降诙幚硌b置的多個音頻數(shù)據(jù)包計算傳輸時間周期。
5.根據(jù)權(quán)利要求1至4中一個權(quán)利要求的方法,其中,當(dāng)計算所述傳輸時間周期時,為了獲得平均傳輸時間周期,對計算出的傳輸時間周期進行中值濾波,其中,作為一種選擇,所述中值濾波的長度動態(tài)地改變,從輸入傳輸時間周期值的預(yù)定第一數(shù)目開始,根據(jù)進一步收到的傳輸時間周期值的數(shù)目而增加,直到達到輸入傳輸時間周期值的預(yù)定最大數(shù)目。
6.根據(jù)權(quán)利要求5的方法,其中所述平均傳輸時間周期用于使音頻和視頻的呈現(xiàn)或再現(xiàn)同步。
7.根據(jù)權(quán)利要求5或6的方法,其中累積的傳輸時間周期值被分類用于所述濾波。
8.一種實施視頻和音頻呈現(xiàn)或再現(xiàn)的系統(tǒng),包括-用于接收包括視頻流和音頻流的數(shù)據(jù)流的裝置;-用于將所述數(shù)據(jù)流分成視頻流和音頻流的裝置;-用于由第一處理裝置給所述音頻流的音頻數(shù)據(jù)包加上時間戳并將音頻數(shù)據(jù)包轉(zhuǎn)發(fā)給被配置為接收音頻數(shù)據(jù)包的第二處理裝置的裝置;-用于確定第二處理裝置的本地系統(tǒng)時間的裝置;-用于基于本地系統(tǒng)時間和所述音頻數(shù)據(jù)包的時間戳,計算音頻數(shù)據(jù)包從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期的裝置;-用于基于所述計算出的傳輸時間周期,使音頻和視頻的呈現(xiàn)或再現(xiàn)同步的裝置。
9.根據(jù)權(quán)利要求8的系統(tǒng),其中,當(dāng)計算所述傳輸時間周期時,為了獲得平均傳輸時間周期,對計算出的傳輸時間周期進行中值濾波,其中,作為一種選擇,中值濾波器的長度動態(tài)地改變,從輸入傳輸時間周期值的預(yù)定第一數(shù)目開始,根據(jù)進一步收到的傳輸時間周期值的數(shù)目而增加,直到達到輸入傳輸時間周期值的預(yù)定最大數(shù)目。
10.一種計算機可讀存儲介質(zhì),具有執(zhí)行下面步驟的代碼-接收包括視頻流和音頻流的數(shù)據(jù)流;-將所述數(shù)據(jù)流分成視頻流和音頻流;-由第一處理裝置給所述音頻流的音頻數(shù)據(jù)包加上時間戳,并將音頻數(shù)據(jù)包轉(zhuǎn)發(fā)被配置為接收音頻數(shù)據(jù)包的給第二處理裝置;-確定第二處理裝置的本地系統(tǒng)時間;-基于本地系統(tǒng)時間和所述音頻數(shù)據(jù)包時間戳,計算音頻數(shù)據(jù)包從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期;-基于所述計算出的傳輸時間周期,使音頻和視頻的呈現(xiàn)或再現(xiàn)同步。
全文摘要
本發(fā)明描述視頻數(shù)據(jù)的呈現(xiàn)或再現(xiàn)與音頻數(shù)據(jù)的同步,其每種數(shù)據(jù)分別在兩個非同步計算機上處理。MPEG類流分為視頻數(shù)據(jù)和音頻數(shù)據(jù),其中視頻數(shù)據(jù)應(yīng)用第一處理裝置處理,而音頻數(shù)據(jù)被加上時間戳轉(zhuǎn)發(fā)給第二處理裝置,由第二處理裝置對其所收到的時間戳與本地時間進行比較?;诒镜叵到y(tǒng)時間和插入在音頻數(shù)據(jù)包中的時間戳計算音頻數(shù)據(jù)包從第一處理裝置傳輸?shù)降诙幚硌b置的傳輸時間周期。隨后實現(xiàn)音頻和視頻呈現(xiàn)或再現(xiàn)的同步。
文檔編號H04N7/52GK1902941SQ200480039839
公開日2007年1月24日 申請日期2004年11月22日 優(yōu)先權(quán)日2004年1月6日
發(fā)明者彼得·施泰因博恩, 馬里奧·西克 申請人:湯姆遜許可公司