wireshark抓取rtp流保存為.264文件並播放


注:此文章含轉載內容,如侵權,請聯系我來刪除;

在調試vlc播放器播放rtp時,由於出現卡頓,所以想把rtp流保存下來播放,看是否是rtp推的問題還是電腦解碼問題。網上看到的類似文章,我都沒成功,最后通過另外一篇文章解決;

保存的.264視頻可以用於測試rtp傳輸,csdn上有很多測試視頻,還要收分,這里想截多少截多少。

 

1. 關於保存成rtp流:

轉載鏈接:https://blog.csdn.net/volvetandanny/article/details/47087641

轉載內容:

由於近來發現網上wireshark獲取H264碼流的方法都有點錯誤,為此研究了一下這種方法,最后發現還是可行的,能成功獲取H264裸碼流。

借鑒的網頁:https://wiki.wireshark.org/Lua

                        http://www.lua.org/ 

1.首先安裝wireshark軟件,這個用過的人都知道它的強大之處

2.查看安裝路徑下是否存在init.lua,確保disable_lua = false

3.在init.lua的最后加上dofile(DATA_DIR.."rtp_h264_extractor.lua")

4.把rtp_h264_extractor.lua這個文件放在init.lua同一個路徑下

5.用wireshark抓取H264視頻碼流,最好過濾掉其他碼流

6.右鍵點擊H264的udp包,選擇"Decode as...",再選擇Transport中的rtp選項,就解析成rtp包了

7.查看rtp包的payload type,比如說type是96,那么在wireshark工具欄選擇Edit->preferences->protocols->H264, 把H264 dynamic payload types設成96

8.現在就可以選擇點擊tools下的"Extract h264 stream from RTP"菜單項

9.這樣就可以生成dump.264,一般會放在與碼流文件同一個路徑下,由於環境變量的不同,也可能放在其他路徑下

10.該文件rtp_h264_extractor.lua目前已經支持了排序,FU-A,STAP-A等常見的rtp h264打包方式

11.下載該文件的路徑在https://github.com/volvet/h264extractor 

12. 也可以在csdn的下載頁下載,地址為http://download.csdn.net/detail/volvetandanny/8937395

說明:1. 第4步后,先關閉播放器,再打開,在tools下就有“Extract h264 stream from RTP”菜單了;

           2. 不建議采集前打開“Extract h264 stream from RTP”菜單,因為邊采集邊保存,電腦嚴重卡頓;

           3. dump.264我電腦是在同一路徑下;

2. 關於如何播放

   網上找了好幾個播放器,也都是沒辦法播放的,后來使用ffplay就可以了,據說可以使用ffmpeg進行轉碼為MP4或者avi文件;

   ffplay是控制台程序,可以將保存的dump.264文件拖動到ffplay圖標上或者使用命令行打開;

    ffmpeg播放器地址:https://ffmpeg.zeranoe.com/builds/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM