專利名稱:進(jìn)行時(shí)間最優(yōu)化編碼的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明總體涉及對(duì)視頻內(nèi)容進(jìn)行編碼,更具體地,涉及視頻內(nèi)容的時(shí)間最優(yōu)化編碼。
背景技術(shù):
本部分意在向讀者介紹可能與下面所描述和/或要求保護(hù)的本發(fā)明的各方面有關(guān)的技術(shù)的各方面。相信這種討論有助于向讀者提供背景信息以利于更好地理解本發(fā)明的各方面。相應(yīng)地,應(yīng)該理解,應(yīng)該就此而論地閱讀這些聲明,而不是將其視為對(duì)現(xiàn)有技術(shù)的承認(rèn)。 在過去,視頻編碼過程是由單片編碼硬件操控的線性過程。由于在對(duì)編碼進(jìn)行硬件中使用的編解碼器是簡(jiǎn)單的并在合理的時(shí)間量?jī)?nèi)完成編碼,所以這種實(shí)現(xiàn)方式是足夠的。已經(jīng)開發(fā)了新一代的視頻編解碼器(如,高級(jí)視頻編解碼器(AVC)),以便更高效地壓縮視頻從而改進(jìn)比特率效率并提供更高級(jí)的視頻質(zhì)量。然而,新的視頻編解碼器具有的缺陷是數(shù)學(xué)計(jì)算強(qiáng)度大,并因而不期望地增大了視頻編碼所需的時(shí)間周期。此外,正在努力通過在多編碼通路中采用編解碼器來(lái)提高編碼的質(zhì)量。更特別地,使編解碼器通過多編碼通路來(lái)傳遞內(nèi)容并分析內(nèi)容。如果這些通路彼此依賴,則每個(gè)通路都必須等待前一通路完成。這增大了完成多路編碼所需的時(shí)間,并因此還具有不期望地增大視頻編碼所需的時(shí)間周期的缺陷。本公開關(guān)注于克服這些缺陷。
發(fā)明內(nèi)容
本公開關(guān)注用于時(shí)間最優(yōu)化編碼的系統(tǒng)和方法。時(shí)間最優(yōu)化編碼通過在編碼質(zhì)量犧牲最小或不犧牲編碼質(zhì)量的情況下使時(shí)間密集型編碼并行化,使多個(gè)編碼節(jié)點(diǎn)或群的使用最大化。從而,減少了完成時(shí)間密集型編碼所需的時(shí)間,并提高了通過系統(tǒng)的多個(gè)編碼的
有效吞吐量。本公開的一方面關(guān)注用于一種編碼視頻內(nèi)容的方法,該方法包括接收視頻內(nèi)容,將視頻內(nèi)容分段成多個(gè)場(chǎng)景,檢測(cè)場(chǎng)景的長(zhǎng)度是否超過第一限制,如果場(chǎng)景的長(zhǎng)度超過第一限制則將場(chǎng)景切分成場(chǎng)景段,以及并行地對(duì)切分后的場(chǎng)景進(jìn)行編碼。本公開的另一方面關(guān)注用于一種編碼視頻內(nèi)容的設(shè)備或系統(tǒng),該設(shè)備包括用于接收視頻內(nèi)容的裝置,用于將視頻內(nèi)容分段成多個(gè)場(chǎng)景的裝置,用于檢測(cè)場(chǎng)景的長(zhǎng)度是否超過第一限制的裝置,用于在場(chǎng)景的長(zhǎng)度超過第一限制的情況下將場(chǎng)景切分成場(chǎng)景段的裝置,以及用于并行地對(duì)切分后的場(chǎng)景進(jìn)行編碼的裝置。
本發(fā)明的這些以及其它方面、特征以及優(yōu)點(diǎn)將從后續(xù)對(duì)較佳實(shí)施例的詳盡描述中得以闡述或變得清晰,將結(jié)合附圖來(lái)閱讀這些較佳實(shí)施例。
在附圖中,相似的參考標(biāo)記表示所有視圖中類似的元件圖I是示出了依照本公開的使用編碼器的示例性系統(tǒng)的方框圖;圖2是示出了依照本公開的示例性編碼器布置的方框圖;圖3是傳統(tǒng)編碼工作流程的不意圖;圖4是依照本公開的編碼工作流程的示意圖;圖5是依照本公開的影片內(nèi)容場(chǎng)景的示意圖;圖6是依照本公開的場(chǎng)景內(nèi)畫面組(GOP)大小和類型的示意圖;以及圖7是示出了依照本公開的編碼過程的流程圖。應(yīng)理解,附圖旨在說明本發(fā)明的構(gòu)思,并不一定是用于說明本發(fā)明的唯一可能配置。
具體實(shí)施例方式應(yīng)該知道,可以以不同形式的硬件、軟件或其組合來(lái)實(shí)現(xiàn)圖中所示元件。優(yōu)選地,在一個(gè)或多個(gè)適當(dāng)編程的通用設(shè)備上采用硬件與軟件相結(jié)合的形式來(lái)實(shí)現(xiàn)這些元件,所述適當(dāng)編程的通用設(shè)備可以包括處理器、存儲(chǔ)器和輸入/輸出接口。本描述示出了本發(fā)明的原理。因此將意識(shí)到,本領(lǐng)域技術(shù)人員可以設(shè)計(jì)出體現(xiàn)本發(fā)明的原理并且包含在本發(fā)明的精神和范圍之內(nèi)的各種布置,即使這里并未明確描述或示 出這些布置。此處提到的所有示例和條件性語(yǔ)言傾向用于教學(xué)目的以幫助讀者理解本發(fā)明的原理以及由發(fā)明人為促進(jìn)本領(lǐng)域發(fā)展而貢獻(xiàn)的構(gòu)思,并且應(yīng)理被解為不限于這些具體提到的示例和條件。此外,這里提到本發(fā)明的原理、方面和實(shí)施例的所有陳述及其具體示例旨在包含其結(jié)構(gòu)性和功能性等同物。此外,這些等同物旨在包括當(dāng)前現(xiàn)有的等同物以及將來(lái)開發(fā)的等同物,即,被開發(fā)為執(zhí)行相同功能而與結(jié)構(gòu)無(wú)關(guān)的任何元件。因此,例如,本領(lǐng)域技術(shù)人員應(yīng)該意識(shí)到,這里所呈現(xiàn)的方框圖表示說明本發(fā)明原理的示例電路的方案圖。類似地,應(yīng)該意識(shí)到,任何流程圖表、流程圖、狀態(tài)轉(zhuǎn)移圖、偽碼等表示各種過程,其中可以在計(jì)算機(jī)可讀介質(zhì)中表示這些過程并且由計(jì)算機(jī)或處理器來(lái)執(zhí)行這些過程,而不管是否明確示出了這樣的計(jì)算機(jī)或處理器??梢酝ㄟ^使用專用硬件以及與適當(dāng)?shù)能浖嚓P(guān)聯(lián)的、能夠執(zhí)行軟件的硬件來(lái)提供圖中所示不同元件的功能。在由處理器來(lái)提供的情況下,該功能可以由單個(gè)專用處理器、單個(gè)共享處理器,或者多個(gè)單獨(dú)的處理器(其中的一些可以是共享的)來(lái)提供。此外,術(shù)語(yǔ)“處理器”或“控制器”的明確使用不應(yīng)被解釋為專指能夠執(zhí)行軟件的硬件,可以隱含包括而不限于數(shù)字信號(hào)處理器(“DSP”)硬件、用于存儲(chǔ)軟件的只讀存儲(chǔ)器(“ROM”)、隨機(jī)存取存儲(chǔ)器(“RAM”)、以及非易失性存儲(chǔ)器。也可以包括常規(guī)的或是定制的其他的硬件。類似地,附圖所示的任何開關(guān)只是概念上的。可以通過編程邏輯的操作、通過專用邏輯、通過程序控制與專用邏輯的交互、或者甚至以手動(dòng)方式來(lái)實(shí)現(xiàn)這些開關(guān)的功能,如從上下文中可更加明確地理解的,具體的技術(shù)是可以由實(shí)現(xiàn)者來(lái)選擇的。在本文的權(quán)利要求中,以用于執(zhí)行指定功能的裝置的形式表示的任何元件旨在包括執(zhí)行該功能的任何方式,例如包括a)執(zhí)行該功能的電路元件的組合,或b)任何形式的軟件(因此包括固件、微碼等等),與用于執(zhí)行該軟件的適當(dāng)電路相結(jié)合以執(zhí)行該功能。這些權(quán)利要求所限定的發(fā)明在于按照權(quán)利要求所要求的方式,將各個(gè)所闡述的裝置的功能性組合并且集合在一起。因此,認(rèn)為能夠提供這些功能性的任何裝置與這里所示出的裝置等同?,F(xiàn)參見圖1,示出 了說明編碼布置或系統(tǒng)10中使用的本公開的實(shí)施方式的方框圖。編碼布置10包括用戶圖形界面(⑶I) 12,所述用戶圖形界面(⑶I) 12駐留在例如節(jié)點(diǎn)(未示出)上并且可操作地連接到預(yù)處理器14和編碼器16 (如,高級(jí)視頻編碼(AVC)編碼器),編碼器16可操作地連接到下游處理模塊18。在⑶I 12的輸入處接收包含一系列靜止圖像幀的未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容數(shù)據(jù)流。在操作中,⑶I 12向預(yù)處理器14提供對(duì)未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容數(shù)據(jù)流的訪問。使用集成場(chǎng)景檢測(cè)模塊(未示出)的預(yù)處理器14對(duì)接收到的未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容數(shù)據(jù)流中的新場(chǎng)景進(jìn)行檢測(cè),并向GUI 12發(fā)送場(chǎng)景檢測(cè)信號(hào),所述場(chǎng)景檢測(cè)信號(hào)指示需要對(duì)新的畫面組(GOP)進(jìn)行編碼。場(chǎng)景檢測(cè)信號(hào)可以包括時(shí)間戳、指針、同步數(shù)據(jù)等以指示新GOP應(yīng)在何時(shí)何地出現(xiàn)。⑶I 12將未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容和控制數(shù)據(jù)(如,上述的場(chǎng)景檢測(cè)信號(hào)和/或下面討論的附加控制數(shù)據(jù))傳遞給編碼器16。例如,利用從GUI 12接收到的控制數(shù)據(jù),依照運(yùn)動(dòng)圖像專家組(MEPG)所開發(fā)的標(biāo)準(zhǔn)而工作的編碼器16將未壓縮數(shù)據(jù)流轉(zhuǎn)換成包含以幀內(nèi)編碼幀(I幀)開始的GOP在內(nèi)的壓縮數(shù)據(jù)流,在幀內(nèi)編碼幀(I幀)中,編碼視頻內(nèi)容數(shù)據(jù)與原始未壓縮靜止圖像的視覺屬性(如,亮度、色度)相對(duì)應(yīng)?;诮M中在先幀的改變來(lái)編碼GOP中的在后幀,如,預(yù)測(cè)編碼幀(P幀)和雙向編碼幀(B幀)。常規(guī)上,因?yàn)榕c描述相鄰靜止圖像之間較大改變所需的數(shù)據(jù)相比,描述新的靜止圖像所需的數(shù)據(jù)更少,所以當(dāng)視頻內(nèi)容數(shù)據(jù)改變較大時(shí),在場(chǎng)景改變處開始新的幀群以及由此的新的I幀。如下面所討論的,本公開關(guān)注于可以當(dāng)新的幀組開始時(shí)改變的時(shí)間最優(yōu)化編碼技術(shù)。在編碼器16壓縮了未壓縮數(shù)據(jù)流后,壓縮數(shù)據(jù)流被傳遞到下游處理模塊18,該處理模塊18對(duì)該壓縮數(shù)據(jù)流執(zhí)行附加處理,以使得該壓縮數(shù)據(jù)可被存儲(chǔ)(如,在硬盤驅(qū)動(dòng)器(HDD)、數(shù)字視頻碟(DVD)、高分辨率數(shù)字視頻碟(HD-DVD)等中)、在媒體上(如,無(wú)線地、在互聯(lián)網(wǎng)上、通過廣域網(wǎng)(WAN)或局域網(wǎng)(LAN)等)傳輸、或(如,在影院中、在數(shù)字顯示器(如,等離子體顯示器、IXD顯示器、LCOS顯示器、DLP顯示器、CRT顯示器)上等)顯示。現(xiàn)參見圖2,示出了依照本公開的示例性編碼器布置16的方框圖。編碼器布置16包括可操作地連接到多個(gè)群22-26的群管理器20。每一個(gè)群22-26包含多個(gè)節(jié)點(diǎn)28-32,每一個(gè)節(jié)點(diǎn)28-32包含多個(gè)中央處理單元(CPU)。在操作中,群管理器20從⑶I 12接收未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容和控制數(shù)據(jù),并且還可從群22-26中的節(jié)點(diǎn)28-32接收反饋數(shù)據(jù)。如下面要進(jìn)一步詳細(xì)討論的,基于控制數(shù)據(jù)以及任何所提供的反饋數(shù)據(jù),群管理器20將未壓縮運(yùn)動(dòng)圖像內(nèi)容分段成幀組,并將所述幀組傳遞至群22-26中的節(jié)點(diǎn)28-32?,F(xiàn)在參考圖3,示出了常規(guī)的編碼工作流程40。常規(guī)的編碼工作流程包括群管理器20接收未壓縮運(yùn)動(dòng)圖像內(nèi)容,并基于控制數(shù)據(jù)(如,預(yù)處理器14產(chǎn)生的場(chǎng)景檢測(cè)信號(hào))將該未壓縮運(yùn)動(dòng)圖像內(nèi)容分段41成場(chǎng)景(a-i)。在分段后,群管理器20可向群22-26提供場(chǎng)景(a-i),并且群22-26可以對(duì)場(chǎng)景(a-i)執(zhí)行多編碼通路。例如,第一編碼通路43可以包括將每一個(gè)場(chǎng)景提供給群22-26的不同節(jié)點(diǎn)28-32,因而每一個(gè)節(jié)點(diǎn)28-32可以分析所分配的場(chǎng)景(a-i)的復(fù)雜度(如,場(chǎng)景幀之間的運(yùn)動(dòng)、幀之間的顏色變化等)。中間處理44可以包括群22的一個(gè)節(jié)點(diǎn)28將第一編碼通路43的結(jié)果聚集到單個(gè)日志文件或元數(shù)據(jù)文件中。中間處理44還可包括附加處理,例如但不限于,基于節(jié)點(diǎn)28從群管理器20接收到的指令來(lái)格式化調(diào)整。之后,在第二編碼通路46期間,群管理器將每一個(gè)場(chǎng)景(a-i)連同元數(shù)據(jù)文件和任何附加的指令一起提供給群22-24的不同節(jié)點(diǎn)28-32,因而每一個(gè)節(jié)點(diǎn)28-32可以依照元數(shù)據(jù)和任何附加指令處理所分配的場(chǎng)景以產(chǎn)生針對(duì)所分配場(chǎng)景的AVC文件。然后可將AVC文件聚集到包含壓縮運(yùn)動(dòng)圖像視頻內(nèi)容的已編碼文件48中,如上所述,所述壓縮運(yùn)動(dòng)圖像視頻內(nèi)容可被傳遞到下游處理模塊18以供進(jìn)一步處理。應(yīng)該意識(shí)到,由于視頻內(nèi)容的隨機(jī)特性,場(chǎng)景可能會(huì)具有可變的場(chǎng)景長(zhǎng)度或大小。與較短的場(chǎng)景相比,較長(zhǎng)的場(chǎng)景很可能花費(fèi)更長(zhǎng)的時(shí)間來(lái)通過編碼通路。此外,在完成較長(zhǎng)場(chǎng)景的編碼通路從而所有的場(chǎng)景可以進(jìn)行下一個(gè)編碼通路之前,較長(zhǎng)的場(chǎng)景可能一直需要處理較短場(chǎng)景的節(jié)點(diǎn)等待并進(jìn)入待機(jī)模式,從而浪費(fèi)寶貴的處理資源并降低了處理效率。因此,常規(guī)的并行場(chǎng)景處理途徑減慢了當(dāng)前最前沿編碼過程的吞吐量?,F(xiàn)返回圖3,進(jìn)一步示出了常規(guī)并行場(chǎng)景處理途徑的缺陷。場(chǎng)景(a-i)可以具有可變長(zhǎng)度。例如,場(chǎng)景(i)比場(chǎng)景(C)長(zhǎng),S卩,比場(chǎng)景(C)具有更多的幀。此外,如圖所示,如果由單個(gè)節(jié)點(diǎn)執(zhí)行中間處理44,那么在可以開始中間處理44之前,必須完成第一編碼通路43。因此,場(chǎng)景(i)的長(zhǎng)度減慢了編碼工作流程40的吞吐量?,F(xiàn)參見圖4,示出了依照本公開的編碼工作流程50。編碼工作流程50包括群管理器20接收未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容,并基于控制數(shù)據(jù)(例如但不限于由預(yù)處理器14產(chǎn)生的場(chǎng)景檢測(cè)信號(hào))將該未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容分段52成場(chǎng)景(a-i)。如以下將更詳細(xì)討論的,在將未壓縮運(yùn)動(dòng)圖像視頻內(nèi)容分段成場(chǎng)景后,群管理器20還可在在開始編碼通路56之前基于例如GOP類型和GOP大小來(lái)切分54場(chǎng)景(a_i)。優(yōu)選地,還可切分場(chǎng)景中的一些以提高所有場(chǎng)景(a-i)通過編碼通路56 (即,第一編碼通路58、中間處理60和第二編碼通路62)的吞吐量。如圖4所述,可認(rèn)為場(chǎng)景(a、b和e)具有“平均”長(zhǎng)度,認(rèn)為場(chǎng)景(c、f和h)具有“短的”長(zhǎng)度以及認(rèn)為場(chǎng)景(d、g和i)具有“長(zhǎng)的”長(zhǎng)度。如上討論的,較長(zhǎng)的場(chǎng)景(d、g和i)很可能放慢所有場(chǎng)景(a-i)通過編碼通路56的吞吐量。因此,為了提高吞吐量,群管理器20或GUI 12還可切分54較長(zhǎng)的場(chǎng)景(d、g和i)。例如,可將場(chǎng)景(d、g和i)切分成兩段(C^d2 ;gl、g2以及ipi2),其中,一段具有近似平均的長(zhǎng)度(即,(12、&和i2),而另一段具有優(yōu)選地不大于平均長(zhǎng)度的可變長(zhǎng)度(即,Clpg1和^)。應(yīng)該注意到,還可將超過平均長(zhǎng)度的場(chǎng)景段切分成更小的場(chǎng)景段。在切分場(chǎng)景54后,群管理器還可在向群22-26提供場(chǎng)景之前將剩余段(即,Cl1, gl和I1)與較短長(zhǎng)度段(c、f和h)編組。由于群22-26的節(jié)點(diǎn)28-32 應(yīng)該大約在同時(shí)完成對(duì)所分配場(chǎng)景(即,a、b和e)、切分后的場(chǎng)景段(d2、g2和i2)、或場(chǎng)景與切分后的場(chǎng)景段的編組(ddPC、gjPf、以及ijPh)的編碼通路,所以場(chǎng)景的切分和編組(a、b、(I1和C、d2、e、g1和f、g2、I1和h、以及i2)提高了場(chǎng)景通過編碼通路42的吞吐量。例如,第一編碼通路58可以包括將每一個(gè)場(chǎng)景(即,a、b和e)、切分后的場(chǎng)景段(d2、g2和i2)、或場(chǎng)景與切分后的場(chǎng)景段的編組W1與c、gl與f以及I1與h)并行地提供給群22-26的不同節(jié)點(diǎn)28-32,從而每一個(gè)節(jié)點(diǎn)28-32可分析所分配的場(chǎng)景(即,a、b和e)、切分后的場(chǎng)景段(d2、g2和i2)或場(chǎng)景與切分后的場(chǎng)景段的編組W1和c、gl和f、以及I1和h)的復(fù)雜度。中間處理60可以包括群22的一個(gè)節(jié)點(diǎn)28將第一編碼通路58的結(jié)果聚集到單個(gè)日志文件或元數(shù)據(jù)文件中。中間處理60還可以包括附加處理,例如但不限于,基于節(jié)點(diǎn)28從群管理器20接收到的指令來(lái)格式化調(diào)整。之后,在第二編碼通路62期間,群管理器20將每一個(gè)場(chǎng)景(即,a、b和e)、切分后的場(chǎng)景段(d2、g2和i2)或場(chǎng)景與切分后的場(chǎng)景段的編組W1和c、gl和f、以及I1和h)連同元數(shù)據(jù)文件和任何附加指令一起并行地提供給群22-24的不同節(jié)點(diǎn)28-32,因而每一個(gè)節(jié)點(diǎn)28-32可以依照元數(shù)據(jù)和任何附加指令處理所分配的場(chǎng)景以產(chǎn)生針對(duì)所分配場(chǎng)景的AVC文件。然后可將AVC文件聚集到包含壓縮運(yùn)動(dòng)圖像視頻內(nèi)容的已編碼文件64中,如上所述,所述壓縮運(yùn)動(dòng)圖像視頻內(nèi)容可被傳遞到下游處理模塊18以供進(jìn)一步處理。應(yīng)該意識(shí)到,場(chǎng)景的切分和編組克服了當(dāng)對(duì)具有可變場(chǎng)景長(zhǎng)度或大小的場(chǎng)景的視頻內(nèi)容進(jìn)行編碼時(shí)會(huì)遇到的缺陷。通過對(duì)場(chǎng)景進(jìn)行切分和編組,極大地減小了對(duì)長(zhǎng)的場(chǎng)景 進(jìn)行編碼所導(dǎo)致的延遲。這種延遲的減小提高了編碼過程的效率和吞吐量?,F(xiàn)參見圖5,示出了示例性的影片內(nèi)容70。影片內(nèi)容70可以包含任意數(shù)目的場(chǎng)景72-78。每一個(gè)場(chǎng)景可以包含可變數(shù)目的幀(未示出)。現(xiàn)參見圖6,示出了壓縮或編碼后的場(chǎng)景80。壓縮后的場(chǎng)景80包括I幀82、B幀84和P幀86。I幀82包含完全示出該幀所需的所有數(shù)據(jù)?;诮M中在先幀的變化來(lái)編碼B幀84和P幀86。常規(guī)地,編碼器依照預(yù)定的GOP類型或模式對(duì)影片內(nèi)容70編碼,直到達(dá)到預(yù)定的畫面組大小90為止。在這一點(diǎn)上,編碼器產(chǎn)生另一個(gè)I幀,并依照預(yù)定的GOP模式和大小繼續(xù)進(jìn)行編碼過程。例如,一個(gè)預(yù)定的GOP模式可以是I幀之后跟著重復(fù)的B幀、P幀、B幀模式。預(yù)定的GOP大小可以是24幀,以使得每第24幀是I幀。其它GOP模式和大小為本領(lǐng)域技術(shù)人員所知并且被視為本公開的范圍之內(nèi)?,F(xiàn)返回圖2,為了最大程度使用群22-26的節(jié)點(diǎn)28_32,從而使所需的編碼時(shí)間最小,可在群22-26的節(jié)點(diǎn)28-32之間平均劃分影片中所有場(chǎng)景的幀。然而,以任意方式劃分幀都將導(dǎo)致編碼性能受損,因?yàn)榕c在任意位置增加場(chǎng)景的子劃分可以引入比最優(yōu)必要I幀更多的I幀,所述最優(yōu)必要I幀需要以最少量的編碼信息再循環(huán)來(lái)保留和存儲(chǔ)所有畫面信息。因此,引入不必要的I幀增大了比特率以及所生成的視頻流的文件大小。因此,編碼后的文件不是最優(yōu)的文件大小。現(xiàn)參見圖6,由于GOP類型88和GOP大小90是已知的并且在整個(gè)編碼過程中保持恒定,所以可以預(yù)測(cè)可充當(dāng)自動(dòng)切分場(chǎng)景的理想位置的特定幀。使用這種途徑,可以產(chǎn)生具有最佳編碼性能和最優(yōu)文件大小的編碼后的文件。如上討論的,常規(guī)地,長(zhǎng)的場(chǎng)景要求所分配的節(jié)點(diǎn)對(duì)整個(gè)場(chǎng)景編碼。然而,依照本公開,可在長(zhǎng)的場(chǎng)景內(nèi)已知的I幀位置處進(jìn)一步切分該場(chǎng)景。然后,可將切分后的段并行地提供給不同的節(jié)點(diǎn),從而可以在更短的時(shí)間周期內(nèi)編碼該場(chǎng)景。按照本公開,預(yù)測(cè)或確定最優(yōu)場(chǎng)景中斷以最優(yōu)化并行處理的方法可包括下面的步驟。在編碼期間,壓縮者或用戶選擇GOP大小90和GOP類型88??梢越Y(jié)合場(chǎng)景邊界標(biāo)識(shí)使用GOP大小90和類型88來(lái)確定切分哪一個(gè)場(chǎng)景和應(yīng)在何處發(fā)生切分?;诮y(tǒng)計(jì)數(shù)據(jù)(包括但不限于場(chǎng)景長(zhǎng)度、每一個(gè)場(chǎng)景中GOP的數(shù)目、以及可用的群22-26和/或節(jié)點(diǎn)28-32的數(shù)目),可以通過算法或過程來(lái)產(chǎn)生歸一化分布。換言之,優(yōu)選地,所有的節(jié)點(diǎn)都將有實(shí)質(zhì)上相等數(shù)目的GOP要處理。
確定在何處切分或中斷場(chǎng)景的一個(gè)示例性的算法或過程可以包括I.在接收到 的不包含淡變(fade)和漸隱(dissolve)的視頻內(nèi)容(如,故事片或影片)中獲得原始的場(chǎng)景數(shù)目。2.在接收到的將被編碼的視頻內(nèi)容內(nèi)獲得幀的數(shù)目。3.針對(duì)每一個(gè)場(chǎng)景計(jì)算編碼以上幀所需的GOP數(shù)(Go)。4.根據(jù)場(chǎng)景的給定等級(jí)長(zhǎng)度和數(shù)目所需的GOP數(shù),來(lái)創(chuàng)建直方圖分布。5.采用該直方圖并創(chuàng)建該直方圖的密度曲線。6.找到該密度曲線的均值、中值、最大值、最小值和標(biāo)準(zhǔn)差。換言之,針對(duì)來(lái)自群的平衡且最優(yōu)化編碼吞吐量,每節(jié)點(diǎn)應(yīng)包含的平均GOP數(shù)。7.假定密度曲線是正態(tài)曲線,即,對(duì)于不同場(chǎng)景大小該曲線符合正態(tài)曲線族,則可以應(yīng)用68-95-99. 7%規(guī)則(又名正態(tài)分布規(guī)則)來(lái)計(jì)算出位于第一標(biāo)準(zhǔn)差68%之上的所有場(chǎng)景并在該等級(jí)所指示的GOP數(shù)目處將這些場(chǎng)景切分成更小的場(chǎng)景。曲線高度(或標(biāo)準(zhǔn)差)可以取決于可用節(jié)點(diǎn)的數(shù)目??捎霉?jié)點(diǎn)數(shù)目越大,標(biāo)準(zhǔn)差越小,并從而場(chǎng)景可以包含的GOP數(shù)目越小。應(yīng)該注意到,淡變和漸隱可以根據(jù)編碼內(nèi)容需要附加的I幀,并從而具有比通常更小或不同的GOP大小。這是由于淡變和漸隱是在過渡幀之間具有可能地有限相似性的更復(fù)雜場(chǎng)景。使用更小或不同的GOP大小可引入比最優(yōu)必要的更多的I幀。因此,特別當(dāng)涉及淡變和漸隱時(shí),最優(yōu)化編碼時(shí)間的附加途徑是通過以下方式來(lái)實(shí)現(xiàn)的根據(jù)場(chǎng)景所包含的幀數(shù)的增大的長(zhǎng)度,來(lái)布置場(chǎng)景。然后,按照?qǐng)鼍伴L(zhǎng)度的順序來(lái)分布場(chǎng)景。換言之,在較短場(chǎng)景之前將包含淡變和漸隱的較長(zhǎng)場(chǎng)景或復(fù)雜場(chǎng)景提供給群或節(jié)點(diǎn)。這使得較長(zhǎng)場(chǎng)景可以在早期開始編碼過程,而留下短的場(chǎng)景在其它節(jié)點(diǎn)變得可用時(shí)利用并行處理?,F(xiàn)參見圖7,示出了說明依照本公開的編碼處理100的流程圖。最初,在步驟102處,編碼布置10輸入或接收視頻內(nèi)容,例如但不限于長(zhǎng)片(feature film)內(nèi)容。接下來(lái),在步驟104,編碼布置10基于所輸入的視頻內(nèi)容拉產(chǎn)生視頻內(nèi)容數(shù)據(jù)。示例性的視頻內(nèi)容數(shù)據(jù)可包括但不限于場(chǎng)景和/或連續(xù)鏡頭檢測(cè)、淡變和/或漸隱檢測(cè)、直方圖產(chǎn)生、基于場(chǎng)景顏色的分類(如,著暗色和/或紅色的場(chǎng)景通常處理起來(lái)更復(fù)雜)、類似場(chǎng)景的識(shí)別、幀分類(如,具有很多移動(dòng)對(duì)象的有噪幀,如樹葉被吹動(dòng)的樹)、縮略圖產(chǎn)生等??梢杂深A(yù)處理器14或由用戶經(jīng)由⑶I 12來(lái)產(chǎn)生視頻內(nèi)容數(shù)據(jù)。之后,在步驟106,編碼器布置10詢問用戶是否愿意使用時(shí)間最優(yōu)編碼對(duì)視頻內(nèi)容進(jìn)行壓縮和編碼。如果不愿意,則編碼布置10在步驟116發(fā)起常規(guī)的、為本領(lǐng)域技術(shù)人員所知的群編碼過程。如果想要進(jìn)行時(shí)間最優(yōu)編碼,則編碼布置10在步驟108基于場(chǎng)景和/或連續(xù)鏡頭檢測(cè)以及淡變和/或漸隱檢測(cè)來(lái)計(jì)算并收集統(tǒng)計(jì)數(shù)據(jù)。接下來(lái),在步驟110,編碼布置10處理統(tǒng)計(jì)數(shù)據(jù)以確定視頻內(nèi)容中給出的場(chǎng)景是否包含淡變和/或漸隱。如果場(chǎng)景不包含淡變或漸隱,編碼布置在步驟112進(jìn)一步確定場(chǎng)景是短場(chǎng)景、平均場(chǎng)景、還是長(zhǎng)場(chǎng)景,并且基于GOP大小和GOP類型適當(dāng)切分該場(chǎng)景。如果場(chǎng)景的確包含淡變或漸隱,則編碼布置在步驟114依照?qǐng)鼍暗拈L(zhǎng)度來(lái)組織包含淡變或漸隱的場(chǎng)景。之后,編碼布置10如上討論的讀具有淡變和/或漸隱的場(chǎng)景、切分后的場(chǎng)景和未切分的場(chǎng)景進(jìn)行編組,并在步驟116將場(chǎng)景分發(fā)給群22-26的節(jié)點(diǎn)28-32以依照本公開進(jìn)行時(shí)間最優(yōu)化編碼。雖然在此詳細(xì)地示出和描述了加入本發(fā)明教導(dǎo)的實(shí)施方式,然而本領(lǐng)域技術(shù)人員可以輕易地想到仍然加入這些教導(dǎo)的很多其它不同實(shí)施方式。已經(jīng)描述了使用智能邊緣設(shè)備來(lái)打包和傳輸基本文件、元數(shù)據(jù)文件和業(yè)務(wù)數(shù)據(jù)文件的系統(tǒng)和方法的優(yōu)選實(shí)施方式,應(yīng)該注意到,本領(lǐng)域技術(shù)人員在以上教導(dǎo)的啟示之下能夠做出修改和變型。因此應(yīng)該理解,在所附權(quán)利要求所概括的本發(fā)明的范圍之內(nèi),可以對(duì)所公開的本發(fā)明的具體實(shí)施方式
進(jìn)行改 變。
權(quán)利要求
1.一種編碼視頻內(nèi)容的方法(100),所述方法包括以下步驟 接收(102)視頻內(nèi)容; 將所述視頻內(nèi)容分段(108)成多個(gè)場(chǎng)景; 檢測(cè)(112)場(chǎng)景是否具有較短長(zhǎng)度、平均長(zhǎng)度和較長(zhǎng)長(zhǎng)度之一; 將具有較長(zhǎng)長(zhǎng)度的場(chǎng)景切分(112)成第一場(chǎng)景段和第二場(chǎng)景段,所述第一場(chǎng)景段具有平均長(zhǎng)度,所述第二場(chǎng)景段不超過平均長(zhǎng)度; 將所述第二場(chǎng)景段與具有較短長(zhǎng)度的場(chǎng)景編組(54);以及 并行地編碼(116)已切分和編組的場(chǎng)景。
2.根據(jù)權(quán)利要求I的方法,其中,切分的步驟還包括以下步驟 基于所述場(chǎng)景中的畫面組特性來(lái)切分(112)所述場(chǎng)景。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述畫面組特性是畫面組類型(88)。
4.根據(jù)權(quán)利要求2所述的方法,其中,所述畫面組特性是畫面組大小(90)。
5.根據(jù)權(quán)利要求I的方法,其中,編碼的步驟還包括以下步驟 與所述第一場(chǎng)景段并行地以及與平均長(zhǎng)度的場(chǎng)景并行地對(duì)編組后的第二場(chǎng)景段和較短長(zhǎng)度的場(chǎng)景進(jìn)行編碼(56)。
6.根據(jù)權(quán)利要求I的方法,其中,檢測(cè)的步驟還包括以下步驟 檢測(cè)(110)場(chǎng)景是否包含淡變效果和漸隱效果之一。
7.根據(jù)權(quán)利要求6的方法,其中,編碼的步驟還包括以下步驟 在并行地對(duì)切分后的場(chǎng)景進(jìn)行編碼之前,發(fā)起對(duì)包含淡變效果和漸隱效果之一的場(chǎng)景的編碼(116)。
8.一種用于編碼視頻內(nèi)容的設(shè)備(10),所述設(shè)備包括 用于接收視頻內(nèi)容的裝置(12); 用于將所述視頻內(nèi)容分段成多個(gè)場(chǎng)景的裝置(12、20); 用于檢測(cè)場(chǎng)景是否具有較短長(zhǎng)度、平均長(zhǎng)度和較長(zhǎng)長(zhǎng)度之一的裝置(12、20); 用于將具有較長(zhǎng)長(zhǎng)度的場(chǎng)景切分成第一場(chǎng)景段和第二場(chǎng)景段的裝置(12、20),所述第一場(chǎng)景段具有平均長(zhǎng)度,所述第二場(chǎng)景段不超過平均長(zhǎng)度; 用于將所述第二場(chǎng)景段與具有較短長(zhǎng)度的場(chǎng)景編組的裝置(54);以及 用于并行地編碼已切分和編組的場(chǎng)景的裝置(16)。
9.根據(jù)權(quán)利要求8所述的設(shè)備,其中,用于切分的裝置還包括 用于基于所述場(chǎng)景中的畫面組特性來(lái)切分所述場(chǎng)景的裝置(12、20)。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其中,其中,所述畫面組特性是畫面組類型(88)。
11.根據(jù)權(quán)利要求9所述的設(shè)備,其中,所述畫面組特性是畫面組大小(90)。
12.根據(jù)權(quán)利要求8所述的設(shè)備,其中,用于編碼的裝置還包括 用于與所述第一場(chǎng)景段并行地以及與平均長(zhǎng)度的場(chǎng)景并行地對(duì)編組后的第二場(chǎng)景段和較短長(zhǎng)度的場(chǎng)景進(jìn)行編碼的裝置(22-32)。
13.根據(jù)權(quán)利要求8所述的設(shè)備,其中,用于檢測(cè)的裝置還包括 用于檢測(cè)場(chǎng)景是否包含淡變效果和漸隱效果之一的裝置(12、20)。
14.根據(jù)權(quán)利要求13所述的設(shè)備,其中,用于編碼的裝置還包括 用于在并行地對(duì)切分后的場(chǎng)景進(jìn)行編碼之前,發(fā)起對(duì)包含淡變效果和漸隱效果之一的場(chǎng)景的編碼的裝置(12、20)。
全文摘要
本公開關(guān)注一種進(jìn)行時(shí)間最優(yōu)化編碼的系統(tǒng)(10)和方法(100)。時(shí)間最優(yōu)化編碼通過在編碼質(zhì)量犧牲最小或不犧牲編碼質(zhì)量的情況下使時(shí)間密集型編碼并行化,使多個(gè)編碼節(jié)點(diǎn)(28-32)或群(22-26)的使用最大化。從而,減少了完成時(shí)間密集型編碼所需的時(shí)間,并提高了通過系統(tǒng)(10)的多個(gè)編碼的有效吞吐量。
文檔編號(hào)H04N21/4408GK102833620SQ20121027831
公開日2012年12月19日 申請(qǐng)日期2007年6月14日 優(yōu)先權(quán)日2007年6月14日
發(fā)明者阿南德·卡普爾 申請(qǐng)人:湯姆森許可貿(mào)易公司