xrtp is a tool for RTP packet analysis.
In general, xrtp reads the pcap file and parses the RTP packets (and corresponding RTCP packets) all the way through it, depending on the port selection. xrtp can do timestamp parsing, jitter analysis, payload extraction, etc.
-
Setup CMake.
-
Setup MSVC (2019 or above is preferred).
-
Build
> mkdir build
> cd build
> cmake .. -G "<Visual Studio ToolChain>"
> cmake --build . --config <Config>
-
make sure you have installed Npcap, and have wpcap.dll and packet.dll in your PATH.
-
run xrtp.exe
> xrtp.exe -p <dst port> -d <pt>:<freq>:<type> <file.pcap>
- see more details in
xrtp.exe --help
.
-
port
port is the destination port of RTP packets.
-
description
description defines the payload type, frequency (HZ) and payload type.
use
-d <pt>:<freq>:<type>
to pass description to xrtp.once xrtp get a RTP packet, it will check the payload type, if xrtp find a matched description, xrtp will write the payload into an auto generated file with filename
pt<pt>_<ssrc>.es
. -
result
TODO
-
sei
when payload type is h.264/h.265, xrtp can write a special sei with rtp timestamp into the payload. It can help you to find the frame in the pcap file.