FreeCalypso > hg > rtp-debug-utils
comparison doc/RTP-analysis @ 0:05ff0f7ac977
initial commit: split from gsm-codec-lib
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Sun, 02 Apr 2023 00:28:28 +0000 |
| parents | |
| children | 5216e7fb1c9e |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:05ff0f7ac977 |
|---|---|
| 1 The present package includes a number of utilities for analyzing RTP streams | |
| 2 that have been captured with tcpdump or equivalent tools in pcap format. In | |
| 3 order to use any of these utilities, you need to have a pcap file (obviously), | |
| 4 and you need to identify the RTP stream to be analyzed or extracted by either | |
| 5 source or destination IP:port. All tools begin by applying a filter, | |
| 6 considering only those packets that are UDP in IPv4 (no IPv6 support currently), | |
| 7 and only those that match the specified source or destination IP:port. Every | |
| 8 matched packet is checked for a valid RTP header, and then the actual RTP stream | |
| 9 analysis or extraction takes place, depending on the specific tool: | |
| 10 | |
| 11 rtp-cont-check This program checks the selected RTP stream for continuity. It | |
| 12 verifies that every matched packet has the same SSRC, that the | |
| 13 sequence number always increments by 1 from each individual | |
| 14 packet to the next, and that the RTP header timestamp always | |
| 15 increments by 160 units. (The assumption is that the | |
| 16 application at hand is in the traditional telephony domain, | |
| 17 with a sampling rate of 8000 samples/s and 20 ms packetization | |
| 18 for RTP.) This tool also looks at the capture time deltas | |
| 19 between successive packets and reports the observed minimum and | |
| 20 maximum; by seeing min and max delta-T, a developer can easily | |
| 21 notice timing aberrations that aren't caught by RTP header | |
| 22 sequence number and timestamp checks. | |
| 23 | |
| 24 rtp-g711-extr This program focuses on a single selected RTP stream like the | |
| 25 others, enforces its continuity just like rtp-cont-check, and | |
| 26 then further enforces that every RTP packet be a 160-byte | |
| 27 payload, presumed to be either PCMU or PCMA. (The payload type | |
| 28 number is NOT considered, only the payload length.) The | |
| 29 selected G.711 RTP stream is then extracted and written into a | |
| 30 raw binary file. | |
| 31 | |
| 32 rtp-gsmfr-extr This program focuses on a single selected RTP stream like the | |
| 33 others, enforces its continuity just like rtp-cont-check, but | |
| 34 then further enforces that every RTP packet be one of these 3 | |
| 35 possibilities: a GSM FR1 codec frame, a GSM EFR codec frame or | |
| 36 a Themyscira BFI marker as defined in the RTP-BFI-extension | |
| 37 document. (The payload type number is NOT considered, only the | |
| 38 payload length and the characteristic signature of each of the | |
| 39 3 allowed possibilities.) The selected RTP stream is then | |
| 40 extracted and written into a gsmx file (see Binary-file-format), | |
| 41 which can then be analyzed with gsmrec-dump or decoded to | |
| 42 playable WAV with gsmfr-decode or gsmefr-decode. | |
| 43 | |
| 44 rtp-jitter-view This program analyzes a single selected RTP stream just like | |
| 45 rtp-cont-check, but instead of reporting minimum and maximum | |
| 46 time deltas for the entire stream, it prints the individual | |
| 47 capture time delta between every successive pair of packets. |
