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

  • 相关阅读:
    CSS 样式清单整理
    JavaScript常用方法封装
    c# 异常:值不能为 null。 参数名: source
    iframe重新加载
    jquery 获取 父级 iframe 里的控件对象
    添加外键约束
    LinQ to entities 不能识别方法“system.string.ToString(system.String)”.因此该方法无法转换为存储表达式
    c# pcm
    .Net Core 2.0 App中读取appsettings.json
    c# 泛型demo
  • 原文地址:https://www.cnblogs.com/liushui-sky/p/13671384.html
Copyright © 2020-2023  润新知