赞
踩
RTP抓包工具调研
学习RTP——抓包分析工具
wireshark提取视频数据之RTP包中提取H264和H265_wireshark h264_一二三的博客-CSDN博客
任务:
1 RTP流生成方法
2 抓包工具试用
RTP流的生成:
常用的RTP流的生成方法为:
ffmpeg -i input.mp4 -c:v copy -an -f rtp rtp://destination_ip:destination_port
这里的input.mp4应该换成自己的MP4文件,rtp://destination_ip:destination_port应该是自己设置的推流地址和端口
gst-launch-1.0 v4l2src ! video/x-raw,width=640,height=480 ! x264enc ! rtph264pay ! udpsink host=destination_ip port=destination_port
其中,v4l2src是摄像头的视频源,video/x-raw是视频格式,x264enc是视频编码器,rtph264pay是将H.264编码的视频打包成RTP包的元素,udpsink是将RTP包发送到指定的IP地址和端口号的元素
Wireshark 抓包分析 RTSP/RTP
RTP通常工作于UDP传输协议上,
命令行中运行:
ffmpeg -re -f lavfi -i sine=d=30 -re -f lavfi -i smptebars=d=30 -acodec libopus -vn -f rtp rtp://127.0.0.1:20000 -an -vcodec libvpx -f rtp rtp://127.0.0.1:20002
然后我们看到
这里的m后面的第三个值是payload type的值,应该在wireshark中设置这个值。参考
(好像不设置好像同样可以捕获到)
然后开启捕获
然后再应用筛选器输入:
ip.addr == 127.0.0.1 && udp.port == 20000
运行该命令后,在wireshark中是显示是这样的,我们直接搜索rtp是搜索不到的。因为rtp是基于udp进行通信,我们可以将其改为rtp的形式:
鼠标放在任意一个udp上右键,点击“Decode As…”,然后将这里选择RTP
然后点击结束或者关闭,会提示你需要保存,这时候保存可以保存为以下几种文件类型。
ps:这里查了一下,rtp的包保存的后缀应该是.pcap
比如这里生成11.pcap
双击打开后,通过点击这里查看详细信息:
RTP包的解析
将保存的wireshark
Timestamp:时间戳;
参考链接:
【1】、Wireshark 抓包分析 RTSP/RTP/RTCP 基本工作过程
【2】、使用wireshark解析RTP包中的音频流
【3】、wireshark解析rtp协议,流媒体中的AMR/H263/H264包的方法
gst-launch-1.0 v4l2src ! video/x-raw,width=640,height=480 ! x264enc ! rtph264pay ! udpsink host=destination_ip port=destination_port
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。