随笔 - 356  文章 - 19  评论 - 89  阅读 - 235万

使用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

1. 工具文件rtp_h264_extractor.lua放在 Wireshark 安装目录中。

        右键wireshark图标 --> 属性 --> 打开文件所在位置,即可进入到wireshark安装目录,将工具文件放到此目录中。

2. 编辑目录中的 init.lua 文件,在末尾添加 "dofile(DATA_DIR.."rtp_h264_extractor.lua")" 以加载工具文件

3. 打开wirshark后,可 菜单栏 “工具” 项中看到 “Extract h264 stream from RTP” 一项

Wireshark将流解析为RTP H264流

        抓到的包如果不是单纯的某个端口的 udp rtp 264流,则需要先进行过滤解析,

1. 过滤端口

2. 解析为RTP流

    选中某一个包,右键 --> 解码为 --> 选择 RTP类型

3. 解析为 H264的RTP包

    先查看rtp包中的video的负载类型,如下,这里的值是96

    菜单栏 编辑 --> 首选项 --> Protocols --> H264,填写96

 

使用工具,提取264流并保存为文件

    菜单栏 工具 --> 选中 rtp_h264_extractor 工具

 

待底部进度走完,即可在pcap文件同目录中生成了dump.264文件,可使用 Elecard StreamEye 等工具播放

 转自:https://blog.csdn.net/lovehaihong5401/article/details/88085329

还可参考:https://blog.csdn.net/weixin_44022219/article/details/106670184

 

posted on   苦涩的茶  阅读(5644)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】

// 1.生成目录索引列表  
点击右上角即可分享
微信分享提示