wireshark保存音视频流

以H264视频流为例:
1、下载rtp_h264_extractor.lua
地址:https://github.com/volvet/h264extractor
2、将文件放置在wireshark的安装目录下,也就是和init.lua同一个目录下
3、编辑init.lua文件,设置disable_lua = false 或默认有 enable_lua = true
4、在文件结尾添加 dofile(DATA_DIR…“rtp_h264_extractor.lua”)
5、抓包后,在菜单栏工具下面点击Export H264 to file
6、点击Exoprt All 将文件导出,默认在wireshark安装目录
7、使用H264专用播放器或ffplay播放

问题记录:
1、抓包时没有显示H264的数据包
在这里插入图片描述

解决方法:在菜单栏编辑->首选项->Protocols->H.264中设置payload types为96
更改后效果:
wireshark保存音视频流_第1张图片
2、文件无法播放
保存的视频流为原始H264码流,VLC是无法播放的,需要使用专用播放器或ffplay播放。
ffplay下载地址:https://gitee.com/fj91/ffmpeg-windos64

3、拉流时视频播放卡顿,保存文件后没有卡顿现象
卡顿一般是丢帧造成的,实时的视频流可以看到明显卡顿,保存成文件后的表现形式一般为跳帧,需要关注时间戳的变化。

4、丢帧问题分析
驱动丢帧:表现为浏览器、rtsp播放同一码流时播放都出现卡顿、花屏,一般驱动丢帧会有打印日志。
AP丢帧:AP将驱动采集的视频帧缓存后分发到其他模块,部分模块会进行二次缓存,此时对比各模块是否同时丢帧来判断是分发前丢帧还是模块中丢帧。
网络丢帧:在发送时将视频帧保存到文件,与抓到的包进行对比可确认。
播放器丢帧:由于网络延时、时间戳错误、NALU内部参数问题可能导致播放器主动丢帧,可打开VLC->工具->消息->详尽程度->调试,分析VLC日志

你可能感兴趣的:(wireshark,音视频,测试工具)