国标平台视频流抓取及rtp包解析

最近遇到国标平台无法播放视频流的问题。需要检查视频接收端和播放端视频的收包和发包是否正常。但是只看pcap文件不是很直观,所以将pcap文件中的rtp包解析出来,用播放器将视频播放出来,以更直观的判断接收方和发送方rtp包是否正常。

平台

  • 接收端:国标平台
  • 发送端:linux

使用工具

  • tcpdump
    • 用来抓取pcap数据包
  • wireshark
    • 对抓取的pcap数据包进行解析
  • vlc
    • 播放解析出来的视频数据

抓取数据包

由于发送端和接收端抓取数据包的方法都是一样的,所以这里不再重复描述,仅记录发送端的抓包过程。

抓包命令:

sudo tcpdump -i any host 10.0.20.3 -c 5000 -w test.pcap

抓取5000个本机向ip为10.0.20.3主机发送的数据包,保存到test.pcap文件中。

解析pcap文件,并分离出RTP包

test.pacp文件通过wirshark工具打开

选中一个本机向目标主机发送的RTP包

点击电话->RTP->流分析进入RTP流分析页面


点击save->文件同步前向流音频

在选择文件存储格式时,选择raw格式的原始数据流,这样才可以保证播放器可以正常的解码RTP包中的h.264码流

将保存好的文件用vlc播放器打开,就可以看到发送端向接收端发送的视频流了,可以看到画面十分清晰,没有丢包和乱序的现象

posted @ 2022-07-01 17:16  HolyZion  阅读(496)  评论(0编辑  收藏  举报