一種視頻轉(zhuǎn)碼方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及多媒體技術(shù)領(lǐng)域,特別涉及一種視頻轉(zhuǎn)碼方法及裝置。
【背景技術(shù)】
[0002]視頻轉(zhuǎn)碼,是指將已經(jīng)壓縮編碼的視頻碼流轉(zhuǎn)換成另一個視頻碼流,以適應(yīng)不同的網(wǎng)絡(luò)帶寬、不同終端處理能力和不同的用戶需求。視頻轉(zhuǎn)碼本質(zhì)上是一個先解碼、再編碼的過程,所以,轉(zhuǎn)換前后的視頻碼流可能遵循相同的視頻編碼算法,也可能遵循不同的視頻編碼算法。
[0003]目前通用的視頻轉(zhuǎn)碼方法是,通過解碼器將源視頻解碼為原始圖像,再經(jīng)過編碼預(yù)處理后得到待編碼數(shù)據(jù),通過編碼器將待編碼數(shù)據(jù)編碼為目標(biāo)視頻。這種方法兼容性強,但轉(zhuǎn)碼速率低。隨著視頻編碼算法的不斷更新,各種視頻應(yīng)用越來越廣泛,視頻轉(zhuǎn)碼的需求越來越大,對轉(zhuǎn)碼速率的要求也越來越高。
[0004]在目前通用的視頻轉(zhuǎn)碼方法基礎(chǔ)上,現(xiàn)有的一種提高轉(zhuǎn)碼速率的視頻轉(zhuǎn)碼方法是,利用源視頻碼流的解碼信息(如編碼模式、運動矢量等)對待編碼數(shù)據(jù)進行編碼。
[0005]這種視頻轉(zhuǎn)碼方法可以在一定程度上提高轉(zhuǎn)碼速率,但是因為其在對待編碼數(shù)據(jù)進行編碼的過程中需要利用源視頻的解碼信息,所以對于目標(biāo)視頻所對應(yīng)的視頻編碼算法有一定的要求,需要其與源視頻對應(yīng)的視頻編碼算法具有一定的相關(guān)性,通用性受到限制。
【發(fā)明內(nèi)容】
[0006]為解決上述問題,本發(fā)明實施例公開了一種視頻轉(zhuǎn)碼方法及裝置。技術(shù)方案如下:
[0007]一種視頻轉(zhuǎn)碼方法,包括:
[0008]確定針對同一源視頻的視頻轉(zhuǎn)碼任務(wù)的集合,所述集合中包括至少兩個不同的視頻轉(zhuǎn)碼任務(wù),不同任務(wù)所對應(yīng)的視頻編碼算法相同、編碼需求不同;
[0009]對所述源視頻進行解碼,獲得所述源視頻的解碼數(shù)據(jù);
[0010]根據(jù)所獲得的解碼數(shù)據(jù),確定所述集合中每個視頻轉(zhuǎn)碼任務(wù)對應(yīng)的待編碼數(shù)據(jù);
[0011]從所述集合中選擇一個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理,并從編碼結(jié)果中提取該任務(wù)對應(yīng)的已編碼視頻幀的編碼信息;
[0012]針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理;
[0013]根據(jù)編碼結(jié)果,獲得與所述源視頻對應(yīng)的多個目標(biāo)視頻。
[0014]在本發(fā)明的一種【具體實施方式】中,所述從所述集合中選擇一個任務(wù),包括:
[0015]根據(jù)不同任務(wù)所對應(yīng)的編碼需求,按照預(yù)設(shè)的選擇順序從所述集合中選擇第一個任務(wù)。
[0016]在本發(fā)明的一種【具體實施方式】中,所述針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理,包括:
[0017]依次選擇所述集合中的第2、3、……、Nf任務(wù)進行編碼處理,N為所述集合中的總?cè)蝿?wù)數(shù),其中:
[0018]在n e [2, N]的情況下,針對第η個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及第η_1個任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理;
[0019]并且,在n e [2,N-1]的情況下,針對第η個任務(wù),從編碼結(jié)果中提取該任務(wù)對應(yīng)的已編碼視頻幀的編碼信息。
[0020]在本發(fā)明的一種【具體實施方式】中,所述編碼需求為對清晰度或碼率的需求,所述預(yù)設(shè)的選擇順序為清晰度高低順序或碼率高低順序。
[0021 ] 在本發(fā)明的一種【具體實施方式】中,所述針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理,包括:
[0022]針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇的第一個任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理。
[0023]在本發(fā)明的一種【具體實施方式】中,所述已編碼視頻幀的編碼信息包括:模式?jīng)Q策、編碼塊劃分、運動估計、碼率控制中的一種或多種。
[0024]—種視頻轉(zhuǎn)碼裝置,包括:
[0025]轉(zhuǎn)碼任務(wù)集合確定模塊,用于確定針對同一源視頻的視頻轉(zhuǎn)碼任務(wù)的集合,所述集合中包括至少兩個不同的視頻轉(zhuǎn)碼任務(wù),不同任務(wù)所對應(yīng)的視頻編碼算法相同、編碼需求不同;
[0026]解碼數(shù)據(jù)獲得模塊,用于對所述源視頻進行解碼,獲得所述源視頻的解碼數(shù)據(jù);
[0027]待編碼數(shù)據(jù)確定模塊,用于根據(jù)所獲得的解碼數(shù)據(jù),確定所述集合中每個視頻轉(zhuǎn)碼任務(wù)對應(yīng)的待編碼數(shù)據(jù);
[0028]第一編碼處理模塊,包括任務(wù)選擇子模塊和第一編碼處理子模塊,所述任務(wù)選擇子模塊,用于從所述集合中選擇一個任務(wù),所述第一編碼處理子模塊,用于根據(jù)任務(wù)選擇子模塊選擇的任務(wù)對應(yīng)的編碼需求,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理,并從編碼結(jié)果中提取該任務(wù)對應(yīng)的已編碼視頻幀的編碼信息;
[0029]第二編碼處理模塊,用于針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理;
[0030]目標(biāo)視頻獲得模塊,用于根據(jù)編碼結(jié)果,獲得與所述源視頻對應(yīng)的多個目標(biāo)視頻。
[0031]在本發(fā)明的一種【具體實施方式】中,所述任務(wù)選擇子模塊,具體用于:
[0032]根據(jù)不同任務(wù)所對應(yīng)的編碼需求,按照預(yù)設(shè)的選擇順序從所述集合中選擇第一個任務(wù)。
[0033]在本發(fā)明的一種【具體實施方式】中,所述第二編碼處理模塊,具體用于:
[0034]依次選擇所述集合中的第2、3、……、Nf任務(wù)進行編碼處理,N為所述集合中的總?cè)蝿?wù)數(shù),其中:
[0035]在n e [2, N]的情況下,針對第η個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及第η_1個任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理;
[0036]并且,在n e [2,N-1]的情況下,針對第η個任務(wù),從編碼結(jié)果中提取該任務(wù)對應(yīng)的已編碼視頻幀的編碼信息。
[0037]在本發(fā)明的一種【具體實施方式】中,所述編碼需求為對清晰度或碼率的需求,所述預(yù)設(shè)的選擇順序為清晰度高低順序或碼率高低順序。
[0038]在本發(fā)明的一種【具體實施方式】中,所述第二編碼處理模塊,具體用于:
[0039]針對所述集合中尚未被選擇過的每個任務(wù),根據(jù)該任務(wù)對應(yīng)的編碼需求,以及已選擇的第一個任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理。
[0040]在本發(fā)明的一種【具體實施方式】中,所述已編碼視頻幀的編碼信息包括:模式?jīng)Q策、編碼塊劃分、運動估計、碼率控制中的一種或多種。
[0041]應(yīng)用本發(fā)明實施例所提供的技術(shù)方案,針對轉(zhuǎn)碼任務(wù)集合中尚未被選擇的每一個任務(wù),參考已選擇任務(wù)對應(yīng)的已編碼視頻幀的編碼信息,并結(jié)合該任務(wù)所對應(yīng)的編碼需求,對該任務(wù)對應(yīng)的待編碼數(shù)據(jù)進行編碼處理,對于針對同一源視頻的不同轉(zhuǎn)碼任務(wù)來說,不同轉(zhuǎn)碼任務(wù)所對應(yīng)的目標(biāo)視頻的相同幀號的視頻幀之間具有較高的相似性,參考已編碼視頻幀的編碼信息進行編碼,可以加快該任務(wù)的視頻轉(zhuǎn)碼速率,尤其是需要將源視頻轉(zhuǎn)換為多個目標(biāo)視頻時,轉(zhuǎn)碼速率提高的越為明顯,且目標(biāo)視頻所使用的編碼算法不用受限于源視頻所使用的編碼算法,通用性較強。
【附圖說明】
[0042]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0043]圖1為本發(fā)明實施例中視頻轉(zhuǎn)碼方法的一種實施流程圖;
[0044]圖2為本發(fā)明實施例中編碼處理過程的一種示意圖;
[0045]圖3為本發(fā)明實施例中編碼處理過程的另一種示意