RTSP協議是TCP/IP協議體系中的一個應用層協議,EasyNVR視頻平臺便是支持RTSP協議的流媒體服務器,可以自由對接流媒體服務器平臺,支持微信、QQ、支付寶等工具,掃一掃直接觀看,且不限制觀看人數。git
EasyNVR視頻平臺拉取RTSP流時,在使用wireshark抓包取RTP數據包時,如何把RTP傳輸的視頻流保存成視頻文件進行播放?github
問題分析
在EasyNVR拉取攝像頭的視頻流時,經過wireshark抓包能夠看到,EasyNVR與攝像頭之間經過RTP傳輸視頻流,那如何確認視頻源是否有問題,能夠在wireshark抓包的時候,保存攝像頭經過RTP協議傳輸過來的視頻流,如何經過wireshark保存RTP數據包成視頻文件?
服務器
- 在wireshark安裝目錄下的init.lua文件中的enable_lua爲true
- 在init.lua的最後加上dofile(DATA_DIR…「rtp_h264_extractor.lua」)
-
下載rtp_h264_extractor.lua文件:
https://github.com/volvet/h264extractor
把rtp_h264_extractor.lua文件放在於init.lua同目錄下
微信 -
打開wireshark後,在wireshark工具菜單欄出現Extract h264 stream from RTP工具
- 用wireshark抓取RTP數據包,同時點擊Extract h264 stream from RTP
- 在rtp_h264_extractor.lua同級目錄下生成
- 使用ffplay進行播放,能夠看到視頻流可正常播放