專利名稱:一種音視頻同步方法、裝置及一種數(shù)字電視芯片的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動多媒體廣播技術(shù)領(lǐng)域,特別是涉及一種移動多媒體廣播 系統(tǒng)的音視頻同步方法、裝置和一種提供移動多媒體廣播接收的數(shù)字電視芯 片。
背景技術(shù):
移動多媒體廣播是新興的一種多媒體播放技術(shù),近年來,這種技術(shù)和標
準發(fā)展迅速,例如歐洲的數(shù)字視頻廣播手持式接收(DVB-H, Digital Video Broadcast Handheld)、美國的々某體單 一前向鏈路(MediaFLO, Media Forward Link Only )和中國的移動多媒體廣播系統(tǒng)(CMMB, China Mobile Multimedia Broadcast)等。移動多媒體廣播可以為其終端用戶提供許多服務(wù)內(nèi)容,如廣 告、天氣預(yù)報、新聞、體育節(jié)目、綜藝、多媒體廣播劇、電影等節(jié)目,用戶 可以根據(jù)自己的愛好選擇移動多媒體廣播的業(yè)務(wù)。
使用移動多媒體廣播業(yè)務(wù)的用戶可以通過'手持的終端,在高速移動的 情況下,用移動終端觀看電視。用戶接收到節(jié)目單,可以選擇自己有權(quán)利 收看的頻道,接收選擇頻道的多媒體數(shù)據(jù),從而實現(xiàn)在移動終端上看自己 選擇的電視節(jié)目。在電視節(jié)目播放過程中,解決媒體播放音視頻同步是關(guān)鍵 技術(shù)之一,通常的媒體播放解決方案是在生成數(shù)據(jù)流時要打上時間戳,在 播放時基于時間戳,對數(shù)據(jù)流進行控制,即早到的或晚到的數(shù)據(jù)塊進行等待 或快速處理。但是,這些技術(shù)方案有其應(yīng)用的范圍,有的適用于文件播放,有 的適用于網(wǎng)絡(luò)環(huán)境中的流媒體播放,它們在各自的領(lǐng)域內(nèi)有其優(yōu)異的性能, 但不一定適合應(yīng)用在廣播傳輸?shù)念I(lǐng)域內(nèi)。例如微軟的DirectShow對于音視 頻同步的解決方案是引入一個反饋機制,就是要將當前數(shù)據(jù)流速度太快或太 慢的狀態(tài)反饋給"源",讓源去放慢或加快數(shù)據(jù)流的速度??墒?,廣播的數(shù)據(jù) 是不可控的,接收終端只能被動的接收數(shù)據(jù),而不能夠反過來控制廣播數(shù)據(jù)
的速度和內(nèi)容,因此,類似于將當前數(shù)據(jù)流速度太快或太慢的狀態(tài)反饋給 "源",讓源去放慢或加快數(shù)據(jù)流的速度的方法是不適用的。
此外,在數(shù)字電視播放過程中,廣播信道傳輸中存在著誤碼問題,尤其 在信號弱,或多徑等惡劣條件下,誤碼會明顯增多,這嚴重影響了電視節(jié)目 的播放質(zhì)量。通常在文件媒體播放中,幾乎不用考慮誤碼的問題,而在網(wǎng)絡(luò) 媒體信息傳輸中,又具有錯誤重傳的機制。顯然,以上兩種方式都不適用在 移動多^某體廣播系統(tǒng)中,無法解決其誤碼問題。
總之,需要本領(lǐng)域技術(shù)人員迫切解決的一個技術(shù)問題就是如何能夠有
效解決移動多媒體廣播系統(tǒng)的音-見頻同步和誤碼問題,以實時、準確地播力丈 數(shù)字電浮見節(jié)目,提升移動終端用戶的感官感受。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供 一種移動多媒體廣播系統(tǒng)的音視頻同 步方法和裝置,能夠有效解決移動多媒體廣播系統(tǒng)的音視頻同步和誤碼問題, 以實時、準確地播放數(shù)字電視節(jié)目,提升移動終端用戶的感官感受。
本發(fā)明的另一個目的是提供一種接收移動多媒體廣播的數(shù)字電視芯片, 所述數(shù)字電視芯片包括上述音視頻同步裝置,以實現(xiàn)本發(fā)明的具體應(yīng)用。
為了解決上述問題,本發(fā)明實施例提供了 一種移動多媒體廣播系統(tǒng)的音
視頻同步方法,包括以下步驟
建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;
根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢所述映射關(guān)系表獲取音 頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;
根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播放進行調(diào)整, 調(diào)整至音視頻同步狀態(tài)。
優(yōu)選的,所述根據(jù)音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播放 進行調(diào)整包括以下步驟
比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳;
計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的差距;
當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
優(yōu)選的,在比較音視頻時間戳之前,還包括
判斷所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信, 則計算差距,如果不可信,則放棄當前幀。
優(yōu)選的,通過以下方式確定時間戳是否可信
判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定距離范圍內(nèi)的增 長;若是,則將當前時間戳確認為可信數(shù)據(jù);若否,則為不可信數(shù)據(jù)。 優(yōu)選的,所述對視頻播放進行調(diào)整的步驟包括 如果音頻時間戳晚于視頻時間戳,則視頻播放暫停一定數(shù)量的幀; 如果音頻時間戳早于視頻時間戳,則判斷視頻數(shù)據(jù)緩沖區(qū)中是否有視頻 幀數(shù)據(jù),若有,則視頻跳過一定數(shù)量的幀;若無,則記錄跳幀需求,待視頻 數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。
優(yōu)選的,所述映射關(guān)系表為先進先出結(jié)構(gòu)。
優(yōu)選的,所述建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表包 括以下步驟
記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止地址; 記錄每幀音頻的時間戳;
建立所述每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止地址與每幀音頻的 時間戳的映射關(guān)系表。
優(yōu)選的,所述獲取音頻數(shù)據(jù)的時間戳還包括
每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在所述映射關(guān)系表的當 前表項的音頻凝:據(jù)起始地址和終止地址范圍內(nèi); 如果是,則繼續(xù)讀取當前表項的時間戳; 如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的時間戳。 優(yōu)選的,所述調(diào)整條件為一閾值范圍。
相應(yīng)的,本發(fā)明實施例還提供了一種移動多媒體廣播系統(tǒng)的音視頻同步
裝置,包括
映射關(guān)系表建立模塊,用于建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的
映射關(guān)系表;
時間戳獲取模塊,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢 所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù) 的時間戳;
播放調(diào)整模塊,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳, 對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
優(yōu)選的,所述播放調(diào)整模塊進一步包括
時間戳比較子模塊,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間
戳;
差距計算子模塊,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳 的差距;
視頻調(diào)整子模塊,用于當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
優(yōu)選的,所述音視頻同步裝置還包括
時間戳確認模塊,用于在比較音視頻時間戳之前,判斷所述音頻數(shù)據(jù)的 時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不可信, 則i文棄當前幀。
優(yōu)選的,所述時間戳確認模塊進一步包括
判斷子模塊,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定 距離范圍內(nèi)的增長;
確認子模塊,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為可信 數(shù)據(jù);
否定子模塊,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不可信 數(shù)據(jù)。
優(yōu)選的,所述視頻調(diào)整子模塊進一步包括
暫停單元,用于當音頻時間戳晚于視頻時間戳?xí)r,視頻播放暫停一定數(shù)
量的幀;
跳進單元,包括
緩存判斷子單元,用于當音頻時間戳早于視頻時間戳?xí)r,判斷視頻數(shù)據(jù) 緩沖區(qū)中是否有視頻幀數(shù)據(jù);
跳幀子單元,用于當緩存判斷單元結(jié)果為是時,則視頻跳過一定數(shù)量的
幀;
緩跳子單元,用于當緩存判斷單元結(jié)果為否時,則記錄跳幀需求,待視 頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。
優(yōu)選的,所述映射關(guān)系表為先進先出結(jié)構(gòu)。 優(yōu)選的,所述映射關(guān)系表建立模塊進一步包括 地址記錄子模塊,用于記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止 地址;
時間戳記錄子模塊,用于記錄每幀音頻的時間戳; 關(guān)系表建立子模塊,用于建立所述每幀音頻解碼后的音頻數(shù)據(jù)起始地址 和終止地址與每幀音頻的時間戳的映射關(guān)系表。 優(yōu)選的,所述時間戳獲取模塊還包括
更新子模塊,用于每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在所 述映射關(guān)系表的當前表項的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi);如果是, 則繼續(xù)讀耳又當前表項的時間戳;如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的 時間戳。
優(yōu)選的,所述調(diào)整條件為一閾值范圍。
本發(fā)明實施例還提供了 一種數(shù)字電視芯片,包括 信道解碼模塊,用于將射頻前端處理后的基帶信號解碼為復(fù)用碼流; 解復(fù)用模塊,用于將復(fù)用碼流解復(fù)用為視頻碼流和音頻碼流; 視頻解碼器,用于視頻解碼; 音頻解碼器,用于音頻解碼;
視頻輸出模塊,用于輸出視頻數(shù)據(jù);
音頻輸出模塊,用于輸出音頻數(shù)據(jù); 以及,
包括以下子模塊的音視頻同步模塊
映射關(guān)系表建立子模塊,用于建立解碼后的音頻邀:據(jù)存放地址與時間戳 的映射關(guān)系表;
時間戳獲取子模塊,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查 詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù) 據(jù)的時間戳;
播放調(diào)整子模塊,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳, 對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
優(yōu)選的,所述播放調(diào)整子模塊進一步包括
時間戳比較單元,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳; 差距計算單元,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的 差距;
視頻調(diào)整單元,用于當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。 優(yōu)選的,所述音視頻同步模塊還包括
時間戳確認子模塊,用于在比較音視頻時間戳之前,判斷所述音頻數(shù)據(jù) 的時間戳和-現(xiàn)頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不可 信,則;改棄當前幀。
優(yōu)選的,所述時間戳確認子模塊進一步包括
判斷單元,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定距 離范圍內(nèi)的增長;
確認單元,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為可信數(shù)
據(jù);
否定單元,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不可信數(shù)據(jù)。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點
首先,本發(fā)明針對廣播數(shù)據(jù)不可控的特點,先讓音視頻數(shù)據(jù)自由播放, 然后使用監(jiān)視程序?qū)崟r比較音視頻的播放進度,給出相應(yīng)的調(diào)整意見,如視 頻暫停一幀或向前跳一幀等,在最大限度地提高了每次開機時或切換頻道后 節(jié)目播放速度的同時,保證了在終端不能控制"源"的條件下,音視頻播放的 同步。
其次,本發(fā)明針對廣播信道傳輸存在誤碼,而且在信號弱或多徑等惡劣 條件下,誤碼會明顯增多的情況,使用了音視頻數(shù)據(jù)時間戳確認機制,在每 次要做音視頻播放時間比對前,先對音視頻的時間戳作確認。只有時間戳數(shù) 據(jù)可信時,才根據(jù)情況對音視頻播放做相應(yīng)調(diào)整。采用時間戳數(shù)據(jù)確認機制, 有效地克服了由于誤碼造成的音視頻同步的誤調(diào)整,抑制了廣播信道的傳輸 誤碼導(dǎo)致的對音視頻調(diào)節(jié)的干擾。
圖1是本發(fā)明的一種移動多媒體廣播系統(tǒng)的音視頻同步方法實施例1的 步驟流程圖2是本發(fā)明的一種移動多媒體廣播系統(tǒng)的音視頻同步方法實施例2的 步驟流程圖3是本發(fā)明的一種移動多媒體廣播系統(tǒng)的音視頻同步裝置實施例的結(jié) 構(gòu)框圖4是本發(fā)明應(yīng)用圖2所示的裝置實施例進行音視頻同步的步驟流程圖; 圖5是本發(fā)明的一種數(shù)字電視芯片的結(jié)構(gòu)框圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖 和具體實施方式
對本發(fā)明作進一步詳細的說明。
本發(fā)明的核心構(gòu)思之一在于,通過建立解碼后的音視頻數(shù)據(jù)存放地址與
時間戳的映射關(guān)系表,以及音視頻播放監(jiān)控中的時間戳確認機制,解決移動 多媒體廣播系統(tǒng)的音視頻同步和誤碼問題,以實時、準確地播放數(shù)字電視節(jié)
目,提升移動終端用戶的感官感受。
參照圖1,示出了本發(fā)明一種移動多々某體廣播系統(tǒng)的音視頻同步方法實
施例1的步驟流程圖,具體可以包括以下步驟
步驟101:建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;
根據(jù)解復(fù)用時每一幀音頻與時間戳的——映射關(guān)系,以及每一幀音頻和 解碼后的音頻數(shù)據(jù)存放地址的——映射關(guān)系建立一個音頻數(shù)據(jù)存放地址和 時間戳的映射關(guān)系表。所述映射關(guān)系表可以采用先進先出(FIFO , First In First Out)結(jié)構(gòu),也可采用鏈表結(jié)構(gòu)等其它結(jié)構(gòu)。本領(lǐng)域技術(shù)人員可以根據(jù) 需要采用適合的表結(jié)構(gòu),本發(fā)明無須對此作出限制。
在建立映射關(guān)系表時,記錄每一幀音頻解碼后的音頻數(shù)據(jù)在緩存中的起 始地址和終止地址,并記錄該幀音頻的時間戳,將音頻數(shù)據(jù)在緩存中的起始 地址和終止地址以及音頻時間戳寫入映射關(guān)系表。在音頻播;故時,可以依據(jù) 當前的播放數(shù)據(jù)所指向的存放地址通過查詢所述映射關(guān)系表從而獲得當前音 頻播-;故所對應(yīng)的時間。
步驟102:根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢所述映射關(guān) 系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;
根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢映射關(guān)系表獲取音頻數(shù) 據(jù)的時間戳;根據(jù)解復(fù)用時每一幀視頻與時間戳的一一映射關(guān)系獲得當前播 放的視頻幀所對應(yīng)的時間戳。
映射關(guān)系表每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在當前表項 的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi),如果是,則繼續(xù)讀取當前表項的時 間戳;如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的時間戳。
步驟103:根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播 放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播放進行調(diào)整,是解決音視頻同步的最佳方案。實現(xiàn)這一方案有多種途徑,例如可以通過
比較音視頻時間戳的差距來調(diào)整,當時間戳的差距超出一定范圍,達到需要 調(diào)整的條件,就根據(jù)時間戳的差距情況對視頻播放進行調(diào)整,使視頻暫停播
放或向前跳進一定數(shù)量的幀,以達到音視頻同步;也可以通過設(shè)置時間線性 遞增的參考時鐘來調(diào)整,在播放時,讀取音視頻數(shù)據(jù)的時間戳,同時參考當 前參考時鐘上的時間來安排播放。如果音視頻數(shù)據(jù)的時間戳的時間早于當前 參考時鐘上的時間,則不急于播放該音視頻數(shù)據(jù),直到參考時鐘達到所述音 視頻數(shù)據(jù)的時間戳的時間;如果音視頻數(shù)據(jù)的時間戳的時間晚于當前參考時 鐘上的時間,則"盡快,,播放該數(shù)據(jù)或者索性將此數(shù)據(jù)"丟棄,,,以使播放進 度追上參考時鐘。總之,本領(lǐng)域技術(shù)人員在應(yīng)用中可采用任意適合的方法, 依據(jù)音視頻時間戳對音視頻播放進行同步調(diào)整,本發(fā)明無須對此作出限制。
參照圖2,示出了本發(fā)明一種移動多媒體廣播系統(tǒng)的音視頻同步方法實 施例2的步驟流程圖,具體可以包括以下步驟
步驟201:建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表; 根據(jù)解復(fù)用時每一幀音頻與時間戳的一一映射關(guān)系,以及每一幀音頻和 解碼后的脈碼調(diào)制(PCM, Pulse Code Modulation)數(shù)據(jù)存放地址的——映 射關(guān)系建立一個PCM數(shù)據(jù)存》文地址和時間戳的映射關(guān)系表。所述映射關(guān)系 表采用先進先出(FIFO , First In First Out)結(jié)構(gòu)。在建立映射關(guān)系表時,記 錄每一幀音頻解碼后的PCM數(shù)據(jù)在緩存中的起始地址和終止地址,并記錄 該幀音頻的時間戳,將PCM數(shù)據(jù)在緩存中的起始地址和終止地址以及音頻 時間戳順序?qū)懭胗成潢P(guān)系表。在音頻播放時,可以依據(jù)當前的播放數(shù)據(jù)所指 向的存放地址通過查詢所述映射關(guān)系表從而獲得當前音頻播放所對應(yīng)的時 間。
需要說明的是,本實施中解碼后的音頻數(shù)據(jù)采用PCM格式,在實際應(yīng) 用中,本領(lǐng)域技術(shù)人員也可根據(jù)需要使用其它數(shù)據(jù)格式,本發(fā)明無需對此作 出限制。
步驟202:根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢所述映射關(guān)
系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;
根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢映射關(guān)系表獲取音頻數(shù)
據(jù)的時間戳;根據(jù)解復(fù)用時每一幀視頻與時間戳的一一映射關(guān)系獲得當前播 放的視頻幀所對應(yīng)的時間戳。
映射關(guān)系表每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在當前表項 的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi),如果是,則繼續(xù)讀取當前表項的時 間戳;如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的時間戳。
步驟203:判斷所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳是否可信, 如果可信,則執(zhí)行步驟204;如果不可信,則不作任何干預(yù);
在音視頻播放時,可以依據(jù)當前播放的音視頻數(shù)據(jù)而獲得時間戳,如果 已播放的預(yù)置次數(shù)內(nèi)的音視頻的時間戳的值保持一定距離范圍內(nèi)的增長規(guī) 律,則認為當前音視頻時間戳可信,將當前時間戳確認為可信數(shù)據(jù),比較當 前音視頻時間戳;否則,則認為是不可信數(shù)據(jù),放棄比較當前幀,不作任何 干預(yù)。
步驟204:比較當前正在播放的音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳, 計算音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的差距;
當時間戳數(shù)據(jù)可信時,每隔一段時間比較當前正在播放的音頻數(shù)據(jù)的時 間戳和視頻數(shù)據(jù)的時間戳,計算二者之間的差距。
步驟205:判斷所述差距是否達到調(diào)整條件,如果是,則向下執(zhí)行;如 果否,則不作任何干預(yù);
判斷所述音視頻時間戳差距是否達到調(diào)整條件,本實施例中,所述調(diào)整 條件為一閾值范圍。當音^L頻時間戳的差距在此閾值范圍內(nèi),即達到調(diào)整條 件,則對音視頻播放進行調(diào)整;如果不在此閾值范圍內(nèi),則不作調(diào)整。如 當音視頻時間戳的的差距在正常范圍內(nèi)時,無須對音視播放進行調(diào)整;但是, 當音視頻時間戳的差距超過了一定閾值的時候,也同樣不作調(diào)整,這是因為 誤碼或時間戳的編碼回頭會造成兩個時間戳相差過大,而超過一定閾值,有 可能導(dǎo)致誤調(diào)整的發(fā)生。綜上所述,只有當音視頻時間戳的差距超出正常范 圍的上邊界且沒有超過一定閾值這樣的一個閾值范圍內(nèi)時,才對音視頻播放
進行干預(yù)。例如0-3的范圍為正常范圍,音視頻時間戳的差距在此范圍內(nèi) 時,不作音視頻播放調(diào)整;同樣的,當時間戳的差距超過一定閾值,如8時, 也不對音視頻播放進行調(diào)整。只有當時間戳差距在超過3且不大于8這樣的 一個閾值范圍時,才作音視頻纟番;故調(diào)整。
需要說明的是,在應(yīng)用中,本領(lǐng)域技術(shù)人員可根據(jù)實際情況設(shè)置適合的 調(diào)整條件,本發(fā)明無需對此作出限制。
步驟206:如果音頻時間戳晚于視頻時間戳,則視頻播放暫停一定數(shù)量 的幀;
音頻時間戳晚于視頻時間戳,即音頻播放慢于視頻播放,根據(jù)音視頻時 間戳差距情況,暫停播放一定數(shù)量的視頻幀。
步驟207:如果音頻時間戳早于視頻時間戳,則先判斷視頻數(shù)據(jù)緩沖區(qū) 中是否有視頻幀數(shù)據(jù),若有,則執(zhí)行步驟208;若無,則執(zhí)行步驟209;
音頻時間戳早于視頻時間戳,即音頻播放快于視頻播放,先判斷視頻數(shù) 據(jù)緩沖區(qū)中有無視頻幀可跳。
步驟208:視頻跳過一定數(shù)量的幀;
根據(jù)音視頻時間戳差距情況,視頻播放向前跳過一定數(shù)量的幀。 步驟209:記錄跳幀需求,待視頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。 需要說明的是,對于上述的方法實施例,為了筒單描述,故將其都表 述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所 描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或 者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施 例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
參照圖3,示出了本發(fā)明的一種移動多媒體廣播系統(tǒng)的音視頻同步裝置 實施例的結(jié)構(gòu)框圖,可以包括以下模塊
映射關(guān)系表建立模塊301,用于建立解碼后的音頻數(shù)據(jù)存放地址與時間 戳的映射關(guān)系表;其中,所述映射關(guān)系表為FIFO結(jié)構(gòu);
時間戳獲取模塊302,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址
查詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻
數(shù)據(jù)的時間戳;
播放調(diào)整模塊303,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間
戳,對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
優(yōu)選的是,所述播放調(diào)整模塊303還可以進一步包括
時間戳比較子模塊3031,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的
時間戳;
差距計算子模塊3032,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時 間戳的差距;
視頻調(diào)整子模塊3033,用于當所述差距達到調(diào)整條件時,對視頻播放進 行調(diào)整。
其中,所述調(diào)整條件為一閾值范圍。 優(yōu)選的是,所述視頻調(diào)整子模塊3033還可以進一步包括 暫停單元30331,用于當音頻時間戳晚于視頻時間戳?xí)r, 一見頻播放暫停 一定數(shù)量的幀;
跳進單元30332,進一步包括
緩存判斷子單元303321,用于當音頻時間戳早于視頻時間戳?xí)r,判斷視 頻數(shù)據(jù)緩沖區(qū)中是否有視頻幀數(shù)據(jù);
跳幀子單元303322,用于當緩存判斷單元結(jié)果為是時,則視頻跳過一定 數(shù)量的幀;
緩跳子單元303323,用于當緩存判斷單元結(jié)果為否時,則記錄跳幀需求, 待視頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。 優(yōu)選的是,本實施例的裝置還可以包括
時間戳確認模塊304,用于在比較音視頻時間戳之前,判斷所述音頻數(shù) 據(jù)的時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不 可信,則》文棄當前幀。
優(yōu)選的是,所述時間戳確認模塊304還可以進一步包括
判斷子模塊3041,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持
一定距離范圍內(nèi)的增長;
確認子模塊3042,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為 可信數(shù)據(jù);
否定子模塊3043,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不 可信數(shù)據(jù)。
時間戳確認模塊304在每次要做音視頻播放時間比對前,先對音視頻的 時間戳作確認。只有時間戳數(shù)據(jù)可信時,才根據(jù)情況對音視頻播放做相應(yīng)調(diào) 整。采用這樣的時間戳數(shù)據(jù)確認機制,可以有效克服由于誤碼造成的音視頻 同步的誤調(diào)整,抑制了廣播信道的傳輸誤碼導(dǎo)致的對音視頻調(diào)節(jié)的干擾。 優(yōu)選的是,所述映射關(guān)系表建立模塊301還可以進一步包括 地址記錄子模塊3011 ,用于記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和 終止地址;
時間戳記錄子模塊3012,用于記錄每幀音頻的時間戳; 關(guān)系表建立子模塊3013,用于建立所述每幀音頻解碼后的音頻數(shù)據(jù)起始
地址和終止地址與每幀音頻的時間戳的映射關(guān)系表。
優(yōu)選的是,所述時間戳獲取模塊302還可以進一步包括
更新子模塊3021,用于每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否
在所述映射關(guān)系表的當前表項的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi);如果
是,則繼續(xù)讀取當前表項的時間戳;如果否,則跳轉(zhuǎn)到下一表項,讀取該表
項的時間戳。
參照圖4,示出了本發(fā)明應(yīng)用圖3所示的裝置實施例進行音視頻同步的 步驟流程圖,具體可以包括以下步驟
步驟401:映射關(guān)系表建立模塊建立解碼后的音頻數(shù)據(jù)存放地址與時間 戳的映射關(guān)系表;
其中,所述映射關(guān)系表為FIFO結(jié)構(gòu)。在本步驟中,映射關(guān)系表建立模 塊的地址記錄子模塊記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止地址; 時間戳記錄子模塊記錄每幀音頻的時間戳;關(guān)系表建立子模塊建立映射關(guān)系
表,順序?qū)⑺雒繋纛l解碼后的音頻數(shù)據(jù)起始地址和終止地址與每幀音頻 的時間戳寫入表中。
步驟402:時間戳獲取模塊獲取解碼后的音、視頻數(shù)據(jù)的時間戳;
時間戳獲取模塊根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢映射關(guān) 系表獲取音頻數(shù)據(jù)的時間戳,根據(jù)解復(fù)用時每一幀視頻與時間戳的——映射 關(guān)系獲得當前播放的視頻幀所對應(yīng)的時間戳。
優(yōu)選的是,時間戳獲取模塊的更新子模塊每隔一段時間檢查當前播放的 音頻數(shù)據(jù)地址是否在所述映射關(guān)系表的當前表項的音頻數(shù)據(jù)起始地址和終止 地址范圍內(nèi);如果是,則繼續(xù)讀取當前表項的時間戳;如果否,則跳轉(zhuǎn)到下 一表項,讀取該表項的時間戳。
步驟403:時間戳確認模塊的判斷子模塊判斷已播放的預(yù)置次數(shù)內(nèi)的時 間戳的值是否保持一定距離范圍內(nèi)的增長,如果是,執(zhí)行步驟404;如果否, 執(zhí)行步驟405;
步驟404:當判斷子模塊的判斷結(jié)果為是時,時間戳確認模塊的確認子 模塊將當前時間戳確認為可信數(shù)據(jù),執(zhí)行步驟406;
步驟405:當判斷子模塊的判斷結(jié)果為否時,否定子模塊認定當前時間 戳為不可信數(shù)據(jù),不作任何干預(yù);
步驟406:當時間戳數(shù)據(jù)可信時,播放調(diào)整模塊的時間戳比較子模塊每 隔 一段時間比較當前正在播放的音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳;
步驟407:播放調(diào)整模塊的差距計算子模塊計算音頻數(shù)據(jù)的時間戳和視 頻數(shù)據(jù)的時間戳的差距,并判斷所述差距是否達到調(diào)整條件;如果達到調(diào)整 條件,則向下執(zhí)行;如果沒有達到調(diào)整條件,則不作任何干預(yù)。
優(yōu)選的是,所述調(diào)整條件為一閾值范圍。
步驟408:當音頻時間戳晚于視頻時間戳?xí)r,播放調(diào)整模塊的視頻調(diào)整 子模塊的暫停單元暫停播放一定數(shù)量的視頻幀;
步驟409:當音頻時間戳早于視頻時間戳?xí)r,首先由視頻調(diào)整子模塊的 跳進單元的緩存判斷子單元判斷視頻數(shù)據(jù)緩沖區(qū)中是否有視頻幀數(shù)據(jù);若有, 執(zhí)行步驟410;若無,執(zhí)行步驟411;
步驟410:當視頻數(shù)據(jù)緩沖區(qū)中有視頻幀數(shù)據(jù)時,視頻調(diào)整子模塊的跳 進單元的跳幀子單元使視頻播放跳過一定數(shù)量的幀;
步驟411:當視頻數(shù)據(jù)緩沖區(qū)中沒有視頻幀數(shù)據(jù)時,跳進單元的緩跳子 單元記錄跳幀需求,待視頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。
由于圖4所示的實施例都可以對應(yīng)適用于前述的方法實施例中,所以 描述4交為簡略,未詳盡之處可以參見本說明書前面相應(yīng)部分的描述。
參照圖5,示出了本發(fā)明的一種數(shù)字電視芯片,可以包括 信道解碼模塊501,用于將射頻前端處理后的基帶信號解碼為復(fù)用碼流; 解復(fù)用模塊502,用于將復(fù)用碼流解復(fù)用為視頻碼流和音頻碼流; ^見頻解碼器503,用于^L頻解碼; 音頻解碼器504,用于音頻解碼; 視頻輸出模塊505,用于輸出視頻數(shù)據(jù); 音頻輸出模塊506,用于輸出音頻數(shù)據(jù); 以及,
包括以下子模塊的音視頻同步模塊507:
映射關(guān)系表建立子模塊5071 ,用于建立解碼后的音頻數(shù)據(jù)存放地址與時 間戳的映射關(guān)系表;
時間戳獲取子模塊5072,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地 址查詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視 頻數(shù)據(jù)的時間戳;
播放調(diào)整子模塊5073,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時 間戳,對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
優(yōu)選的,所述播放調(diào)整子模塊5073進一步包括
時間戳比較單元,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳; 差距計算單元,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的 差距;
視頻調(diào)整單元,用于當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
優(yōu)選的,所述音視頻同步模塊還包括
時間戳確認子模塊,用于在比較音視頻時間戳之前,判斷所述音頻數(shù)據(jù) 的時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不可
寸言,則放棄當前幀。
優(yōu)選的,所述時間戳確認子模塊進一步包括
判斷單元,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定距 離范圍內(nèi)的增長;
確認單元,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為可信數(shù)
據(jù);
否定單元,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不可信數(shù)據(jù)。
此外,所述數(shù)字電視芯片還包括一定數(shù)量的數(shù)據(jù)緩存模塊,用于緩存各 功能模塊的數(shù)據(jù)。
在多媒體移動廣播接收終端,終端數(shù)字電視芯片對接收到的音視頻數(shù)據(jù) 進行處理。由射頻前端處理后的基帶信號送入信道解碼模塊,信道解碼模塊 工作時的中間數(shù)據(jù)存儲在信道解碼緩存,信道解碼送出復(fù)用碼流數(shù)據(jù),緩存 在信道解碼輸出緩存;然后解復(fù)用模塊將信道解碼輸出緩存中的復(fù)用碼流解 復(fù)用,提取出音頻碼比特流緩存在音頻比特流緩存、提取出視頻碼比特流緩 存在視頻比特流緩存;接下來音頻解碼器和視頻解碼器分別進行音、視頻解 碼,并交給音視頻同步模塊處理,此過程中使用音、視頻解碼緩存分別緩存 音、視頻解碼的中間數(shù)據(jù);音視頻同步模塊的映射關(guān)系表建立子模塊根據(jù)每 一幀音頻與時間戳的——映射關(guān)系,以及每一幀音頻和解碼后的音頻數(shù)據(jù)存 放地址的——映射關(guān)系建立音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;時間 戳獲取子模塊獲取當前播放的音、視頻數(shù)據(jù)的時間戳;在時間戳確認子模塊 確認時間戳數(shù)據(jù)可信的情況下,播放調(diào)整子模塊的時間戳比較單元比較當前 正在播放的音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳;播放調(diào)整子模塊的差距 計算單元計算音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的差距,并根據(jù)差距是
否達到調(diào)整條件情況,由視頻調(diào)整單元對視頻播放進行相應(yīng)處理;將經(jīng)過同 步后的音、視頻分別緩存在音、視頻輸出緩存;最后視頻輸出緩存中的視頻 幀按照一定幀率由視頻輸出模塊播放,音頻輸出緩存中的音頻幀按照一定采 樣率由音頻輸出播放。
由于數(shù)字電視芯片實施例中音視頻同步相關(guān)部分與方法實施例基本相 似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
本發(fā)明實施例提供的數(shù)字電視芯片可廣泛用于移動多媒體廣播終端,方 便用戶收聽收看移動多媒體節(jié)目,如可作為接收中國移動多媒體廣播CMMB 的終端數(shù)字電視芯片,為用戶提供各種CMMB的移動多媒體廣播業(yè)務(wù)。
以上對本發(fā)明所提供的 一種移動多媒體廣播系統(tǒng)的音視頻同步方法、 裝置和系統(tǒng)進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的核心構(gòu)思 及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方 法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想, 在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容 不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種移動多媒體廣播系統(tǒng)的音視頻同步方法,其特征在于,包括以下步驟建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
2、 根據(jù)權(quán)利要求l所述的方法,其特征在于,所述根據(jù)音頻數(shù)據(jù)的時間 戳和視頻數(shù)據(jù)的時間戳,對視頻播放進行調(diào)整包括以下步驟比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳; 計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的差距;當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,在比較音視頻時間戳之前, 還包括判斷所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信, 則計算差距,如果不可信,則放棄當前幀。
4、 根據(jù)權(quán)利要求3所述的方法,其特征在于,通過以下方式確定時間 戳是否可信判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定距離范圍內(nèi)的增長;若是,則將當前時間戳確認為可信數(shù)據(jù);若否,則為不可信數(shù)據(jù)。
5、 根據(jù)權(quán)利要求2或4所述的方法,其特征在于,所述對視頻播放進行 調(diào)整的步驟包括如果音頻時間戳晚于視頻時間戳,則視頻播放暫停一定數(shù)量的幀; 如果音頻時間戳早于視頻時間戳,則判斷視頻數(shù)據(jù)緩沖區(qū)中是否有視頻幀數(shù)據(jù),若有,則視頻跳過一定數(shù)量的幀;若無,則記錄跳幀需求,待視頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。
6、 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述映射關(guān)系表為先 進先出結(jié)構(gòu)。
7、 根據(jù)權(quán)利要求6所述的方法,其特征在于,所述建立解碼后的音頻數(shù) 據(jù)存放地址與時間戳的映射關(guān)系表包括以下步驟記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止地址; 記錄每幀音頻的時間戳;建立所述每幀音頻解碼后的音頻it據(jù)起始地址和終止地址與每幀音頻的 時間戳的映射關(guān)系表。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述獲取音頻數(shù)據(jù)的時間 戳還包括每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在所述映射關(guān)系表的當 前表項的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi); 如果是,則繼續(xù)讀取當前表項的時間戳; 如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的時間戳。
9、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述調(diào)整條件為一閾值范圍。
10、 一種移動多媒體廣播系統(tǒng)的音視頻同步裝置,其特征在于,包括 映射關(guān)系表建立模塊,用于建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;時間戳獲取模塊,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢 所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù) 的時間戳;播放調(diào)整模塊,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳, 對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
11、 根據(jù)權(quán)利要求IO所述的裝置,其特征在于,所述播放調(diào)整模塊進一 步包括時間戳比較子模塊,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳; 差距計算子模塊,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的差距;視頻調(diào)整子模塊,用于當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
12、 根據(jù)權(quán)利要求10或11所述的裝置,其特征在于,還包括時間戳確認模塊,用于在比較音視頻時間戳之前,判斷所述音頻數(shù)據(jù)的 時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不可信, 則;故棄當前幀。
13、 根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述時間戳確認模塊進 一步包括判斷子模塊,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定 距離范圍內(nèi)的增長;確認子模塊,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為可信 數(shù)據(jù);否定子模塊,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不可信數(shù)據(jù)。
14、 根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述視頻調(diào)整子模塊進 一步包括暫停單元,用于當音頻時間戳晚于視頻時間戳?xí)r,視頻播放暫停一定數(shù) 量的幀;跳進單元,包括緩存判斷子單元,用于當音頻時間戳早于視頻時間戳?xí)r,判斷視頻數(shù)據(jù) 緩沖區(qū)中是否有視頻幀數(shù)據(jù);跳幀子單元,用于當緩存判斷單元結(jié)果為是時,則視頻跳過一定數(shù)量的幀;緩跳子單元,用于當緩存判斷單元結(jié)果為否時,則記錄跳幀需求,待視 頻數(shù)據(jù)緩沖區(qū)準備好視頻數(shù)據(jù)后再跳幀。
15、 根據(jù)權(quán)利要求10或11所述的裝置,其特征在于,所述映射關(guān)系表為先進先出結(jié)構(gòu)。
16、 根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述映射關(guān)系表建立模 塊進一步包括地址記錄子模塊,用于記錄每幀音頻解碼后的音頻數(shù)據(jù)起始地址和終止 地址;時間戳記錄子模塊,用于記錄每幀音頻的時間戳;關(guān)系表建立子模塊,用于建立所述每幀音頻解碼后的音頻數(shù)據(jù)起始地址 和終止地址與每幀音頻的時間戳的映射關(guān)系表。
17、 根據(jù)權(quán)利要求16所述的裝置,其特征在于,所述時間戳獲取模塊還 包括更新子模塊,用于每隔一段時間檢查當前播放的音頻數(shù)據(jù)地址是否在所 述映射關(guān)系表的當前表項的音頻數(shù)據(jù)起始地址和終止地址范圍內(nèi);如果是, 則繼續(xù)讀取當前表項的時間戳;如果否,則跳轉(zhuǎn)到下一表項,讀取該表項的 時間戳。
18、 根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述調(diào)整條件為一閾值 范圍。
19、 一種數(shù)字電視芯片,其特征在于,包括信道解碼模塊,用于將射頻前端處理后的基帶信號解碼為復(fù)用碼流;解復(fù)用^^莫塊,用于將復(fù)用碼流解復(fù)用為^L頻碼流和音頻碼流;視頻解碼器,用于視頻解碼;音頻解碼器,用于音頻解碼;視頻輸出模塊,用于輸出視頻數(shù)據(jù);音頻輸出模塊,用于輸出音頻數(shù)據(jù);以及,包括以下子模塊的音視頻同步模塊映射關(guān)系表建立子模塊,用于建立解碼后的音頻數(shù)據(jù)存放地址與時間戳 的映射關(guān)系表;時間戳獲取子模塊,用于根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查 詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;播放調(diào)整子模塊,用于根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳, 對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。
20、 根據(jù)權(quán)利要求19所述的數(shù)字電視芯片,其特征在于,所述播放調(diào)整 子模塊進一步包括時間戳比較單元,用于比較所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳; 差距計算單元,用于計算所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳的 差距;視頻調(diào)整單元,用于當所述差距達到調(diào)整條件時,對視頻播放進行調(diào)整。
21、 根據(jù)權(quán)利要求19或20所述的數(shù)字電視芯片,其特征在于,所述音 視頻同步模塊還包括時間戳確認子模塊,用于在比較音視頻時間戳之前,判斷所述音頻數(shù)據(jù) 的時間戳和視頻數(shù)據(jù)的時間戳是否可信,如果可信,則計算差距,如果不可 信,則放棄當前幀。
22、 根據(jù)權(quán)利要求21所述的數(shù)字電視芯片,其特征在于,所述時間戳確 認子模塊進一步包括判斷單元,用于判斷已播放的預(yù)置次數(shù)內(nèi)的時間戳的值是否保持一定距 離范圍內(nèi)的增長;確認單元,用于當判斷子模塊結(jié)果為是時,將當前時間戳確認為可信數(shù)據(jù);否定單元,用于當判斷子模塊結(jié)果為否時,認定當前時間戳為不可信數(shù)據(jù)。
全文摘要
本發(fā)明提供了一種移動多媒體廣播系統(tǒng)的音視頻同步方法,包括建立解碼后的音頻數(shù)據(jù)存放地址與時間戳的映射關(guān)系表;根據(jù)當前播放的音頻數(shù)據(jù)所指向的存放地址查詢所述映射關(guān)系表獲取音頻數(shù)據(jù)的時間戳,并且獲取當前正在播放的視頻數(shù)據(jù)的時間戳;根據(jù)所述音頻數(shù)據(jù)的時間戳和視頻數(shù)據(jù)的時間戳,對視頻播放進行調(diào)整,調(diào)整至音視頻同步狀態(tài)。本發(fā)明針對廣播數(shù)據(jù)不可控的特點,實時比較音視頻的播放進度,給出相應(yīng)調(diào)整意見,保證了在終端不能控制“源”的條件下音視頻播放的同步;針對廣播信道傳輸存在誤碼的情況,使用音視頻數(shù)據(jù)時間戳確認機制,克服了由于誤碼造成的音視頻同步的誤調(diào)整,抑制了廣播信道的傳輸誤碼導(dǎo)致的對音視頻調(diào)節(jié)的干擾。
文檔編號H04N5/04GK101394469SQ200810225160
公開日2009年3月25日 申請日期2008年10月29日 優(yōu)先權(quán)日2008年10月29日
發(fā)明者巖 張, 輝 張, 曹晉宇, 王洪仁, 王西強, 偉 胡 申請人:北京創(chuàng)毅視訊科技有限公司