專利名稱:視頻轉(zhuǎn)碼方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及通信技術(shù)領(lǐng)域,特別涉及一種視頻轉(zhuǎn)碼方法和裝置。
背景技術(shù):
隨著移動通信技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)接入速度的飛速提升,移動終端的越趨智能 化,以及數(shù)字壓縮技術(shù)的日益優(yōu)化,移動終端已從簡單的通信、聯(lián)絡(luò)工具,發(fā)展成為一個多 媒體智能平臺。與此同時,傳統(tǒng)的彩信、圖鈴下載等增值業(yè)務(wù)已無法滿足用戶的需求。移動 流媒體的出現(xiàn)將改變這種狀況,移動流媒體能為用戶提供包括視頻點(diǎn)播、移動視頻聊天、移 動視頻監(jiān)控等服務(wù)。移動流媒體是移動通信和流媒體傳輸?shù)慕Y(jié)合,通過移動網(wǎng)絡(luò)在移動終 端上采用流媒體技術(shù)進(jìn)行數(shù)據(jù)傳輸。然而,移動終端的多樣性,無線網(wǎng)絡(luò)的波動性以及移動 終端的處理能力限制了移動流媒體的發(fā)展。碼率變換的視頻轉(zhuǎn)碼可以根據(jù)移動終端的處理能力以及網(wǎng)絡(luò)帶寬的條件,提供最 合適的視頻流,因此是促進(jìn)移動流媒體發(fā)展的關(guān)鍵技術(shù)。碼率轉(zhuǎn)換最直接的辦法是采用級 聯(lián)的全解全編轉(zhuǎn)碼器。全解全編轉(zhuǎn)碼器分為兩個部分先由解碼器對輸入視頻流進(jìn)行完全 解碼,再由一個編碼器按照目標(biāo)碼率對解碼后的視頻進(jìn)行編碼壓縮。通過將解碼后的視頻 流按目標(biāo)碼率進(jìn)行重新編碼,從而能夠得到最佳的圖像質(zhì)量。在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題現(xiàn)有技術(shù)提供 的視頻轉(zhuǎn)碼方案在實(shí)現(xiàn)時需要對輸入碼流進(jìn)行完全解碼,然后對解碼后的輸入碼流重新進(jìn) 行運(yùn)動估計(jì)、編碼模式判決等編碼操作,運(yùn)算復(fù)雜度高,使得轉(zhuǎn)碼速度低,不能更好地滿足 實(shí)時視頻轉(zhuǎn)碼的要求。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種視頻轉(zhuǎn)碼方法和裝置,以實(shí)現(xiàn)根據(jù)輸入碼流和輸出碼流的 像素轉(zhuǎn)碼率,實(shí)時選擇宏塊編碼模式,在確保恢復(fù)視頻質(zhì)量的前提下,提高轉(zhuǎn)碼速度。本發(fā)明實(shí)施例提供了一種視頻轉(zhuǎn)碼方法,包括對輸入碼流進(jìn)行解碼,提取解碼后的輸入碼流的宏塊信息,根據(jù)所述輸入碼流確 定像素轉(zhuǎn)碼率;當(dāng)確定的所述像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,根據(jù)所述宏塊信息對所述解 碼后的輸入碼流進(jìn)行編碼;當(dāng)所述像素轉(zhuǎn)碼率大于所述第一門限值時,根據(jù)所述宏塊信息重新確定宏塊編碼 模式,并根據(jù)重新確定的宏塊編碼模式對所述解碼后的輸入碼流進(jìn)行編碼。本發(fā)明實(shí)施例還提供一種視頻轉(zhuǎn)碼裝置,包括解碼模塊,用于對輸入碼流進(jìn)行解碼;提取模塊,用于提取所述解碼模塊解碼后的輸入碼流的宏塊信息;像素轉(zhuǎn)碼率確定模塊,用于根據(jù)所述輸入碼流確定像素轉(zhuǎn)碼率;編碼模塊,用于當(dāng)所述像素轉(zhuǎn)碼率確定模塊確定的像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,根據(jù)所述提取模塊提取的宏塊信息對所述解碼模塊解碼后的輸入碼流進(jìn)行編碼;編碼模式確定模塊,用于當(dāng)所述像素轉(zhuǎn)碼率確定模塊確定的像素轉(zhuǎn)碼率大于所述 第一門限值時,根據(jù)所述提取模塊提取的宏塊信息重新確定宏塊編碼模式;所述編碼模塊 還用于根據(jù)所述編碼模式確定模塊重新確定的宏塊編碼模式對所述解碼模塊解碼后的輸 入碼流進(jìn)行編碼。本發(fā)明實(shí)施例根據(jù)像素轉(zhuǎn)碼率和輸入碼流的宏塊信息實(shí)時確定宏塊編碼模式,然 后再根據(jù)確定的宏塊編碼模式進(jìn)行編碼,從而在確?;謴?fù)的視頻質(zhì)量的前提下,提高了轉(zhuǎn) 碼速度,更好地滿足了實(shí)時視頻轉(zhuǎn)碼的要求。
為了更清楚地說明本發(fā)明或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù) 描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的 一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這 些附圖獲得其他的附圖。圖1為本發(fā)明視頻轉(zhuǎn)碼方法一個實(shí)施例的流程圖;圖2為本發(fā)明視頻轉(zhuǎn)碼方法另一個實(shí)施例的流程圖;圖3為本發(fā)明視頻轉(zhuǎn)碼裝置一個實(shí)施例的結(jié)構(gòu)示意圖;圖4為本發(fā)明視頻轉(zhuǎn)碼裝置另一個實(shí)施例的結(jié)構(gòu)示意圖;圖5為本發(fā)明Carphone, qcif序列的PSNR性能對比示意圖;圖6為本發(fā)明Carphone, qcif序列的轉(zhuǎn)碼速度對比示意圖;圖7為本發(fā)明Foreman, cif序列的PSNR性能對比示意圖;圖8為本發(fā)明Foreman, cif序列的轉(zhuǎn)碼速度對比示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明中的附圖,對本發(fā)明中的技術(shù)方案進(jìn)行清楚、完整地描述,顯 然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施 例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實(shí)施例,都屬 于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例提供一種視頻轉(zhuǎn)碼方法,通過復(fù)用輸入碼流中的圖像信息、運(yùn)動矢 量、宏塊編碼類型、預(yù)測殘差等信息,簡化編碼模式判決、運(yùn)動估計(jì)等操作以降低轉(zhuǎn)碼運(yùn)算 復(fù)雜度,提高轉(zhuǎn)碼速度。圖1為本發(fā)明視頻轉(zhuǎn)碼方法一個實(shí)施例的流程圖,如圖1所示,包括步驟101,對輸入碼流進(jìn)行解碼,提取解碼后的輸入碼流的宏塊信息,根據(jù)輸入碼 流確定像素轉(zhuǎn)碼率。步驟102,當(dāng)確定的像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,根據(jù)該宏塊信息對解碼 后的輸入碼流進(jìn)行編碼。其中,像素轉(zhuǎn)碼率為輸入碼流中平均每像素占用的比特數(shù)與預(yù)設(shè)的輸出碼流中平 均每像素占用的比特數(shù)的比值,其中,預(yù)設(shè)的輸出碼流中平均每像素占用的比特數(shù)為一表 示期望輸出的數(shù)值,與轉(zhuǎn)碼需要過程中的相關(guān)指標(biāo)及輸入碼流中的相關(guān)信息(如碼率等)有關(guān)。像素轉(zhuǎn)碼率表示輸入碼流與預(yù)期的輸出碼流之間的相似程度,像素轉(zhuǎn)碼率越小,表示 輸入碼流與預(yù)期的輸出碼流之間的相似性越高。當(dāng)像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,解碼后的輸入碼流與預(yù)期的輸出碼流之 間具有較強(qiáng)的相似性,因此不需要對輸入碼流進(jìn)行較大的調(diào)整,可以根據(jù)解碼后的輸入碼 流的宏塊信息對解碼后的輸入碼流進(jìn)行編碼。步驟103,當(dāng)像素轉(zhuǎn)碼率大于該第一門限值時,根據(jù)該宏塊信息重新確定宏塊編碼 模式,并根據(jù)重新確定的宏塊編碼模式對解碼后的輸入碼流進(jìn)行編碼。具體地,當(dāng)像素轉(zhuǎn)碼率大于該第一門限值時,解碼后的輸入碼流與預(yù)期的輸出碼 流之間的差異性較大,因此根據(jù)解碼后的輸入碼流的宏塊信息對解碼后的輸入碼流進(jìn)行編 碼,無法保證轉(zhuǎn)碼后的輸出碼流的視頻質(zhì)量。這種情況下,需要根據(jù)解碼后的輸入碼流中的 宏塊信息重新確定宏塊編碼模式,再根據(jù)重新確定的宏塊編碼模式對解碼后的輸入碼流進(jìn) 行編碼。本實(shí)施例中,根據(jù)輸入碼流中平均每像素占用的比特數(shù)和預(yù)設(shè)的輸出碼流中平均 每像素占用的比特數(shù),可以確定上述像素轉(zhuǎn)碼率。具體地,碼流中平均每像素占用的比特數(shù)為bpp,bpp可以通過式(1)計(jì)算,bpp = R/(FXffXH)(1)式(1)中,R標(biāo)識碼流的碼率,F(xiàn)表示碼流的幀率,W和H分別表示圖像的寬度和高度。對輸入碼流進(jìn)行解碼之后,可以獲得輸入碼流的碼率和幀率,以及解碼后的輸入 碼流中圖像的寬度和高度,根據(jù)這些參數(shù)即可計(jì)算得到解碼后的輸入碼流中平均每像素占 用的比特數(shù);以上只是獲得輸入碼流的碼率和幀率,以及輸入碼流中圖像的寬度和高度,進(jìn) 而獲得輸入碼流中平均每像素占用的比特數(shù)的一種方式,本發(fā)明實(shí)施例并不局限于此,輸 入碼流的碼率和幀率,以及輸入碼流中圖像的寬度和高度并不一定在解碼后才能得到,上 述參數(shù)也可以通過其他方式獲得,例如預(yù)先輸入上述參數(shù);本發(fā)明實(shí)施例對獲得輸入碼 流的碼率和幀率,以及輸入碼流中圖像的寬度和高度的方式不作限定。另外,可以根據(jù)轉(zhuǎn)碼要求預(yù)先設(shè)置輸出碼流的碼率和幀率,以及輸出碼流中圖像 的寬度和高度,根據(jù)這些參數(shù)即可計(jì)算得到預(yù)設(shè)的輸出碼流中平均每像素占用的比特數(shù)。其中,該宏塊信息包括塊類型信息、分塊模式信息、運(yùn)動矢量信息、塊編碼類型 (Coded Block Pattern ;以下簡稱CBP)信息、量化參數(shù)和宏塊殘差等編碼所需的信息;宏 塊編碼模式包括塊類型信息、分塊模式信息和運(yùn)動矢量信息。上述步驟102和步驟103的執(zhí)行順序不分先后,可并行執(zhí)行。本實(shí)施例根據(jù)像素轉(zhuǎn)碼率和輸入碼流的宏塊信息實(shí)時確定宏塊編碼模式,然后再 根據(jù)確定的宏塊編碼模式進(jìn)行編碼,從而在確?;謴?fù)的視頻質(zhì)量的前提下,提高了轉(zhuǎn)碼速 度,更好地滿足了實(shí)時視頻轉(zhuǎn)碼要求。圖2為本發(fā)明視頻轉(zhuǎn)碼方法另一個實(shí)施例的流程圖,如圖2所示,包括步驟201,對輸入碼流進(jìn)行解碼,提取解碼后的輸入碼流的宏塊信息。步驟202,根據(jù)輸入碼流中平均每像素占用的比特數(shù)和預(yù)設(shè)的輸出碼流中平均每 像素占用的比特數(shù),確定像素轉(zhuǎn)碼率。具體地,碼流中平均每像素占用的比特數(shù)為bpp,bpp可以通過式(1)計(jì)算。
對輸入碼流進(jìn)行解碼之后,可以獲得輸入碼流的碼率和幀率,以及解碼后的輸入 碼流中圖像的寬度和高度,根據(jù)這些參數(shù)即可計(jì)算得到解碼后的輸入碼流中平均每像素占 用的比特數(shù);以上只是獲得輸入碼流的碼率和幀率,以及輸入碼流中圖像的寬度和高度,進(jìn) 而獲得輸入碼流中平均每像素占用的比特數(shù)的一種方式,本發(fā)明實(shí)施例并不局限于此,輸 入碼流的碼率和幀率,以及輸入碼流中圖像的寬度和高度并不一定在解碼后才能得到,上 述參數(shù)也可以通過其他方式獲得,例如預(yù)先輸入上述參數(shù);本發(fā)明實(shí)施例對獲得輸入碼 流的碼率和幀率,以及輸入碼流中圖像的寬度和高度的方式不作限定。另外,可以根據(jù)轉(zhuǎn)碼要求預(yù)先設(shè)置輸出碼流的碼率和幀率,以及輸出碼流中圖像 的寬度和高度,根據(jù)這些參數(shù)即可計(jì)算得到預(yù)設(shè)的輸出碼流中平均每像素占用的比特數(shù)。輸入碼流中平均每像素占用的比特數(shù)與預(yù)設(shè)的輸出碼流中平均每像素占用的比 特數(shù)的比值,即為像素轉(zhuǎn)碼率。以ω表示像素轉(zhuǎn)碼率,以bPPi表示輸入碼流中平均每像素 占用的比特數(shù),以bpp。表示預(yù)設(shè)的輸出碼流中平均每像素占用的比特數(shù),則,CO=BppiZbpp0(2)像素轉(zhuǎn)碼率表示輸入碼流與預(yù)期的輸出碼流之間的相似程度,像素轉(zhuǎn)碼率越小, 表示輸入碼流與預(yù)期的輸出碼流之間的相似性越高。步驟203,判斷像素轉(zhuǎn)碼率是否大于預(yù)設(shè)的第一門限值。如果該像素轉(zhuǎn)碼率小于該 第一門限值,則執(zhí)行步驟204 步驟206 ;如果該像素轉(zhuǎn)碼率大于該第一門限值,則執(zhí)行步 驟 207。本實(shí)施例中,預(yù)先設(shè)置第一門限值α,這里的α的取值為一經(jīng)驗(yàn)值,可以將α在 一定范圍內(nèi)取多個值,通過多次仿真調(diào)試后得到最佳的數(shù)量,如α可以取0.5、或0.45等, 本文中的其他門限值也可用類似方法獲取。當(dāng)設(shè)置第一門限值α后,判斷像素轉(zhuǎn)碼率ω 是否大于α。如果ω > α,則表示解碼后的輸入碼流與預(yù)期的輸出碼流之間的差異性較 大,因此根據(jù)解碼后的輸入碼流的宏塊信息對解碼后的輸入碼流進(jìn)行編碼無法保證轉(zhuǎn)碼后 的輸出碼流的視頻質(zhì)量。這種情況下,需要根據(jù)解碼后的輸入碼流中的宏塊信息重新確定 宏塊編碼模式,再根據(jù)重新確定的宏塊編碼模式對解碼后的輸入碼流進(jìn)行編碼;如果ω < α,則表示解碼后的輸入碼流與預(yù)期的輸出碼流之間具有較強(qiáng)的相似 性,因此不需要對輸入碼流進(jìn)行較大的調(diào)整,可以根據(jù)解碼后的輸入碼流的宏塊信息對解 碼后的輸入碼流進(jìn)行編碼。步驟204,根據(jù)解碼后的輸入碼流的宏塊信息對解碼后的輸入碼流的每一幀進(jìn)行 編碼之后,計(jì)算編碼后的輸出幀的第一失真度,以及該輸出幀對應(yīng)的輸入幀的第二失真度, 并計(jì)算第一失真度與第二失真度的比值。輸入碼流是由一幀一幀的圖像組成的,每一幀圖像包括多個宏塊,宏塊中的 頭比特表示宏塊編碼模式、運(yùn)動矢量等信息所占用的比特,頭比特的長度與量化參數(shù) (Quantization Parameter ;以下簡稱QP)基本無關(guān);而宏塊中的紋理比特指宏塊殘差所 占用的比特,紋理比特的長度與QP密切相關(guān)。當(dāng)ω < α?xí)r,可以直接根據(jù)解碼后的輸入碼流的宏塊信息對該解碼后的輸入碼 流進(jìn)行編碼。在編碼時,完全復(fù)用輸入宏塊的運(yùn)動信息,因此輸出宏塊的頭比特數(shù)與對應(yīng)的 輸入宏塊的頭比特數(shù)非常接近。這時,編碼后的輸出碼流與輸入碼流的主要差別在于紋理 比特數(shù)。由于碼率轉(zhuǎn)碼通常都是碼率降低轉(zhuǎn)碼,即編碼后的輸出宏塊所采用的QP —般不小于輸入宏塊的QP,即輸出宏塊的紋理比特數(shù)會小于輸入宏塊的紋理比特數(shù)。當(dāng)輸出宏塊的 QP略大于輸入宏塊的QP時,輸出宏塊的紋理比特數(shù)略小于輸入宏塊的紋理比特數(shù),這時輸 出碼流的碼率與輸入碼流的碼率相差不大,因此可以保證輸出碼流的質(zhì)量。當(dāng)輸出宏塊的 QP大于輸入宏塊的QP較多時,輸出宏塊的紋理比特數(shù)遠(yuǎn)遠(yuǎn)小于輸入宏塊的紋理比特數(shù),這 時輸出碼流的碼率與輸入碼流的碼率相差較大,輸出碼流的質(zhì)量大大下降。為保證編碼后的輸出碼流的視頻質(zhì)量,本實(shí)施例在根據(jù)解碼后的輸入碼流的宏塊 信息對解碼后的輸入碼流的每一幀進(jìn)行編碼之后,均計(jì)算編碼后的輸出幀的第一失真度與 該輸出幀對應(yīng)的輸入幀的第二失真度的比值。具體可以為首先,計(jì)算編碼后的輸出幀中每個宏塊的紋理比特數(shù)與該宏塊的總比特數(shù)的第一 比值,并計(jì)算編碼后的輸出幀中所有宏塊的第一比值的均值,該第一比值的均值即為第一 失真度;具體地,以R(M。)表示該第一比值,
權(quán)利要求
1.一種視頻轉(zhuǎn)碼方法,其特征在于,包括對輸入碼流進(jìn)行解碼,提取解碼后的輸入碼流的宏塊信息,根據(jù)所述輸入碼流確定像 素轉(zhuǎn)碼率;當(dāng)確定的所述像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,根據(jù)所述宏塊信息對所述解碼后 的輸入碼流進(jìn)行編碼;當(dāng)所述像素轉(zhuǎn)碼率大于所述第一門限值時,根據(jù)所述宏塊信息重新確定宏塊編碼模 式,并根據(jù)重新確定的宏塊編碼模式對所述解碼后的輸入碼流進(jìn)行編碼。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述輸入碼流確定像素轉(zhuǎn)碼率 包括根據(jù)所述輸入碼流中平均每像素占用的比特數(shù)和預(yù)設(shè)的輸出碼流中平均每像素占用 的比特數(shù),確定像素轉(zhuǎn)碼率。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述宏塊信息對所述解碼后的 輸入碼流進(jìn)行編碼包括根據(jù)所述宏塊信息對所述解碼后的輸入碼流的每一幀進(jìn)行編碼之后,計(jì)算編碼后的輸 出幀的第一失真度,以及所述輸出幀對應(yīng)的輸入幀的第二失真度,并計(jì)算所述第一失真度 與所述第二失真度的比值;當(dāng)所述比值大于預(yù)設(shè)的第二門限值時,根據(jù)所述宏塊信息對所述解碼后的輸入碼流進(jìn) 行編碼;當(dāng)所述比值小于所述第二門限值時,根據(jù)所述宏塊信息重新確定宏塊編碼模式,并根 據(jù)重新確定的宏塊編碼模式對后續(xù)待編碼的碼流進(jìn)行編碼,直至對所述解碼后的輸入碼流 的編碼結(jié)束。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述計(jì)算編碼后的輸出幀的第一失真度 包括計(jì)算所述編碼后的輸出幀中每個宏塊的紋理比特數(shù)與所述宏塊的總比特數(shù)的第一比 值,并計(jì)算所述編碼后的輸出幀中所有宏塊的第一比值的均值,所述第一比值的均值為第一失真度;所述計(jì)算所述輸出幀對應(yīng)的輸入幀的第二失真度包括計(jì)算所述輸出幀對應(yīng)的輸入幀中每個宏塊的紋理比特數(shù)與所述宏塊的總比特數(shù)的第 二比值,并計(jì)算所述輸入幀中所有宏塊的第二比值的均值,所述第二比值的均值為所述第二失真度。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述宏塊信息對所述解碼后的 輸入碼流進(jìn)行編碼包括提取所述宏塊信息中的塊編碼類型CBP信息; 對所述CBP信息指示為零的宏塊直接進(jìn)行熵編碼。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括 根據(jù)所述宏塊信息,確定待編碼的宏塊是否為Skip塊;當(dāng)所述待編碼的宏塊為Skip塊時,直接對所述Skip塊的下一宏塊進(jìn)行編碼。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述確定待編碼的宏塊為Skip塊的步驟 包括當(dāng)幀F(xiàn)中的第m個宏塊為M(F,m),經(jīng)過模式判決和運(yùn)動估計(jì)后得到的最優(yōu)率失真代 價為RD(M(F,m)),解碼側(cè)當(dāng)前幀為FD。,解碼側(cè)當(dāng)前幀對應(yīng)的參考幀為Fdk,編碼側(cè)當(dāng)前幀為 Fk,編碼側(cè)當(dāng)前幀對應(yīng)的參考幀為Fek,所述待編碼的宏塊的RDskip(M(FK,m))滿足
8.根據(jù)權(quán)利要求1、3、5或6所述的方法,其特征在于,所述宏塊信息包括塊類型信 息、分塊模式信息、運(yùn)動矢量信息、CBP信息、量化參數(shù)和宏塊殘差;所述宏塊編碼模式包括塊類型信息、分塊模式信息和運(yùn)動矢量信息。
9.一種視頻轉(zhuǎn)碼裝置,其特征在于,包括 解碼模塊,用于對輸入碼流進(jìn)行解碼;提取模塊,用于提取所述解碼模塊解碼后的輸入碼流的宏塊信息; 像素轉(zhuǎn)碼率確定模塊,用于根據(jù)所述輸入碼流確定像素轉(zhuǎn)碼率; 編碼模塊,用于當(dāng)所述像素轉(zhuǎn)碼率確定模塊確定的像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值 時,根據(jù)所述提取模塊提取的宏塊信息對所述解碼模塊解碼后的輸入碼流進(jìn)行編碼;編碼模式確定模塊,用于當(dāng)所述像素轉(zhuǎn)碼率確定模塊確定的像素轉(zhuǎn)碼率大于所述第一 門限值時,根據(jù)所述提取模塊提取的宏塊信息重新確定宏塊編碼模式;所述編碼模塊還用 于根據(jù)所述編碼模式確定模塊重新確定的宏塊編碼模式對所述解碼模塊解碼后的輸入碼 流進(jìn)行編碼。
10.根據(jù)權(quán)利要求9所述的視頻轉(zhuǎn)碼裝置,其特征在于,所述像素轉(zhuǎn)碼率確定模塊具體 用于根據(jù)所述輸入碼流中平均每像素占用的比特數(shù)和預(yù)設(shè)的輸出碼流中平均每像素占用 的比特數(shù),確定像素轉(zhuǎn)碼率。
11.根據(jù)權(quán)利要求9所述的視頻轉(zhuǎn)碼裝置,其特征在于,所述編碼模塊包括失真度計(jì)算子模塊,用于在根據(jù)所述提取模塊提取的宏塊信息對所述解碼模塊解碼后 的輸入碼流的每一幀進(jìn)行編碼之后,計(jì)算編碼后的輸出幀的第一失真度,以及所述輸出幀 對應(yīng)的輸入幀的第二失真度,并計(jì)算所述第一失真度與所述第二失真度的比值;第一編碼子模塊,用于當(dāng)所述失真度計(jì)算子模塊計(jì)算的比值大于預(yù)設(shè)的第二門限值 時,根據(jù)所述提取模塊提取的宏塊信息對所述解碼模塊解碼后的輸入碼流進(jìn)行編碼。
12.根據(jù)權(quán)利要求11所述的視頻轉(zhuǎn)碼裝置,其特征在于,所述編碼模式確定模塊還用 于當(dāng)所述失真度計(jì)算子模塊計(jì)算的比值小于所述第二門限值時,根據(jù)所述提取模塊提取的 宏塊信息重新確定宏塊編碼模式;所述編碼模塊還包括第二編碼子模塊,用于根據(jù)所述編碼模式確定模塊重新確定的 宏塊編碼模式對后續(xù)待編碼的碼流進(jìn)行編碼,直至對所述解碼后的輸入碼流的編碼結(jié)束。
13.根據(jù)權(quán)利要求11所述視頻轉(zhuǎn)碼裝置,其特征在于,所述失真度計(jì)算子模塊用于計(jì) 算所述編碼后的輸出幀中每個宏塊的紋理比特數(shù)與所述宏塊的總比特數(shù)的第一比值,并計(jì) 算所述編碼后的輸出幀中所有宏塊的第一比值的均值,所述第一比值的均值為第一失真度;所述失真度計(jì)算子模塊還用于計(jì)算所述輸出幀對應(yīng)的輸入幀中每個宏塊的紋理比特 數(shù)與所述宏塊的總比特數(shù)的第二比值,并計(jì)算所述輸入幀中所有宏塊的第二比值的均值, 所述第二比值的均值為所述第二失真度。
14.根據(jù)權(quán)利要求11所述的視頻轉(zhuǎn)碼裝置,其特征在于,所述提取模塊還用于提取所述宏塊信息中的塊編碼類型CBP信息;所述第一編碼子模塊用于對所述CBP信息指示為零的宏塊直接進(jìn)行熵編碼。
15.根據(jù)權(quán)利要求9所述視頻轉(zhuǎn)碼裝置,其特征在于,還包括Skip塊確定模塊,用于根據(jù)所述提取模塊提取的宏塊信息,確定待編碼的宏塊是否為 Skip 塊;所述編碼模塊還用于當(dāng)所述Skip塊確定模塊確定所述待編碼的宏塊為Skip塊時,直 接對所述Skip塊的下一宏塊進(jìn)行編碼;所述Skip塊確定模塊確定待編碼的宏塊為Skip塊的步驟包括當(dāng)幀F(xiàn)中的第m個宏塊為M(F,m),經(jīng)過模式判決和運(yùn)動估計(jì)后得到的最優(yōu)率失真代 價為RD(M(F,m)),解碼側(cè)當(dāng)前幀為FD。,解碼側(cè)當(dāng)前幀對應(yīng)的參考幀為Fdk,編碼側(cè)當(dāng)前幀為 Fk,編碼側(cè)當(dāng)前幀對應(yīng)的參考幀為Fek,所述待編碼的宏塊的RDskip(M(FK,m))滿足
全文摘要
本發(fā)明實(shí)施例公開了一種視頻轉(zhuǎn)碼方法和裝置,所述視頻轉(zhuǎn)碼方法包括對輸入碼流進(jìn)行解碼,提取解碼后的輸入碼流的宏塊信息,根據(jù)所述輸入碼流確定像素轉(zhuǎn)碼率;當(dāng)確定的所述像素轉(zhuǎn)碼率小于預(yù)設(shè)的第一門限值時,根據(jù)所述宏塊信息對所述解碼后的輸入碼流進(jìn)行編碼;當(dāng)所述像素轉(zhuǎn)碼率大于所述第一門限值時,根據(jù)所述宏塊信息重新確定宏塊編碼模式,并根據(jù)重新確定的宏塊編碼模式對所述解碼后的輸入碼流進(jìn)行編碼。本發(fā)明實(shí)施例在確保恢復(fù)的視頻質(zhì)量的前提下,提高了轉(zhuǎn)碼速度,更好地滿足了實(shí)時視頻轉(zhuǎn)碼的要求。
文檔編號H04N7/26GK101998117SQ20091016522
公開日2011年3月30日 申請日期2009年8月13日 優(yōu)先權(quán)日2009年8月13日
發(fā)明者唐繁榮, 宋彬, 李兵偉, 秦浩, 郭姍 申請人:華為技術(shù)有限公司;西安電子科技大學(xué)