一種異常數據處理方法及裝置的制造方法
【技術領域】
[0001]本發明涉及網絡視頻流處理技術領域,尤其涉及一種基于分段視頻流的異常數據處理方法及裝置。
【背景技術】
[0002]隨著互聯網的飛速發展,基于網絡的視頻傳輸流量也越來越大。在網絡視頻流處理領域的實際運用中,由于分段下載、UDP協議的特性,數據傳輸過程中的丟包、數據突變等,使得亂序、不完整的視頻流存在。而在處理這些分段傳輸的異常視頻流時,如解碼時常用的方法是,將不能正常解碼的異常流直接丟棄,該異常流是指視頻解碼系統不能正常解碼的視頻流,其中也包括由于解碼系統自身原因不能解碼的偽異常流。
[0003]在處理海量分段視頻流時,由于針對某路會話出現異常的分段位置隨機,又由于出現異常是個后知后覺的過程,因此常用的分段視頻流的異常數據處理方法是將所有會話的視頻片段全部完整保存,然后根據異常視頻會話ID去查詢已保存的異常流,以實現線下復現曾經出現的異常現象。
[0004]現有技術不足在于:一方面,由于異常流或是異常現象隨著現有視頻處理系統的不斷完善,屬于小概率事件,而捕獲異常流或是異常現象常用的解決方法為存儲海量分段視頻流數據,因此,對主機存儲空間要求較高;另一方面,捕獲異常流后,由于線上應用場景發生變化,僅僅依靠在線下將異常流作為輸入送至視頻處理系統進行重新處理很難復現異常現象,即便復現異常現象也很難保證和之前丟棄的異常現象完全一致,無法定位造成異常現象的真正原因。
【發明內容】
[0005]本發明實施例提出了一種異常數據處理方法及裝置,以解決現有技術中分段視頻流的異常數據處理方法,對主機存儲空間要求較高,以及異常現象無法保證復現一致性和無法定位原因的技術問題。
[0006]在一個方面,本發明實施例提供了一種異常數據處理方法,其特征在于,包括如下步驟:
[0007]對會話的分段視頻流進行線下解碼監測,判斷當前分段視頻流是否存在解碼異常現象;
[0008]若所述當前分段視頻流存在解碼異常現象,則獲取線上包含所述當前分段視頻流中解碼異常現象所處位置的異常上下文信息;
[0009]根據獲取到的異常上下文信息復現線上所述當前分段視頻流中的異常視頻流。
[0010]在另一個方面,本發明實施例提供了一種異常數據處理裝置,其特征在于,包括:
[0011]線下監測模塊,用于對會話的分段視頻流進行線下解碼監測,判斷當前分段視頻流是否存在解碼異常現象;
[0012]線下獲取模塊,用于若所述當前分段視頻流存在解碼異常現象,則獲取線上包含所述當前分段視頻流中解碼異常現象所處位置的異常上下文信息;
[0013]線下復現模塊,用于根據獲取到的異常上下文信息復現線上所述當前分段視頻流中的異常視頻流。
[0014]有益效果如下:
[0015]本發明實施例所提供的異常數據處理方法及裝置,通過線下識別、捕獲篩選后的異常數據,并進行分析和統計,結合線上實時獲取指定異常會話數據和異常會話上下文信息的方式,減少了異常數據存儲的空間開銷,同時提高了針對異常數據復現和分析的準確性,從而實現了對視頻處理系統自身容錯性的完善。
【附圖說明】
[0016]下面將參照附圖描述本發明的具體實施例,其中:
[0017]圖1示出了本發明實施例中異常數據處理方法的流程示意圖;
[0018]圖2示出了本發明實施例中線上異常數據處理方法的流程示意圖;
[0019]圖3示出了本發明實施例中異常數據處理裝置的結構示意圖。
【具體實施方式】
[0020]為了使本發明的技術方案及優點更加清楚明白,以下結合附圖對本發明的示例性實施例進行進一步詳細的說明,顯然,所描述的實施例僅是本發明的一部分實施例,而不是所有實施例的窮舉。并且在不沖突的情況下,本說明中的實施例及實施例中的特征可以互相結合。
[0021 ]發明人在發明過程中注意到:
[0022]由于現有技術中對小概率事件的異常流或是異常現象的捕獲需要占用較大的主機存儲空間,以及線下復現異常現象具有一定的局限性,即無法保證異常現象復現一致性和無法定位造成異常現象的根本原因。發明人想到通過對異常視頻流進行分析,最大限度的完善視頻處理系統自身的容錯性。
[0023]要實現最大限度的完善視頻處理系統自身的容錯性,需要考慮以下兩方面:
[0024](I)為了減少異常數據存儲的空間開銷,通過重建會話上下文的方式,僅保存出現異常現象的當前分段和該會話的第一個分段的視頻流異常數據;
[0025](2)利用一種分段視頻流異常數據線上和線下相結合的處理架構,最大限度的還原出現異常現象時的相關上下文信息,從而提高針對異常數據復現和分析的準確性,實現視頻處理系統的進一步完善。
[0026]基于此,本發明實施例提出了一種異常數據處理方法及裝置,下面進行說明。
[0027]圖1示出了本發明實施例中異常數據處理方法的流程示意圖,如圖所示,包括:
[0028]步驟101、對會話的分段視頻流進行線下解碼監測,判斷當前分段視頻流是否存在解碼異常現象。
[0029]實施中,所述的對會話的分段視頻流進行線下解碼監測包括:
[0030]管理工具加載線上預存的異常上下文信息;
[0031]根據所述異常上下文信息,解碼所述異常上下文信息對應的分段視頻流,并實時監測解碼過程。
[0032]具體實施中,不對獲取線上異常上下文信息的具體方法進行限定,包括但不限于:當線上識別出當前分段視頻流出現解碼異常現象退出解碼后,關閉視頻處理系統的保活機制,使系統保持解碼異常現象,以便線下確認異常復現和后續分析;打開視頻處理系統的處理流程記錄機制,管理工具將線上獲取到的異常上下文信息加載到視頻處理系統,并利用視頻處理系統對該異常上下文信息對應的分段視頻流進行解碼。同時,在解碼各分段視頻流時,增加類似時間戳的路徑標記,記錄解碼出現異常現象時的程序處理流程,即管理工具通過對線上捕獲到的異常數據流所在的各分段視頻流的解碼情況進行實時監控,能夠利用該路徑標記定位解碼異常現象所處位置。其中,線上獲取到的異常上下文信息是指針對各分段視頻流后續分段視頻解碼所需的視頻頭信息和出現異常時核心數據結構的關鍵數據?目息O
[0033]實施中,所述的線上預存異常上下文信息的步驟包括:
[0034]獲取會話的第一分段視頻流,重建所述會話上下文并保存所述第一分段視頻流;
[0035]解碼所述第一分段數據流,并識別所述第一分段數據流是否存在異常視頻流;
[0036]若存在異常視頻流,則根據所述異常視頻流類型生成相應的異常上下文信息:
[0037]若不存在異常視頻流,則獲取下一分段視頻流,重建所述會話上下文并解碼所述下一分段數據流。
[0038]具體實施中,不對獲取會話的第一分段視頻流(或第一個數據分段)的具體方法進行限定,包括但不限于:當接收到會話的第一分段視頻流后,保存第一分段視頻流,找到第一分段視頻流的上下文信息,并重建上下文信息,重建的上下文信息至少包括解碼所需的視頻頭信息和核心數據結構的關鍵數據信息,并用于解碼后續亂序分段視頻流。
[0039]實施中,根據所述異常視頻流類型生成相應的異常上下文信息的步驟包括:
[0040]若所述異常視頻流為解碼失敗,正常退出,則輸出包含錯誤碼信息的異常上下文信息;
[0041 ]若所述異常視頻流為解碼失敗,發生段錯誤或死循環,則