WireShark过滤tcpdump RTP数据流
程序员文章站
2022-07-14 18:41:37
...
在调试Miracast的过程中,WFD会话建立后,AV流开始从source传递到sink端,继而调用解码器进行解码等后续操作。在UI不可见的情况下可以通过tcpdump抓到达端口的数据包,对其使用wireshark进行过滤后使用VLC进行播放,就可以直观的观测数据传递情况。
0.准备
安装包分析软件wireshark和软解码播放器vlc及其查看音视频格式的mediainfo工具
sudo apt-get install vlc
sudo apt install wireshark
sudo apt-get install mediainfo
1.抓取tcpdump数据包
在Sink端抓取tcpdump数据包
adb shell tcpdump -i any -s 0 -w /data/tcpdump.pcap
//any表示抓取wlan0、p2p0、eth0等全部接口的数据包
//data/tcpdump.pcap表示保存在data下的tcpdump.pcap
adb pull /data/tcpdump.pcap ./
2.wireshark包分析
- 用wireshark打开tcpdump.pcap
- 在Filter过滤关键字“rtp”并回车确认过滤
- 选择Telephony->RTP->Stream Analysis
- 选择下方Save payload…
- 重命名为xxx.mp4并保存
3.VLC播放
使用VLC播放器解码播放上面的xxx.mp4,既可以直观查看到Source端发送过来的投屏数据,确认WFD建立成功。
4.查看格式
使用ubuntu的工具mediainfo可以查看一些音视频的信息
>mediainfo 1.mp4
下一篇: 初识Camtasia,了解配置功能