一種h264視頻幀率的轉換方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術領域,特別涉及一種H264視頻幀率的轉換方法及裝置。
【背景技術】
[0002]經(jīng)過近幾年的多媒體處理技術的發(fā)展,幀率轉換不僅用來在視頻格式和標準之間進行轉換,也用來增強視頻的整體質量,更高的幀率將成為用來提供更高質量家庭視頻的重要組成,然而,現(xiàn)有的視頻中有些還不能在更高的幀率下使用,因此,幀率轉換變得非常必要。對于多種不同編碼標準的視頻來說,如何有針對性地進行幀率轉換,成為目前多媒體領域十分重要的研宄課題。
【發(fā)明內容】
[0003]本發(fā)明提供一種H264視頻幀率的轉換方法及裝置,用以實現(xiàn)H264標準的視頻幀的幀率轉換。
[0004]本發(fā)明提供一種H264視頻幀率的轉換方法,包括:
[0005]獲取單位時長內的H264視頻幀;
[0006]對所述單位時長內的H264視頻幀進行解碼,獲得解碼后的RAW視頻幀;
[0007]對所述RAW視頻幀的當前幀率進行等間隔轉換操作。
[0008]在一個實施例中,所述轉換操作包括增幀操作或減幀操作。
[0009]在一個實施例中,所述轉換操作包括減幀操作時,所述對所述單位時長內的H264視頻幀進行解碼之前,所述方法還包括:
[0010]根據(jù)所述H264視頻幀的類別,將所述H264視頻幀中的I幀進行標記,獲得帶有標記的視頻幀;
[0011]所述對所述RAW視頻幀的當前幀率進行等間隔轉換操作,包括:
[0012]確定所述RAW視頻幀需要減少的幀數(shù);
[0013]根據(jù)所述需要減少的幀數(shù)以及所述RAW視頻幀的當前幀率,確定丟棄視頻幀的第一間隔;
[0014]按照所述第一間隔和所述帶有標記的視頻幀,確定需要丟棄的視頻幀;
[0015]丟棄所述需要丟棄的視頻幀。
[0016]在一個實施例中,所述按照所述第一間隔和所述帶有標記的視頻幀,確定需要丟棄的視頻幀,包括:
[0017]按照所述第一間隔,確定備選視頻幀;
[0018]判斷所述備選視頻幀是否為所述帶有標記的視頻幀;
[0019]當所述備選視頻幀是所述帶有標記的視頻幀時,將所述備選視頻幀的下一個視頻幀確定為需要丟棄的視頻幀;
[0020]當所述備選視頻幀不是所述帶有標記的視頻幀時,將所述備選視頻幀確定為需要丟棄的視頻幀。
[0021]在一個實施例中,所述轉換操作包括增幀操作時,所述對所述RAW視頻幀的當前幀率進行等間隔轉換操作,包括:
[0022]確定所述RAW視頻幀需要增加的幀數(shù);
[0023]根據(jù)所述需要增加的幀數(shù)以及所述RAW視頻幀的當前幀率,確定增加視頻幀的第二間隔;
[0024]按照所述第二間隔,確定在所述RAW視頻幀中插入視頻幀的位置;
[0025]復制所述位置的前一個RAW視頻幀,并將所述復制后的RAW視頻幀插入到所述位置中。
[0026]本發(fā)明實施例的一些有益效果可以包括:
[0027]該技術方案通過分別對單位時長內的H264視頻幀進行解碼,進而對解碼后的RAW視頻幀進行幀率轉換,實現(xiàn)了 H264標準的視頻幀的幀率轉換,從而滿足視頻對不同幀率的要求。
[0028]本發(fā)明提供一種H264視頻幀率的轉換裝置,包括:
[0029]獲取模塊,用于獲取單位時長內的H264視頻幀;
[0030]解碼模塊,用于對所述單位時長內的H264視頻幀進行解碼,獲得解碼后的RAW視頻幀;
[0031]轉換模塊,用于對所述RAW視頻幀的當前幀率進行等間隔轉換操作。
[0032]在一個實施例中,所述裝置還包括:
[0033]標記模塊,用于所述轉換操作包括減幀操作時,根據(jù)所述H264視頻幀的類別,將所述H264視頻幀中的I幀進行標記,獲得帶有標記的視頻幀;
[0034]所述轉換模塊包括:
[0035]第一確定子模塊,用于確定所述RAW視頻幀需要減少的幀數(shù);
[0036]第二確定子模塊,用于根據(jù)所述需要減少的幀數(shù)以及所述RAW視頻幀的當前幀率,確定丟棄視頻幀的第一間隔;
[0037]第三確定子模塊,用于按照所述第一間隔和所述帶有標記的視頻幀,確定需要丟棄的視頻幀;
[0038]丟棄子模塊,用于丟棄所述需要丟棄的視頻幀。
[0039]在一個實施例中,所述第三確定子模塊包括:
[0040]第一確定單元,用于按照所述第一間隔,確定備選視頻幀;
[0041]判斷單元,用于判斷所述備選視頻幀是否為所述帶有標記的視頻幀;
[0042]第二確定單元,用于當所述備選視頻幀是所述帶有標記的視頻幀時,將所述備選視頻幀的下一個視頻幀確定為需要丟棄的視頻幀;
[0043]第三確定單元,用于當所述備選視頻幀不是所述帶有標記的視頻幀時,將所述備選視頻幀確定為需要丟棄的視頻幀。
[0044]在一個實施例中,所述轉換模塊包括:
[0045]第四確定子模塊,用于所述轉換操作包括增幀操作時,確定所述RAW視頻幀需要增加的幀數(shù);
[0046]第五確定子模塊,用于根據(jù)所述需要增加的幀數(shù)以及所述RAW視頻幀的當前幀率,確定增加視頻幀的第二間隔;
[0047]第六確定子模塊,用于按照所述第二間隔,確定在所述RAW視頻幀中插入視頻幀的位置;
[0048]插入子模塊,用于復制所述位置的前一個RAW視頻幀,并將所述復制后的RAW視頻幀插入到所述位置中。
[0049]本發(fā)明實施例的一些有益效果可以包括:
[0050]該裝置通過分別對單位時長內的H264視頻幀進行解碼,進而對解碼后的RAW視頻幀進行幀率轉換,實現(xiàn)了 H264標準的視頻幀的幀率轉換,從而滿足視頻對不同幀率的要求。
[0051]本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現(xiàn)和獲得。
[0052]下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。
【附圖說明】
[0053]附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
[0054]圖I為本發(fā)明實施例中一種H264視頻幀率的轉換方法的流程圖;
[0055]圖2為本發(fā)明實施例中一種H264視頻幀率的減幀方法的流程圖;
[0056]圖3為本發(fā)明實施例中一種H264視頻幀率的減幀方法中步驟S26的流程圖;
[0057]圖4為本發(fā)明實施例中一種H264視頻幀率的轉換方法中步驟S13的流程圖;
[0058]圖5為本發(fā)明實施例中一種H264視頻幀率的轉換裝置的框圖;
[0059]圖6為本發(fā)明實施例中一種H264視頻幀率的轉換裝置中轉換模塊53的框圖;
[0060]圖7為本發(fā)明實施例中一種H264視頻幀率的轉換裝置中第三確定子模塊533的框圖;
[0061]圖8為本發(fā)明實施例中一種H264視頻幀率的轉換裝置中轉換模塊53的框圖。
【具體實施方式】
[0062]以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0063]圖I為本發(fā)明實施例中的一種H264視頻幀率的轉換方法的流程圖,如圖I所示,包括以下步驟S11-S13 :
[0064]步驟SI I,獲取單位時長內的H264視頻幀。
[0065]其中,單位時長如I秒。
[0066]步驟S12,對單位時長內的H264視頻幀進行解碼,獲得解碼后的RAW視頻幀。
[0067]步驟S13,對RAW視頻幀的當前幀率進行等間隔轉換操作。
[0068]將單位時長內的H264視頻幀進行幀率轉換完成后,再對其他單位時長內的H264視頻幀進行幀率轉換,轉換的步驟與上述步驟S11-S13相同,直至將全部的H264視頻幀進行幀率轉換。
[0069]采用本發(fā)明實施例的技術方案,通過分別對單位時長內的H264視頻幀進行解碼,進而對解碼后的RAW視頻幀進行幀率轉換,實現(xiàn)了 H264標準的視頻幀的幀率轉換,從而滿足視頻對不同幀率的要求。
[0070]上述實施例中,轉換操作包括增幀操作或減幀操作。對于不同的轉換操作,對RAW視頻幀的當前幀率進行轉換的方法也有所不同。下面針對不同的轉換操作分別進行說明。
[0071]當轉換操作包括減幀操作時,由于H264視頻幀中包含I幀、B幀、P幀,其中,I幀(I frame)又稱為內部畫面(intra picture),I幀通常是每個GOP (MPEG所使用的一種視頻壓縮技術)的第一個幀,經(jīng)過適度地壓縮,做為隨機訪問的參考點,可以當成圖像,因此進行減幀操作時不能丟棄I幀,但解碼后得到的RAW視頻幀中沒有I、B、P幀的區(qū)別,因此,在進行減幀操作時,需要預先將其中的I幀標記出來。圖2所示為本發(fā)明實施例中一種H264視頻幀率的減幀方法的流程圖,如圖2所示,包括以下步驟S21-S27 :
[0072]步驟S21,獲取單位時長內的H264視頻幀。
[0073]步驟S22,根據(jù)H264視頻幀的類別,將H264視頻幀中的I幀進行標記,獲得帶有標記的視頻幀。
[0074]步驟S23,對單位時長內的H264視頻幀進行解碼,獲得解碼后的RAW視頻幀。
[0075]步驟S24,確定RAW視頻幀需要減少的幀數(shù)。例如,H264視頻幀的當前幀率為m,要求轉換后的幀率為n,其中,m>n,那么需要減少的幀數(shù)為m_n。
[0076]步驟S25,根據(jù)需要減少的幀數(shù)以及RAW視頻幀的當前幀率,確定丟棄視頻幀的第一間隔。由于進行減幀操作時是按照等間隔丟棄視頻幀的,因此可根據(jù)需要減少的幀數(shù)和當前幀率,確定出丟棄視頻幀的間隔。
[0077]步驟S26,按照第一間隔和帶有標記的視頻幀,確定需要丟棄的視頻幀。
[0078]步驟S27,丟棄需要丟棄的視頻幀。
[0079]上述實施例中,如圖3所示,步驟S26可以實施為以下步驟S261-S264 :
[0080]步驟S261,按照第一間隔,確定備選視頻幀。
[0081]步驟S262,判斷備選視頻幀是否為帶有標記的視頻幀;如果備選視頻幀是帶有標記的視頻幀,則執(zhí)行步驟S263 ;