音视频入门基础:MPEG2-PS专题(8)——使用Wireshark分析GB28181的PS流

=================================================================

音视频入门基础:MPEG2-PS专题系列文章:

音视频入门基础:MPEG2-PS专题(1)------MPEG2-PS官方文档下载

音视频入门基础:MPEG2-PS专题(2)------使用FFmpeg命令生成ps文件

音视频入门基础:MPEG2-PS专题(3)------MPEG2-PS格式简介

音视频入门基础:MPEG2-PS专题(4)------FFmpeg源码中,判断某文件是否为PS文件的实现

音视频入门基础:MPEG2-PS专题(5)------FFmpeg源码中,解析PS流中的PES流的实现

音视频入门基础:MPEG2-PS专题(6)------FFmpeg源码中,获取PS流的视频信息的实现

音视频入门基础:MPEG2-PS专题(7)------通过FFprobe显示PS流每个packet的信息

音视频入门基础:MPEG2-PS专题(8)------使用Wireshark分析GB28181的PS流

=================================================================

一、引言

按照《海康网络摄像机接入EasyGBS GB28181平台》中的方法,将支持GB28181的海康网络摄像机接入EasyGBS GB28181平台。如果国标传输协议的取流方式选择的是UDP:

那进行直播时,摄像机通过GB28181传输的音视频流的格式就是RTP封装的PS流:

二、Wireshark抓包分析

(一)SDP分析

对摄像机的数据进行抓包。以我使用的海康摄像机为例,首先分析SIP信令(INVITE)中携带的SDP。GB28181里面,SIP负责建立和释放会话,而媒体数据由SDP描述。SDP与SIP配合使用时会放到SIP协议的body中。会话建立时,需要通过SDP进行媒体协商,双方才能确定对方的媒体能力以及交换媒体的数据(关于SDP协议可以参考:《音视频入门基础:RTP专题(3)------SDP简介》)。选中SIP的INVITE方法,右键 -> "追踪流" -> "SIP Call":

可以看到映射PT值(payload type,有效载荷类型)为96的负载类型到PS(MPEG2-PS)编码,采样率为90000Hz。由《音视频入门基础:RTP专题(7)------RTP协议简介》可以知道,有效载荷标识符 96-127 用于会话期间动态定义的有效载荷。MPEG2-PS没有具体的PT值,只能使用动态(dynamic)PT值:

(二)RTP header分析

选中其中一个RTP数据包(RTP packet),下图红框中显示的就是其RTP header(关于RTP header的格式可以参考:《音视频入门基础:RTP专题(7)------RTP协议简介》)。可以看到该RTP数据包的RTP header的payload type值为96,为动态(dynamic)PT值。该值跟SDP描述中的PT值对应。所以可以确定其RTP payload中存放的是PS,即MPEG2-PS格式的数据:

(三)提取出PS裸流

GitHub - hongch911/WiresharkPlugin: The H265 H264 PS PCM AMR SILK plugin for Wireshark Lua 下载rtp_ps_assemble.lua和rtp_ps_export.lua。将这两个脚本放到Wireshark的plugins目录下:

重新打开Wireshark,可以看到"工具"菜单多了个"Video"选项。"工具" -> "Video" -> "Export PS":

Export All,然后点击"Browser":

可以看到生成了XXX.ps文件。该文件即为ps裸流文件:

该文件可以用vlc等播放器播放:

也可以用Elecard Stream Analyzer打开分析:

相关推荐
tedcloud1238 小时前
OmniRoute怎么部署?开源AI模型路由平台Linux部署教程
linux·服务器·人工智能·开源·音视频
agathakuan12 小时前
Wireshark 解密並導出TLS 1.2 / TLS 1.3 明文的方法(可控制 Client 端)
c语言·wireshark·ssl·openwrt
潜创微科技12 小时前
8K HDMI 2.1 多源切换芯片方案,一颗芯片搞定长线不黑屏
音视频
音视频牛哥12 小时前
一款优秀的视频直播软件应具备哪些核心功能?结合 SmartMediaKit 谈实时音视频系统的能力边界
音视频·视频直播·低延迟rtsp播放器·gb28181接入·rtsp服务器·低延迟rtmp播放器·鸿蒙next rtsp
AI小码12 小时前
把动作「画」给视频世界模型,跨本体双向推演,李飞飞参与
大数据·人工智能·算法·ai·大模型·音视频·编程
嵌入式-老费15 小时前
esp32开发与应用(边采样边播放音频)
音视频
中微极客16 小时前
Veo视频生成与Gemini Agent平台集成实践
数据库·人工智能·oracle·音视频
码龙-DragonCoding17 小时前
一键批量提取音频、提取视频
android·音视频·提取
阿童木写作17 小时前
Temu商品图批量翻译工具免费,AI视频字幕翻译+智能抠图
人工智能·python·音视频
中微极客18 小时前
2026年AI视频生成模型技术选型与工程实践
人工智能·音视频