一種視頻碼流輸出控制裝置和方法
【技術(shù)領域】
[0001]本發(fā)明涉及視頻技術(shù)領域,特別是涉及一種視頻碼流輸出控制裝置和方法。
【背景技術(shù)】
[0002]目前普通的民用攝像機中的視頻處理芯片,例如海思3518芯片(Hi3518),集成了新一代ISP、優(yōu)化后的編碼前圖像處理算法和新一代H.264編碼器。同時采用先進低功耗工藝和內(nèi)部的低功耗架構(gòu)設計,具有低碼率、高圖像質(zhì)量、低功耗的特點。
[0003]然而,由于硬件芯片輸出多碼流受制于硬件的性能,采用上述普通芯片最大只能輸出一路H.264壓縮視頻,如果利用硬件多碼流,必須降低分辨率和幀率,勢必不能充分利用硬件特性,造成資源浪費。
【發(fā)明內(nèi)容】
[0004]本發(fā)明主要解決的技術(shù)問題是提供一種視頻碼流輸出控制裝置和方法,能夠充分利用芯片的硬件特性,輸出多路不同碼率、不同F(xiàn)PS的碼流,不損壞原有的硬件碼流的性能。
[0005]為解決上述技術(shù)問題,本發(fā)明采用的一個技術(shù)方案是:提供一種視頻碼流輸出控制裝置,用于控制輸出多路不同碼率的視頻碼流,包括:復制模塊,用于接收輸入的視頻文件,并復制生成至少兩份相同的視頻文件;分組模塊,用于將每份視頻文件按傳輸順序分組,每組包含的幀數(shù)據(jù)的數(shù)量相等;處理模塊,用于保持其中一份視頻文件不變,并按照預設的不同規(guī)則,分別刪除其余的每份視頻文件中的任意至少一個幀數(shù)據(jù),使刪除操作后其余每份視頻文件的幀數(shù)據(jù)的數(shù)目均不同,且同一份視頻文件中,每組幀數(shù)據(jù)刪除后數(shù)目相同,每組中刪除的幀數(shù)據(jù)的位置也相同;輸出模塊,用于接收處理模塊處理完成的每份視頻文件,并根據(jù)預設的傳輸順序輸出到播放設備。
[0006]為解決上述技術(shù)問題,本發(fā)明采用的一個技術(shù)方案是:提供一種視頻碼流輸出控制方法,該方法的步驟包括:接收輸入的視頻文件,并復制生成兩份以上相同的視頻文件;將每份視頻文件按傳輸順序分組,每組包含的幀數(shù)據(jù)的數(shù)量相等;保持其中一份視頻文件不變,并按照預設的不同規(guī)則,分別刪除其余的每份視頻文件中的任意至少一個幀數(shù)據(jù),使刪除操作后其余每份視頻文件的幀數(shù)據(jù)的數(shù)目均不同,且同一份視頻文件中,每組幀數(shù)據(jù)刪除后數(shù)目相同,每組中刪除的幀數(shù)據(jù)的位置也相同;接收處理完成的每份視頻文件,并輸出到播放設備。
[0007]區(qū)別于現(xiàn)有技術(shù),本發(fā)明的視頻碼流輸出控制裝置將視頻碼流幀數(shù)據(jù)復用成兩份以上,將每份幀數(shù)據(jù)按照其中的幀數(shù)據(jù)的傳輸順序分為包含相同數(shù)量幀數(shù)據(jù)的幀數(shù)據(jù)組,對其中一份幀數(shù)據(jù)不做處理,對其余的各份幀數(shù)據(jù)進行刪除處理,每份幀數(shù)據(jù)刪除規(guī)則不同,輸出至少2份不同的視頻幀數(shù)據(jù),本發(fā)明能夠充分利用芯片的硬件特性,輸出多路不同碼率、不同F(xiàn)PS的碼流,不損壞原有的硬件碼流的性能。
【附圖說明】
[0008]圖1是本發(fā)明提供的一種視頻數(shù)據(jù)傳輸裝置第一實施方式的結(jié)構(gòu)示意圖;
[0009]圖2是本發(fā)明提供的一種視頻數(shù)據(jù)傳輸裝置第一實施方式中幀數(shù)據(jù)可被接收的情況的坐標示意圖;
[0010]圖3是本發(fā)明提供的一種視頻數(shù)據(jù)傳輸方法第一實施方式的流程示意圖。
【具體實施方式】
[0011]下面結(jié)合【具體實施方式】對本發(fā)明的技術(shù)方案作進一步更詳細的描述。顯然,所描述的實施例僅僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術(shù)人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都應屬于本發(fā)明保護的范圍。
[0012]現(xiàn)在越來越多的人將觀看視頻作為閑暇時刻的娛樂消遣,隨著視頻技術(shù)的發(fā)展,可通過電腦、電視以及移動終端隨時隨地進行觀看相同的視頻內(nèi)容。但是為使同一視頻內(nèi)容的碼流匹配不同的播放終端,需要生成相應碼率的視頻文件,這要求轉(zhuǎn)碼的硬件設備具有較高的性能,需要較高的成本?,F(xiàn)有的海思3518芯片Hi3518被廣泛應用于視頻轉(zhuǎn)碼領域,采用先進低功耗工藝和內(nèi)部的低功耗架構(gòu)設計,在低碼率、高圖像質(zhì)量、低功耗方面持續(xù)引領行業(yè)水平。但是利用海思3518芯片Hi3518進行轉(zhuǎn)碼最終只能輸出一種碼率的視頻碼流,如果想要生成多碼流,則必須降低分辨率和幀率,不能充分利用硬件特性。
[0013]參閱圖1,圖1是本發(fā)明提供的一種視頻碼流輸出控制裝置第一實施方式的結(jié)構(gòu)示意圖。該裝置100包括:復制模塊110、分組模塊120、處理模塊130以及輸出模塊140。視頻文件傳輸?shù)窖b置100中,經(jīng)裝置100處理后,生成多幀率的視頻文件,以適配不同類型的播放終端。傳入后被復制模塊110接收,復制模塊110根據(jù)待生成的幀率的類型,將視頻文件復制生成至少2份,且份數(shù)與待生成的幀數(shù)的類型數(shù)量相等。在本實施方式中復制生成4份視頻文件。分組模塊120將每份視頻文件中的幀數(shù)據(jù)按照傳輸順序分組。視頻文件播放時,是將幀數(shù)據(jù)按傳輸順序一幀一陣傳輸?shù)讲シ沤K端進行播放。在本實施方式中,設定按照幀數(shù)據(jù)的傳輸順序,將連續(xù)的25個幀數(shù)據(jù)設定為一組幀數(shù)據(jù)。每組幀數(shù)據(jù)的數(shù)量可任意設定,在其他實施方式中,也可將連續(xù)的13個或33個幀數(shù)據(jù)分為一組。分組完成后,處理模塊130按照預定的規(guī)則對各份視頻文件幀數(shù)據(jù)進行處理。具體處理步驟是:對復制模塊110復制產(chǎn)生的4份視頻文件中的其中一份不做處理,其余的視頻文件中,同一份視頻文件中,每一組刪除相同數(shù)量且處于相同位置的幀數(shù)據(jù),在不同份的視頻文件中,每組幀數(shù)據(jù)刪除的數(shù)量和位置不同,經(jīng)過刪除處理,最終形成4份幀率不同的視頻文件。由輸出模塊140接收處理完成的四份視頻文件,根據(jù)播放終端的需求將適配播放終端的相應視頻文件發(fā)送到該播放終端。
[0014]區(qū)別于現(xiàn)有技術(shù),本發(fā)明的視頻碼流輸出控制裝置將視頻碼流幀數(shù)據(jù)復用成兩份以上,將每份幀數(shù)據(jù)按照其中的幀數(shù)據(jù)的傳輸順序分為包含相同數(shù)量幀數(shù)據(jù)的幀數(shù)據(jù)組,對其中一份幀數(shù)據(jù)不做處理,對其余的各份幀數(shù)據(jù)進行刪除處理,每份幀數(shù)據(jù)刪除規(guī)則不同,輸出至少2份不同的視頻幀數(shù)據(jù),本發(fā)明能夠充分利用芯片的硬件特性,輸出多路不同碼率、不同F(xiàn)PS的碼流,不損壞原有的硬件碼流的性能。
[0015]參閱圖2,圖2是本發(fā)明提供的一種視頻碼流輸出控制裝置第二實施方式的結(jié)構(gòu)示意圖。該裝置200包括:復制模塊210、分組模塊220、處理模塊230以及輸出模塊240。其中復制模塊210和輸出模塊240與前一實施方式相同,不再贅述。
[0016]分組模塊220包括設定單元221和分組單元222。在本發(fā)明中,視頻文件編解碼采用
H.264標準,它是由ITU-T視頻編碼專家組(VCEG)和IS0/IEC動態(tài)圖像專家組(MPEG)聯(lián)合組成的聯(lián)合視頻組(JVT Joint Video Team)提出的高度壓縮數(shù)字視頻編解碼器標準。設定單元221按照H.264標準編碼標準,將視頻文件的幀數(shù)據(jù)設定為關鍵幀和相對幀兩種類型。按照視頻文件幀數(shù)據(jù)的傳輸順序,兩個關鍵幀之間有多個連續(xù)的相對幀。在本實施方式中,設置兩個關鍵幀之間有12個相對幀,在其他實施方式中,兩個關鍵幀之間可設置其他數(shù)目的相對幀。識別單元221識別視頻文件中所有幀數(shù)據(jù)中的關鍵幀和相對幀,關鍵幀之間排列有多個相對幀,每兩個關鍵幀之間的相對幀的數(shù)量相等。傳輸順序靠后的相對幀是參照傳輸順序靠前的相對幀或前面的關鍵幀生成。分別統(tǒng)計每一份視頻幀數(shù)據(jù)中包含的關鍵幀和相對幀的數(shù)量和位置,然后由分組單元222根據(jù)關鍵幀和相對幀的數(shù)量和位置,將一個關鍵幀和位于兩個關鍵幀之間的多個相對幀分為I個組。本實施方式中,將每一份視頻文件中一個關鍵幀和緊接著該關鍵幀傳輸?shù)南鄬譃镮個組。
[0017]分組完成后,由處理模塊230進行處理。處理模塊230設定刪除幀數(shù)據(jù)中的預設規(guī)貝1J,預設規(guī)則可根據(jù)關鍵幀和相對幀的位置情況進行設定。預設規(guī)則可設定為:給每組幀數(shù)據(jù)中的所述相對幀編號,對每組中的至少2個相對幀進行刪除,且每份視頻文件幀數(shù)據(jù)中每組所述幀數(shù)據(jù)刪除的相對幀數(shù)據(jù)的編號相同,不同份的每組的所述幀數(shù)據(jù)刪除的相對幀的編號不同。在本實施方式中,對每份視頻文件進行編號,編號設為1、2、3、4,對其中編號為1、
2、3的三份視頻文件中的每個組進行編號,編號規(guī)則為份數(shù)-組數(shù),如第一份視頻文件的第三個組的幀數(shù)據(jù)編號為1-3,對編號為4的視頻文件的幀數(shù)據(jù)組不進行編號。對編號完成的幀數(shù)據(jù)組中的每個相對幀進行編號,如第一份視頻文件的第三個組的第五個相對幀數(shù)據(jù)編號為1-3-5。編號完成后,設定刪除1-3視頻文件中每個組的至少一個相對幀數(shù)據(jù)。為保證視頻文件播放的流暢性,不可刪除過多的相對幀數(shù)據(jù)。故在本實施方式中,可設定編號I的視頻文件中,每組幀數(shù)據(jù)刪除編號為4n+l的相對幀,每組包含12個相對幀數(shù)據(jù)時,即刪除每組中編號為1、5、9的相對幀。刪除后形成幀數(shù)不同于編號為4的視頻文件的新視頻文件。同理,在編號為2的視頻文件的每組幀數(shù)據(jù)中,刪除編號為4n+2和4n+3的相對幀,在編號為3的視頻文件的每組幀數(shù)據(jù)中,刪除編號為4n+l、4n+2和4n+3的相對幀,最終生成4種幀率不同的視頻文件由輸出模塊240輸出到播放終端,以適配不同類型的播放終端進行播放。
[0018]區(qū)別于現(xiàn)有技術(shù),本發(fā)明的視頻碼流輸出控制裝置將視頻碼流幀數(shù)據(jù)復用成兩份以上,將每份幀數(shù)據(jù)按照其中的幀數(shù)據(jù)的傳輸順序分為包含相同數(shù)量幀數(shù)據(jù)的幀數(shù)據(jù)組,對其中一份幀數(shù)據(jù)不做處理,對其余的各份幀數(shù)據(jù)進行刪除處理,每份幀數(shù)據(jù)刪除規(guī)則不同,輸出至少2份不同的視頻幀數(shù)據(jù),本發(fā)明能夠充分利用芯片的硬件特性,輸出多路不同碼率、不同F(xiàn)PS的碼流,不損壞