如何從抓包中還原視訊?如何用抓包中還原檔案?

對於視訊流的分析,當然可以使用專業的錄碼流工具,通過反解視訊或者TS包來對視訊質量分析,然這樣的成本很貴,因此抓資料包分析也是常用的手段之一,通過將抓包將視訊檔案還原,通過人工觀察不判斷視訊問題,也不失是種低成本的好手段。

工具/原料

wireshark

方法/步驟

首先是要將視訊包抓取下來,可以在客戶端前串一個hub來抓包,如果沒有hub,只有交換機,那就要使用埠映象的方法了,將另一埠的流量映象至抓包機器的接入埠,否則交換機口子的抓包。

如何從抓包中還原視訊?如何用抓包中還原檔案

假設前面的設定都沒有問題,現在已經獲得了cap結尾的抓包檔案,下一步就是要開始解包了,開啟wireshark之類的抓包軟體,然後選擇左上角的檔案--開啟,選中本地硬碟中的抓包檔案開啟。

如何從抓包中還原視訊?如何用抓包中還原檔案

一般視訊的抓包檔案都比較大,動輒幾百M,因此開啟抓包檔案視機器和硬碟的速度會要一些時間,而且系統會進入假死狀態,不要著急,wireshark在左下角有個綠色進度條,走到100%就完成了。

如何從抓包中還原視訊?如何用抓包中還原檔案

開啟抓包後,上面顯示的就是TS抓包,從左至右依次是序號、時間,源IP和目的IP,後是包型別、長度以及包的型別。中間的選單還能看到包的詳細資訊等,一應俱全。

如何從抓包中還原視訊?如何用抓包中還原檔案

下一步就開始獲取Ts檔案了,首先我們應該知道視訊的源IP和目的IP,這樣就可以把流篩選出來,從而避免很多不必要的資訊摻雜的包中,這一點可以通過在源地址或目的地址上右鍵點選,然後選擇作為應用器篩選完成。

如何從抓包中還原視訊?如何用抓包中還原檔案

把非源地址和目的地址的包篩選後,再右鍵單擊任何一個抓包,在彈出選單中選擇 <追蹤流> 選單,如下圖如示,視訊流可能為TCP也可能為UDP流,在小編的例子中選擇了UDP流。

如何從抓包中還原視訊?如何用抓包中還原檔案

系統再次進入假死狀態,硬碟狂閃,如下圖,同樣可以參考下方的綠色進度條來參考系統的完成度,這裡小編建議下抓包檔案不要過大,在這個版本下400M以上的檔案真會讓抓包軟體報錯退出的。

如何從抓包中還原視訊?如何用抓包中還原檔案

全部完成的圖如下,一堆亂碼,其實是ASCII碼,這種碼是沒法播放的,需要在下方的顯示資料為那裡由原來ACCII碼選為 <原始資料> ,很多用過以前版本的人可能不習慣,早先版本的預設值就是原始資料。

如何從抓包中還原視訊?如何用抓包中還原檔案

換成原始資料後又要重新掃描包,和第7步第一樣進度條走完才顯示如下圖的狀態,全是16進位制的資料,這次就全部完成了,選擇下方的,save as選單,把檔案儲存好。

如何從抓包中還原視訊?如何用抓包中還原檔案

儲存檔案時如果知道原來視訊檔案的編碼格式就直接儲存為帶字尾名的檔案,如比小編這個視訊原來是ts檔案,現在也就儲存為1.ts,記住儲存的目錄名,下一步要播放器打開了。

如何從抓包中還原視訊?如何用抓包中還原檔案

強烈不建議使用常見的播放器,那些播放器的糾錯能力都太強,哪些視訊檔案在傳輸過程中有錯誤,很多時候也發現不了,建議使用VLC這種較原生態的播放器,同時把debug開啟來顯示是否有視訊異常。

如何從抓包中還原視訊?如何用抓包中還原檔案

注意事項

相關問題答案