亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

機頂盒音視頻同步的方法及裝置與流程

文檔序號:11064967閱讀:1043來源:國知局
機頂盒音視頻同步的方法及裝置與制造工藝

本發(fā)明涉及智能機頂盒技術(shù)領(lǐng)域,尤其涉及一種機頂盒音視頻同步的方法及裝置。



背景技術(shù):

隨著寬帶技術(shù)的普及,數(shù)字機頂盒越來越成為智能家居研究的熱點。目前數(shù)字機頂盒已經(jīng)被推廣應(yīng)用,因此,機頂盒的音視頻同步效果的好壞直接影響到機頂盒用戶的用戶體驗。

由于高清視頻質(zhì)量的需求和中央處理器(Center Processing Unit,CPU)的資源限制,目前的機頂盒通常采用硬件解碼的方式,需要在完成解碼的音視頻幀送到顯示模塊之前對音視頻幀做同步處理,即,控制當前送顯幀的幀率,以確保音視頻幀的播放時間差較小。然而,這種硬件解碼方式對音視頻幀解碼后獲取的時間戳存在較大的誤差,音視頻的同步效果不好。



技術(shù)實現(xiàn)要素:

有鑒于此,本發(fā)明實施例期望提供一種機頂盒音視頻同步的方法及裝置,以提高音視頻同步的效果。

本發(fā)明實施例的技術(shù)方案是這樣實現(xiàn)的:

一種機頂盒音視頻同步的方法,包括:

確定當前同步隊列中已輸出所述第一幀音視頻時,獲取所述當前同步隊列中的視頻幀序列的時間戳,并對所述時間戳進行修復(fù)和預(yù)測;其中,所述第一幀音視頻包括第一幀音頻幀和第一幀視頻幀;

計算所述視頻幀序列的理想幀率和補償幀率;

根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率;

根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出。

上述方法中,所述計算所述視頻幀序列的理想幀率和補償幀率,包括:

根據(jù)當前顯示模塊的刷新率和所述視頻幀序列的時間戳,通過低幀率插幀算法和高幀率丟幀算法計算所述視頻幀序列的理想幀率;

根據(jù)所述視頻幀序列的時間戳與音頻幀序列的時間戳之間的差值,計算所述視頻幀序列的補償幀率。

上述方法中,所述根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率,包括:

將所述理想幀率與所述補償幀率相加,得到所述視頻幀序列的重復(fù)幀率。

上述方法中,所述根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出,包括:

若所述重復(fù)幀率大于零,則將視頻后處理模塊的當前頭結(jié)點入所述當前同步隊列,且重復(fù)幀數(shù)等于所述重復(fù)幀率;

若所述重復(fù)幀率小于等于零,則丟棄當前視頻幀,同步輸出所述當前同步隊列中的所述音頻幀和除當前視頻幀外的視頻幀;

若所述重復(fù)幀率等于所述理想幀率,則以理想幀率同步輸出所述當前同步隊列中的所述音頻幀和視頻幀;

若所述重復(fù)幀率大于所述理想幀率,則向所述視頻幀中插入所述補償幀率個重復(fù)幀,以使所述當前同步隊列中的所述音頻幀和所述視頻幀同步輸出。

上述方法中,所述確定當前同步隊列中已輸出所述第一幀音視頻之前,所述方法還包括:

根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻;

若所述第一幀音視頻輸出標識位置為否,則判定輸出的不是所述第一幀音視頻;

若所述第一幀音視頻輸出標識位置為是,則判定輸出的是所述第一幀音視 頻。

上述方法中,所述方法還包括:

確定所述當前同步隊列中未輸出所述第一幀音視頻時,按照預(yù)設(shè)第一幀音視頻輸出同步方案輸出所述第一幀音視頻;其中,所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案或者快同步方案;

若所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案,則先輸出所述第一幀視頻幀,再將所述同步隊列中的其他視頻幀與音頻幀進行同步輸出;

若所述預(yù)設(shè)第一幀音視頻輸出同步方案為快同步方案,則同時輸出所述第一幀音頻幀和所述第一幀視頻幀。

上述方法中,所述同時輸出所述第一幀音頻幀和所述第一幀視頻幀,包括:

若檢測到所述第一幀音頻幀未到,則所述第一幀視頻幀等待,不進行輸出;

若檢測到所述第一幀音頻幀已到,判斷所述第一幀音頻幀是否輸出;

若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值在預(yù)設(shè)時間差范圍內(nèi),則輸出所述第一幀音視頻,并將第一幀音視頻輸出標識位置為否;

若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值不在所述預(yù)設(shè)時間差范圍內(nèi),則在所述第一幀視頻幀比所述第一幀音頻幀快時,所述第一幀視頻幀等待,在所述第一幀視頻幀比所述第一幀音頻幀慢時,丟棄所述第一幀視頻幀;

若所述第一幀音頻幀已輸出,則輸出所述第一幀視頻幀,并將第一幀音視頻輸出標識位置為否。

上述方法中,所述根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻之前,所述方法還包括:

判斷所述當前同步隊列中的輸入幀數(shù)是否滿足預(yù)設(shè)幀數(shù),并判斷顯示隊列是否溢出;

當所述當前同步隊列中的輸入幀數(shù)滿足所述預(yù)設(shè)幀數(shù),且所述顯示隊列未溢出時,執(zhí)行所述判斷所述當前同步隊列中的第一幀音視頻是否輸出的操作。

一種機頂盒音視頻同步的裝置,所述裝置包括:

確定模塊,用于確定當前同步隊列中已輸出所述第一幀音視頻;

獲取模塊,用于在所述確定模塊確定所述當前同步隊列中已輸出所述第一幀音視頻時,獲取所述當前同步隊列中的視頻幀序列的時間戳,并對所述時間戳進行修復(fù)和預(yù)測;所述第一幀音視頻包括第一幀音頻幀和第一幀視頻幀;

計算模塊,用于計算所述視頻幀序列的理想幀率和補償幀率;

所述獲取模塊用于根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率;根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出。

上述裝置中,所述計算模塊具體用于:根據(jù)當前顯示模塊的刷新率和所述視頻幀序列的時間戳,通過低幀率插幀算法和高幀率丟幀算法計算所述視頻幀序列的理想幀率;根據(jù)所述視頻幀序列的時間戳與音頻幀序列的時間戳之間的差值,計算所述視頻幀序列的補償幀率。

上述裝置中,所述獲取模塊具體用于:

將所述理想幀率與所述補償幀率相加,得到所述視頻幀序列的重復(fù)幀率。

上述裝置中,所述獲取模塊具體用于:

若所述重復(fù)幀率大于零,則將視頻后處理模塊的當前頭結(jié)點入所述當前同步隊列,且重復(fù)幀數(shù)等于所述重復(fù)幀率;

若所述重復(fù)幀率小于等于零,則丟棄當前視頻幀,同步輸出所述當前同步隊列中的所述音頻幀和除當前視頻幀外的視頻幀;

若所述重復(fù)幀率等于所述理想幀率,則以理想幀率同步輸出所述當前同步隊列中的所述音頻幀和視頻幀;

若所述重復(fù)幀率大于所述理想幀率,則向所述視頻幀中插入所述補償幀率個重復(fù)幀,以使所述當前同步隊列中的所述音頻幀和所述視頻幀同步輸出。

上述裝置中,所述裝置還包括:判斷模塊,用于根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻;若所述第一幀音視頻輸出標識位置為否,則判定輸出的不是所述第一幀音視頻;若所述第一幀音視頻 輸出標識位置為是,則判定輸出的是所述第一幀音視頻。

上述裝置中,所述獲取模塊還用于:在所述確定模塊確定所述當前同步隊列中未輸出所述第一幀音視頻時,按照預(yù)設(shè)第一幀音視頻輸出同步方案輸出所述第一幀音視頻;其中,所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案或者快同步方案;

若所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案,則所述獲取模塊先輸出所述第一幀視頻幀,再將所述同步隊列中的其他視頻幀與音頻幀進行同步輸出;

若所述預(yù)設(shè)第一幀音視頻輸出同步方案為快同步方案,則所述獲取模塊同時輸出所述第一幀音頻幀和所述第一幀視頻幀。

上述裝置中,所述獲取模塊具體用于:

若檢測到所述第一幀音頻幀未到,則所述第一幀視頻幀等待,不進行輸出;

若檢測到所述第一幀音頻幀已到,判斷所述第一幀音頻幀是否輸出;

若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值在預(yù)設(shè)時間差范圍內(nèi),則輸出所述第一幀音視頻,并將第一幀音視頻輸出標識位置為否;

若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值不在所述預(yù)設(shè)時間差范圍內(nèi),則在所述第一幀視頻幀比所述第一幀音頻幀快時,所述第一幀視頻幀等待,在所述第一幀視頻幀比所述第一幀音頻幀慢時,丟棄所述第一幀視頻幀;

若所述第一幀音頻幀已輸出,則輸出所述第一幀視頻幀,并將第一幀音視頻輸出標識位置為否。

上述裝置中,所述判斷模塊還用于:

判斷所述當前同步隊列中的輸入幀數(shù)是否滿足預(yù)設(shè)幀數(shù),并判斷顯示隊列是否溢出;

當所述判斷模塊判斷所述當前同步隊列中的輸入幀數(shù)滿足所述預(yù)設(shè)幀數(shù),且所述顯示隊列未溢出時,所述處理模塊執(zhí)行所述判斷所述當前同步隊列中的 第一幀音視頻是否輸出的操作。

本發(fā)明實施例提供的機頂盒音視頻同步的方法及裝置,通過確定當前同步隊列中已輸出所述第一幀音視頻時,獲取所述當前同步隊列中的視頻幀序列的時間戳,并對所述時間戳進行修復(fù)和預(yù)測;所述第一幀音視頻包括第一幀音頻幀和第一幀視頻幀;計算所述視頻幀序列的理想幀率和補償幀率;根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率;根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出;如此,能減少獲取音視頻幀的時間戳的誤差,從而提高音視頻的同步效果。

附圖說明

圖1為本發(fā)明實施例提供的機頂盒音視頻同步的方法的流程圖;

圖2為本發(fā)明實施例提供的機頂盒音視頻同步的裝置的結(jié)構(gòu)示意圖。

具體實施方式

在本發(fā)明的各實施例中,以音頻幀的時間戳作為時間標準,在同步過程中,主要根據(jù)音視頻的時間戳差值調(diào)整視頻幀的幀率,以對音頻幀進行等待或丟棄視頻幀,從而實現(xiàn)視頻幀與音頻幀的同步,從而減少了獲取音視頻幀的時間戳的誤差,提高了音視頻的同步效果。

圖1為本發(fā)明實施例提供的機頂盒音視頻同步的方法的流程圖。如圖1所示,本實施例提供的機頂盒音視頻同步的方法具體可以包括:

步驟101、確定當前同步隊列中已輸出所述第一幀音視頻時,獲取所述當前同步隊列中的視頻幀序列的時間戳,并對所述時間戳進行修復(fù)和預(yù)測;所述第一幀音視頻包括第一幀音頻幀和第一幀視頻幀。

若當前同步隊列輸出的不是第一幀音視頻,即第一幀音視頻已經(jīng)輸出,則需要對視頻幀序列的時間戳進行修復(fù)和預(yù)測。

具體的,在播放過程中,正常的pts序列具有不斷遞增的特點,即pts1<pts2<pts3<pts4,如果不滿足此條件的pts序列都被判斷為異常pts。本實施 例中舉出三種異常形態(tài)進行說明。

異常形態(tài)1:pts1<pts2,pts2>pts4>pts3,當直播頻道出現(xiàn)回環(huán)(片源循環(huán)播,首尾連接點),會出現(xiàn)此種形態(tài);這種異常下需要將同步模塊一些內(nèi)部變量清零,表示重新開始播放,不去修復(fù)pts;異常形態(tài)2:pts1<pts2<pts3,p3>pts4>p2;這種形態(tài)下需要修復(fù)pts3,修復(fù)方法是pts3=pts2+delay;Delay表示理想的幀間pts差;異常形態(tài)3:p3<p1<p2<p4;這種形態(tài)下需要修復(fù)pts3,修復(fù)方法是pts3=pts2+delay;其中,delay表示理想的幀間pts差,通過統(tǒng)計前100幀的視頻前后兩幀的pts差值的分布,取最大概率的pts差值作為理想delay。

對于pts預(yù)測:如果將隔行視頻經(jīng)過去隔行處理之后,幀率翻倍,即原來的每一場經(jīng)過插值之后變成了一幀,原來的每一幀就變成兩幀,一幀采用原始幀的pts作為pts,另外一幀的pts取當前原始幀與下個原始幀的pts均值作為預(yù)測的pts。

本實施例中,在確定當前同步隊列中已輸出第一幀音視頻之前,還需要根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻;若所述第一幀音視頻輸出標識位置為否,則判定輸出的不是所述第一幀音視頻;若所述第一幀音視頻輸出標識位置為是,則判定輸出的是所述第一幀音視頻。

例如,可以設(shè)置當?shù)谝粠粢曨l輸出標識位置為1時,表明所述第一幀音視頻已輸出,此時當同步隊列中即將輸出的不是第一幀音視頻,置為0時表明所述第一幀音視頻未輸出,此時當同步隊列中即將輸出的是第一幀音視頻;或者可以設(shè)置當?shù)谝粠粢曨l輸出標識位置為0時,表明所述第一幀音視頻已輸出,置為1時表明所述第一幀音視頻未輸出。本實施例對此不做具體限制。

在根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻之前,還需要判斷所述當前同步隊列中的輸入幀數(shù)是否滿足預(yù)設(shè)幀數(shù),并判斷顯示隊列是否溢出;當所述當前同步隊列中的輸入幀數(shù)滿足所述預(yù)設(shè)幀數(shù),且所述顯示隊列未溢出時,執(zhí)行所述判斷所述當前同步隊列中的第一幀音視頻是否輸出的操作。

判斷當前同步隊列中的輸入幀數(shù)是否滿足預(yù)設(shè)幀數(shù),本實施例中,對于隔 行片源逐行輸出來說,要求幀數(shù)大于等于3,其他情況下則要求幀數(shù)大于等于2。

進一步的,確定所述當前同步隊列中未輸出所述第一幀音視頻時,按照預(yù)設(shè)第一幀音視頻輸出同步方案輸出所述第一幀音視頻,結(jié)束本次處理流程。

需要說明的是,該預(yù)設(shè)第一幀音視頻輸出同步方案是根據(jù)客戶的具體需求預(yù)先設(shè)置好的,當判斷出當前同步隊列中輸出第一幀音視頻時,可以按照預(yù)設(shè)第一幀音視頻輸出同步方案對第一幀音視頻進行輸出。

具體的,該預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案或者快同步方案;若所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案,則先輸出所述第一幀視頻幀,再將所述同步隊列中的其他視頻幀與音頻幀進行同步輸出,即,慢同步方案要求第一幀視頻幀立即輸出,在輸出第一幀視頻幀后再通過同步方案將視頻幀與音頻幀同步;若所述預(yù)設(shè)第一幀音視頻輸出同步方案為快同步方案,則同時輸出所述第一幀音頻幀和所述第一幀視頻幀,即,在快同步方案中,要求音視頻同時輸出且在輸出時即同步。

在快同步方案中,同時輸出所述第一幀音頻幀和所述第一幀視頻幀,具體可以包括:若檢測到所述第一幀音頻幀未到,則所述第一幀視頻幀等待,不進行輸出;若檢測到所述第一幀音頻幀已到,判斷所述第一幀音頻幀是否輸出;若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值在預(yù)設(shè)時間差范圍內(nèi),則輸出所述第一幀音視頻,并將第一幀音視頻輸出標識位置為否;若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值不在所述預(yù)設(shè)時間差范圍內(nèi),則在所述第一幀視頻幀比所述第一幀音頻幀快時,所述第一幀視頻幀等待,在所述第一幀視頻幀比所述第一幀音頻幀慢時,丟棄所述第一幀視頻幀;若所述第一幀音頻幀已輸出,則輸出所述第一幀視頻幀,并將第一幀音視頻輸出標識位置為否。

另外需說明的是,如果超過1.5s音視頻沒有同步或者音頻幀沒有到來,則將第一幀視頻幀強制輸出。

步驟102、計算所述視頻幀序列的理想幀率和補償幀率。

本步驟中,根據(jù)當前顯示模塊的刷新率和所述視頻幀序列的時間戳,通過低幀率插幀算法和高幀率丟幀算法計算所述視頻幀序列的理想幀率idea_repeat;根據(jù)所述視頻幀序列的時間戳與音頻幀序列的時間戳之間的差值,計算所述視頻幀序列的補償幀率extra_repeat。

具體的,本實施例中采用的高幀率丟幀算法為:三幀跨兩周期丟當前幀,以顯示模塊延時20ms為例:獲取同步輸入隊列(視頻后處理)順序出來的三幀pts,記為pts0、pts1、pts2,分別對應(yīng)同步輸出隊列尾幀pts、同步輸入隊列頭幀pts、同步輸入隊列第二幀pts;若(pts2-pts0)>2*20ms,則準備丟掉pts1對應(yīng)的視頻幀;否則認為是低幀率片源,退出算法;若顯示隊列中壓的幀數(shù)不夠N幀(經(jīng)驗值),則不允許丟掉視頻幀此時通過插入少量的音頻數(shù)據(jù)實現(xiàn)音頻等待視頻的效果,否則丟掉當前視頻幀。

具體的,本實施例中采用的低幀率插幀算法中,需要保證送顯頻率不能超出顯示模塊的刷新率,從而通過插重復(fù)幀保證每個有效幀在屏幕上停留合適的時間。

由于理想幀率只是考慮了顯示模塊的刷新率的影響,以確保視頻的解碼與播放能夠流暢,并未考慮音視頻之間的同步,將視頻同步到音頻就是根據(jù)音頻的播放快慢對視頻幀進行插幀或者丟幀,稱為補償幀率extra_repeat。

步驟103、根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率。

將所述理想幀率與所述補償幀率相加,得到所述視頻幀序列的重復(fù)幀率all_repeat;具體的,all_repeat=idea_repeat+extra_repeat。

步驟104、根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出。

若所述重復(fù)幀率大于零,則將視頻后處理模塊的當前頭結(jié)點入所述當前同步隊列,且重復(fù)幀數(shù)等于所述重復(fù)幀率;若所述重復(fù)幀率小于等于零,則丟棄當前視頻幀,同步輸出所述當前同步隊列中的所述音頻幀和除當前視頻幀外的視頻幀;若所述重復(fù)幀率等于所述理想幀率,則以理想幀率同步輸出所述當前 同步隊列中的所述音頻幀和視頻幀;若所述重復(fù)幀率大于所述理想幀率,則向所述視頻幀中插入所述補償幀率個重復(fù)幀,以使所述當前同步隊列中的所述音頻幀和所述視頻幀同步輸出。

即,若all_repeat>0,表示視頻后處理模塊當前頭結(jié)點入同步隊列,重復(fù)幀數(shù)是all_repeat,如果all_repeat=idea_repeat表示以理想幀率播放,如果all_repeat>idea_repeat表示視頻比音頻快,相比較于理想幀率需要另插入extra_repeat個重復(fù)幀對幀率進行補償,確保音視頻能夠同步;若all_repeat<=0,表示視頻比音頻慢,需要將當前幀丟棄,對于當前幀可以插多個重復(fù)幀但最多能丟一幀。

在實際應(yīng)用中,為防止畫面出現(xiàn)凍結(jié),當extra_repeat<0即判斷丟為丟幀,此時顯示模塊的顯示隊列數(shù)據(jù)不足,則將extra_repeat=1;為防止畫面卡頓,最多連續(xù)丟3幀;為防止重復(fù)幀過多畫面頓住,對于一個幀節(jié)點入同步隊列,最多插3個重復(fù)幀;為保證播放開始前幾幀畫面播放流暢,在播放開始的前幾幀extra_repeat最多插1個重復(fù)幀進行補償。

本實施例的技術(shù)方案,可以減少獲取音視頻幀的時間戳的誤差,提高音視頻的同步效果。

圖2為本發(fā)明實施例提供的機頂盒音視頻同步的裝置的結(jié)構(gòu)示意圖。如圖2所示,本實施例提供的裝置可以包括:

確定模塊11,用于確定當前同步隊列中已輸出所述第一幀音視頻;

獲取模塊12,用于在所述確定模塊確定所述當前同步隊列中已輸出所述第一幀音視頻時,獲取所述當前同步隊列中的視頻幀序列的時間戳,并對所述時間戳進行修復(fù)和預(yù)測;所述第一幀音視頻包括第一幀音頻幀和第一幀視頻幀;

計算模塊13,用于計算所述視頻幀序列的理想幀率和補償幀率;

所述獲取模塊12用于根據(jù)所述理想幀率和所述補償幀率,獲取所述視頻幀序列的重復(fù)幀率;根據(jù)所述重復(fù)幀率,對所述當前同步隊列中的音頻幀和視頻幀進行同步處理并輸出。

所述計算模塊13具體用于:根據(jù)當前顯示模塊的刷新率和所述視頻幀序列 的時間戳,通過低幀率插幀算法和高幀率丟幀算法計算所述視頻幀序列的理想幀率;根據(jù)所述視頻幀序列的時間戳與音頻幀序列的時間戳之間的差值,計算所述視頻幀序列的補償幀率。

所述獲取模塊12具體用于:將所述理想幀率與所述補償幀率相加,得到所述視頻幀序列的重復(fù)幀率;若所述重復(fù)幀率大于零,則將視頻后處理模塊的當前頭結(jié)點入所述當前同步隊列,且重復(fù)幀數(shù)等于所述重復(fù)幀率;若所述重復(fù)幀率小于等于零,則丟棄當前視頻幀,同步輸出所述當前同步隊列中的所述音頻幀和除當前視頻幀外的視頻幀;若所述重復(fù)幀率等于所述理想幀率,則以理想幀率同步輸出所述當前同步隊列中的所述音頻幀和視頻幀;若所述重復(fù)幀率大于所述理想幀率,則向所述視頻幀中插入所述償幀率個重復(fù)幀,以使所述當前同步隊列中的所述音頻幀和所述視頻幀同步輸出。

進一步的,所述裝置還可以包括判斷模塊,用于根據(jù)第一幀音視頻輸出標識位判斷所述當前同步隊列中是否輸出第一幀音視頻;若所述第一幀音視頻輸出標識位置為否,則判定輸出的不是所述第一幀音視頻;若所述第一幀音視頻輸出標識位置為是,則判定輸出的是所述第一幀音視頻。

進一步的,所述獲取模塊12還可以用于:在確定模塊11確定所述當前同步隊列中未輸出所述第一幀音視頻時,按照預(yù)設(shè)第一幀音視頻輸出同步方案輸出所述第一幀音視頻;其中,所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案或者快同步方案;若所述預(yù)設(shè)第一幀音視頻輸出同步方案為慢同步方案,則所述獲取模塊12先輸出所述第一幀視頻幀,再將所述同步隊列中的其他視頻幀與音頻幀進行同步輸出;若所述預(yù)設(shè)第一幀音視頻輸出同步方案為快同步方案,則所述獲取模塊12同時輸出所述第一幀音頻幀和所述第一幀視頻幀。

具體的,所述獲取模塊12具體可以用于:若檢測到所述第一幀音頻幀未到,則所述第一幀視頻幀等待,不進行輸出;若檢測到所述第一幀音頻幀已到,判斷所述第一幀音頻幀是否輸出;若所述第一幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值在預(yù)設(shè)時間差范圍內(nèi),則輸出所述第一幀音視頻,并將第一幀音視頻輸出標識位置為已輸出;若所述第一 幀音頻幀未輸出,且所述第一幀音頻幀的時間戳與所述第一幀視頻幀的時間戳的差值不在所述預(yù)設(shè)時間差范圍內(nèi),則在所述第一幀視頻幀比所述第一幀音頻幀快時,所述第一幀視頻幀等待,在所述第一幀視頻幀比所述第一幀音頻幀慢時,丟棄所述第一幀視頻幀;若所述第一幀音頻幀已輸出,則輸出所述第一幀視頻幀,并將第一幀音視頻輸出標識位置為已輸出。

所述判斷模塊還可以用于:判斷所述當前同步隊列中的輸入幀數(shù)是否滿足預(yù)設(shè)幀數(shù),并判斷顯示隊列是否溢出;當所述判斷模塊判斷所述當前同步隊列中的輸入幀數(shù)滿足所述預(yù)設(shè)幀數(shù),且所述顯示隊列未溢出時,所述處理模塊執(zhí)行所述判斷所述當前同步隊列中的第一幀音視頻是否輸出的操作。

本實施例的機頂盒音視頻同步的裝置,可以用于執(zhí)行上述圖1所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

在實際應(yīng)用中,該確定模塊11、獲取模塊12和計算模塊13可由位于用戶終端上的中央處理器(CPU)、微處理器(MPU)、數(shù)字信號處理器(DSP)或現(xiàn)場可編程門陣列(FPGA)等器件實現(xiàn)。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。

本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。

這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備 以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。

這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。

以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1