使用Wireshark在RTP流中提取中264数据(针对udp)(转)
调试rtsp收发流时,经常会需要抓包以确认是网络问题还是程序问题还是其它问题。通过tcpdump或者wireshark抓到的包通常是rtp流,保存为.pcap格式文件后中,可通过wireshark进行解析,得出h264裸流,并保存为文件。
我这里有一段rtp流文件,作为演示使用(这个文件有点不标准,一般一个nal打一个mark,但这里是一帧打一个mark)
网盘地址 链接:https://pan.baidu.com/s/1s0aitAmaSED_prvWRVRIYQ 提取码:r1cp
安装lua工具
这个工具是百度搜索来的,因为使用过程不清楚,于是我将在这里演示一遍,工具文件rtp_h264_extractor.lua也放在了上面的网盘中。——基本可参考:https://www.cnblogs.com/liushui-sky/p/13671360.html
- 工具文件rtp_h264_extractor.lua放在 Wireshark 安装目录中。
右键wireshark图标 --> 属性 --> 打开文件所在位置,即可进入到wireshark安装目录,将工具文件放到此目录中。
- 编辑目录中的 init.lua 文件,在末尾添加 "dofile(DATA_DIR.."rtp_h264_extractor.lua")" 以加载工具文件
- 打开wirshark后,可 菜单栏 “工具” 项中看到 “Extract h264 stream from RTP” 一项
Wireshark将流解析为RTP H264流
抓到的包如果不是单纯的某个端口的 udp rtp 264流,则需要先进行过滤解析,
-
过滤端口
-
解析为RTP流
选中某一个包,右键 --> 解码为 --> 选择 RTP类型
-
解析为 H264的RTP包
先查看rtp包中的video的负载类型,如下,这里的值是96
菜单栏 编辑 --> 首选项 --> Protocols --> H264,填写96
使用工具,提取264流并保存为文件菜单栏 工具 --> 选中Extract h264 stream from RTP工具
待底部进度走完,即可在pcap文件同目录中生成了dump.264文件,可使用 Elecard StreamEye 等工具播放
转自:https://blog.csdn.net/lovehaihong5401/article/details/88085329
还可参考:https://blog.csdn.net/weixin_44022219/article/details/106670184
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!