本發(fā)明涉及音視頻編解碼,尤其涉及一種編碼單元及avs3編碼器。
背景技術(shù):
1、avs3(audio?video?coding?standard)是我國自主研制的第三代音視頻編解碼標(biāo)準(zhǔn),為全球首個(gè)面向8k超高清產(chǎn)業(yè)的音視頻編解碼技術(shù)標(biāo)準(zhǔn)。高層次綜合工具(如vivadohls)的使用可以極大地縮短將技術(shù)標(biāo)準(zhǔn)轉(zhuǎn)化為商業(yè)產(chǎn)品的開發(fā)周期。然而,面對avs3極復(fù)雜的編碼算法與8k視頻極高的編碼性能需求,高層次綜合工具不僅有時(shí)會(huì)因?yàn)橘Y源占用過高導(dǎo)致綜合工具自身掛死等情況,極大地影響開發(fā)效率,還通常不能直接綜合出滿足性能要求的硬件實(shí)現(xiàn)。因此,如何縮短編碼單元內(nèi)部模式?jīng)Q策過程的處理時(shí)間,實(shí)現(xiàn)實(shí)時(shí)編碼,成為一個(gè)亟待解決的問題。
2、上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的主要目的在于提供了一種編碼單元及avs3編碼器,旨在解決如何縮短編碼單元內(nèi)部模式?jīng)Q策過程的處理時(shí)間,實(shí)現(xiàn)實(shí)時(shí)編碼的技術(shù)問題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種編碼單元,所述編碼單元包括:包含亮度模式?jīng)Q策子模塊和色度模式?jīng)Q策子模塊的模式?jīng)Q策模塊,所述亮度模式?jīng)Q策子模塊包括:數(shù)據(jù)準(zhǔn)備單元、預(yù)測單元、第一模式?jīng)Q策單元、第二模式?jīng)Q策單元以及比較單元;
3、所述數(shù)據(jù)準(zhǔn)備單元與所述預(yù)測單元的第一端連接,所述預(yù)測單元的第二端分別與所述第一模式?jīng)Q策單元的第一端和所述第二模式?jīng)Q策單元的第一端連接,所述比較單元分別與所述第一模式?jīng)Q策單元的第二端和所述第二模式?jīng)Q策單元的第二端連接;
4、所述預(yù)測單元,用于根據(jù)所述數(shù)據(jù)準(zhǔn)備單元提供的當(dāng)前編碼塊的坐標(biāo)數(shù)據(jù)、所述當(dāng)前編碼塊的所有運(yùn)動(dòng)矢量以及相鄰編碼塊信息進(jìn)行預(yù)測,獲得所述當(dāng)前編碼塊的候選編碼模式;
5、所述第一模式?jīng)Q策單元,用于根據(jù)所述候選編碼模式確定第一亮度編碼模式;
6、所述第二模式?jīng)Q策單元,用于根據(jù)所述候選編碼模式確定第二亮度編碼模式;
7、所述比較單元,用于根據(jù)所述第一亮度編碼模式和所述第二亮度編碼模式確定目標(biāo)亮度編碼模式。
8、可選地,在所述預(yù)測單元包括編碼模式預(yù)測子單元時(shí),所述第一模式?jīng)Q策單元包括:跳過/直接模式預(yù)測矩陣獲取子單元和跳過/直接模式?jīng)Q策子單元,所述第二模式?jīng)Q策單元包括:幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元和幀內(nèi)/幀間模式?jīng)Q策子單元;
9、所述數(shù)據(jù)準(zhǔn)備單元與所述編碼模式預(yù)測子單元的第一端連接,所述編碼模式預(yù)測子單元的第二端分別與所述跳過/直接模式預(yù)測矩陣獲取子單元的第一端和所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第一端連接,所述跳過/直接模式預(yù)測矩陣獲取子單元的第二端與所述跳過/直接模式?jīng)Q策子單元的第一端連接,所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第二端與所述幀內(nèi)/幀間模式?jīng)Q策子單元的第一端連接,所述比較單元分別與所述跳過/直接模式?jīng)Q策子單元的第二端和所述幀內(nèi)/幀間模式?jīng)Q策子單元的第二端連接;
10、所述編碼模式預(yù)測子單元,用于根據(jù)所述數(shù)據(jù)準(zhǔn)備單元提供的當(dāng)前編碼塊的坐標(biāo)數(shù)據(jù)、所述當(dāng)前編碼塊的所有運(yùn)動(dòng)矢量以及相鄰編碼塊信息進(jìn)行預(yù)測,獲得所述當(dāng)前編碼塊的候選編碼模式,所述候選編碼模式包括:第一候選編碼模式和第二候選編碼模式;
11、所述跳過/直接模式預(yù)測矩陣獲取子單元,用于對所述第一候選編碼模式進(jìn)行跳過/直接模式預(yù)測,獲得所述當(dāng)前編碼塊的第一預(yù)測矩陣;
12、所述跳過/直接模式?jīng)Q策子單元,用于根據(jù)所述第一候選編碼模式和第一預(yù)測矩陣確定第一亮度編碼模式;
13、所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元,用于對所述第二候選編碼模式進(jìn)行幀內(nèi)/幀間模式預(yù)測,獲得所述當(dāng)前編碼塊的第二預(yù)測矩陣;
14、所述幀內(nèi)/幀間模式?jīng)Q策子單元,用于根據(jù)所述第二預(yù)測矩陣確定第二亮度編碼模式。
15、可選地,在所述預(yù)測單元包括編碼模式預(yù)測子單元和跳過/直接模式預(yù)測矩陣獲取子單元時(shí),所述第一模式?jīng)Q策單元包括:跳過/直接模式?jīng)Q策子單元,所述第二模式?jīng)Q策單元包括:幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元和幀內(nèi)/幀間模式?jīng)Q策子單元;
16、所述數(shù)據(jù)準(zhǔn)備單元與所述編碼模式預(yù)測子單元的第一端連接,所述編碼模式預(yù)測子單元的第二端與所述跳過/直接模式預(yù)測矩陣獲取子單元的第一端連接,所述跳過/直接模式預(yù)測矩陣獲取子單元的第二端分別與所述跳過/直接模式?jīng)Q策子單元的第一端和所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第一端連接,所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第二端與所述幀內(nèi)/幀間模式?jīng)Q策子單元的第一端連接,所述比較單元分別與所述跳過/直接模式?jīng)Q策子單元的第二端和所述幀內(nèi)/幀間模式?jīng)Q策子單元的第二端連接;
17、所述編碼模式預(yù)測子單元,用于根據(jù)所述數(shù)據(jù)準(zhǔn)備單元提供的當(dāng)前編碼塊的坐標(biāo)數(shù)據(jù)、所述當(dāng)前編碼塊的所有運(yùn)動(dòng)矢量和相鄰編碼塊信息進(jìn)行預(yù)測,獲得所述當(dāng)前編碼塊的候選編碼模式,所述候選編碼模式包括:第三候選編碼模式和第四候選編碼模式;
18、所述跳過/直接模式預(yù)測矩陣獲取子單元,用于對所述第三候選編碼模式進(jìn)行跳過/直接模式預(yù)測,獲得所述當(dāng)前編碼塊的第三預(yù)測矩陣;
19、所述跳過/直接模式?jīng)Q策子單元,用于根據(jù)所述第三候選編碼模式和第三預(yù)測矩陣確定第一亮度編碼模式;
20、所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元,用于對所述第四候選編碼模式、幀內(nèi)預(yù)測模式進(jìn)行幀內(nèi)/幀間模式預(yù)測,獲得所述當(dāng)前編碼塊的第四預(yù)測矩陣;
21、所述幀內(nèi)/幀間模式?jīng)Q策子單元,用于根據(jù)所述第四候選編碼模式和第四預(yù)測矩陣確定第二亮度編碼模式。
22、可選地,在所述預(yù)測單元包括編碼模式預(yù)測子單元和幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元時(shí),所述第一模式?jīng)Q策單元包括:跳過/直接模式預(yù)測矩陣獲取子單元和跳過/直接模式?jīng)Q策子單元,所述第二模式?jīng)Q策單元包括:幀內(nèi)/幀間模式?jīng)Q策子單元;
23、所述數(shù)據(jù)準(zhǔn)備單元與所述編碼模式預(yù)測子單元的第一端連接,所述編碼模式預(yù)測子單元的第二端與所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第一端連接,所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元的第二端分別與所述跳過/直接模式預(yù)測矩陣獲取子單元的第一端和所述跳過/直接模式?jīng)Q策子單元的第一端連接,所述跳過/直接模式預(yù)測矩陣獲取子單元的第二端與所述跳過/直接模式?jīng)Q策子單元的第一端連接,所述比較單元分別與所述跳過/直接模式?jīng)Q策子單元的第二端和所述幀內(nèi)/幀間模式?jīng)Q策子單元的第二端連接;
24、所述編碼模式預(yù)測子單元,用于根據(jù)所述數(shù)據(jù)準(zhǔn)備單元提供的當(dāng)前編碼塊的坐標(biāo)數(shù)據(jù)、所述當(dāng)前編碼塊的所有運(yùn)動(dòng)矢量和相鄰編碼塊信息進(jìn)行預(yù)測,獲得所述當(dāng)前編碼塊的候選編碼模式,所述候選編碼模式包括:第五候選編碼模式和第六候選編碼模式;
25、所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元,用于對所述第五候選編碼模式進(jìn)行幀內(nèi)/幀間模式預(yù)測,獲得所述當(dāng)前編碼塊的第五預(yù)測矩陣;
26、所述跳過/直接模式預(yù)測矩陣獲取子單元,用于對所述第六候選編碼模式進(jìn)行跳過/直接模式預(yù)測,獲得所述當(dāng)前編碼塊的第六預(yù)測矩陣;
27、所述跳過/直接模式?jīng)Q策子單元,用于根據(jù)所述第六候選編碼模式和第六預(yù)測矩陣確定第一亮度編碼模式;
28、所述幀內(nèi)/幀間模式?jīng)Q策子單元,用于根據(jù)所述第五候選編碼模式和第五預(yù)測矩陣確定第二亮度編碼模式。
29、可選地,在第一運(yùn)行時(shí)長和第二運(yùn)行時(shí)長之間的差值小于第一預(yù)設(shè)閾值時(shí),所述預(yù)測單元由所述編碼模式預(yù)測子單元構(gòu)成;
30、其中,所述第一運(yùn)行時(shí)長為處理所述跳過/直接模式預(yù)測矩陣獲取子單元和所述跳過/直接模式?jīng)Q策子單元的運(yùn)行時(shí)長,所述第二運(yùn)行時(shí)長為處理所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元和所述幀內(nèi)/幀間模式?jīng)Q策子單元的運(yùn)行時(shí)長。
31、可選地,在第三運(yùn)行時(shí)長和第四運(yùn)行時(shí)長之間的差值小于第二預(yù)設(shè)閾值時(shí),所述預(yù)測單元由所述編碼模式預(yù)測子單元和所述跳過/直接模式預(yù)測矩陣獲取子單元構(gòu)成;
32、其中,所述第三運(yùn)行時(shí)長為處理所述跳過/直接模式?jīng)Q策子單元的運(yùn)行時(shí)長,所述第四運(yùn)行時(shí)長為處理所述幀內(nèi)/幀間模式預(yù)測矩陣獲取子單元和所述幀內(nèi)/幀間模式?jīng)Q策子單元的運(yùn)行時(shí)長。
33、可選地,所述第一模式?jīng)Q策單元,還用于確定所述第一亮度編碼模式對應(yīng)的第一失真率和第一編碼比特?cái)?shù),并根據(jù)所述第一失真率和所述第一編碼比特?cái)?shù)確定第一代價(jià)值;
34、所述第二模式?jīng)Q策單元,還用于確定所述第二亮度編碼模式對應(yīng)的第二失真率和第二編碼比特?cái)?shù),并根據(jù)所述第二失真率和所述第二編碼比特?cái)?shù)確定第二代價(jià)值;
35、所述比較單元,還用于對所述第一代價(jià)值和所述第二代價(jià)值進(jìn)行比較,并根據(jù)比較結(jié)果確定目標(biāo)亮度編碼模式。
36、可選地,所述亮度模式?jīng)Q策子模塊還包括:數(shù)據(jù)存儲(chǔ)單元;
37、所述數(shù)據(jù)存儲(chǔ)單元,用于存儲(chǔ)所述比較單元輸出的亮度編碼信息;
38、所述數(shù)據(jù)存儲(chǔ)單元,還用于將所述亮度編碼信息中的預(yù)設(shè)格式的數(shù)據(jù)信息打包至單寬矢量中;
39、所述數(shù)據(jù)存儲(chǔ)單元,還用于將預(yù)設(shè)數(shù)量的所述單寬矢量進(jìn)行數(shù)據(jù)重塑,構(gòu)成用于進(jìn)行數(shù)據(jù)訪問的ram數(shù)組。
40、可選地,所述數(shù)據(jù)存儲(chǔ)單元,還用于對所述ram數(shù)組進(jìn)行分區(qū)存儲(chǔ),構(gòu)成用于進(jìn)行數(shù)據(jù)訪問的分區(qū)存儲(chǔ)的數(shù)據(jù)。
41、此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種avs3編碼器,所述avs3編碼器包括如上文所述的編碼單元。
42、本發(fā)明中的亮度模式?jīng)Q策子模塊包括:數(shù)據(jù)準(zhǔn)備單元、預(yù)測單元、第一模式?jīng)Q策單元、第二模式?jīng)Q策單元以及比較單元;數(shù)據(jù)準(zhǔn)備單元與預(yù)測單元的第一端連接,預(yù)測單元的第二端分別與第一模式?jīng)Q策單元的第一端和第二模式?jīng)Q策單元的第一端連接,比較單元分別與第一模式?jīng)Q策單元的第二端和第二模式?jīng)Q策單元的第二端連接;本發(fā)明先通過預(yù)測單元根據(jù)數(shù)據(jù)準(zhǔn)備單元提供的當(dāng)前編碼塊的坐標(biāo)數(shù)據(jù)、所述當(dāng)前編碼塊的所有運(yùn)動(dòng)矢量以及相鄰編碼塊信息進(jìn)行預(yù)測,獲得當(dāng)前編碼塊的候選編碼模式,然后通過第一模式?jīng)Q策單元根據(jù)候選編碼模式確定第一亮度編碼模式,并通過第二模式?jīng)Q策單元根據(jù)候選編碼模式確定第二亮度編碼模式,再通過比較單元根據(jù)第一亮度編碼模式和第二亮度編碼模式確定目標(biāo)亮度編碼模式。本發(fā)明通過將第一模式?jīng)Q策單元和第二模式?jīng)Q策單元并行處理,相較于現(xiàn)有的將第一模式?jīng)Q策單元和第二模式?jīng)Q策單元串行處理,本發(fā)明上述方式能夠通過比較單元從第一模式?jīng)Q策單元和第二模式?jīng)Q策單元中選取目標(biāo)亮度編碼模式,從而能夠縮短編碼單元內(nèi)部模式?jīng)Q策過程的處理時(shí)間,實(shí)現(xiàn)實(shí)時(shí)編碼。