提取pcap文件中的opus及h265码流的小工具

背景

在音视频系统的调试中,经常要抓包进行码流分析,所以写了个小工具,可以直接提取pcap格式抓包文件中的码流。现在小工具支持opus和h265的码流提取。

用法

提取h265视频流

  1. 抓包
    在windows下用wireshark抓取数据包,如下图
    这里写图片描述
    过滤rtp包,记录需要提取的码流的ssrc值,在这里选择0x9f8d9c2c。
  2. 将抓包文件另存为pcap格式,如下图
    这里写图片描述
    3.使用pcapparse.exe工具提取码流
//提取h265.pcap中的 ssrc为0x1d3d3d7c的h265码流(ssrc需为小写)
pcapparse.exe --e h265.pcap --o out.h265 --c h265 --t 102 --s 0x9f8d9c2c

程序执行完了,会产生一个out.h265文件,可以用PotPlayer直接播放或者使用Elecard进行分析。

提取opus音频流

抓包的步骤同上,命令行如下

pcapparse.exe --e h265.pcap --o out.opus --c opus --t 103 --s 0xf2faeec8

h265.pcap文件中的opus ssrc为0xf2faeec8,程序执行完毕,会产生一个out.opus文件,也可以用PotPlayer播放。

命令行说明

–e 指定pcap格式的文件
–o 指定输出文件名
–c 指定编码格式,目前支持h265和opus
–t 需要提取的rtp payload type值(可选选项)
–s 需要提取的rtp ssrc值(必填)

说明

  1. 这个工具是支持对h265 fu-a的分包模式进行组包提取的。
  2. 在linux下的使用方式:通过tcpdump抓包后,再在windows下用wireshark打开另存为pcap文件,再去提取码流即可。
    (2018-8-9更新) tcpdump抓包需要注意的是如果使用 -i any抓包,tcpdump会将以太网头替换成linux cooked capture头,那么这个工具是无法解析该包头的,所以在用tcpdump抓包时是需要指定网卡抓包的,-i 网卡名 ,就可以通过该工具解析
  3. 工具下载 https://download.csdn.net/download/mo4776/10568559 压缩包中包括上述的h265.pcap文件。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mo4776

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值