Wireshark 4.5.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
tap-rtp-analysis.h
Go to the documentation of this file.
1
19#ifndef __TAP_RTP_ANALYSIS_H__
20#define __TAP_RTP_ANALYSIS_H__
21
22#include <epan/address.h>
23#include <epan/packet_info.h>
24
30#ifdef __cplusplus
31extern "C" {
32#endif /* __cplusplus */
33
34/****************************************************************************/
35/* structure that holds the information about the forward and reversed direction */
36typedef struct _bw_history_item {
37 double time;
38 uint32_t bytes;
40
41#define BUFF_BW 300
42
43typedef struct _tap_rtp_stat_t {
45 /* use (flags & STAT_FLAG_FIRST) instead */
46 /* all of the following fields will be initialized after
47 * rtppacket_analyse has been called
48 */
49 uint32_t flags; /* see STAT_FLAG-defines below */
50 uint16_t seq_num;
51 uint64_t timestamp; /* The generated "extended" timestamp */
52 uint64_t seq_timestamp; /* The last in-sequence extended timestamp */
53 double bandwidth;
54 bw_history_item bw_history[BUFF_BW];
55 uint16_t bw_start_index;
56 uint16_t bw_index;
57 uint32_t total_bytes;
58 uint32_t clock_rate;
59 double delta;
60 double jitter;
61 double diff;
62 double skew;
63 double sumt;
64 double sumTS;
65 double sumt2;
66 double sumtTS;
67 double time;
68 double start_time;
69 double lastnominaltime;
70 double lastarrivaltime;
71 double min_delta;
72 double max_delta;
73 double mean_delta;
74 double min_jitter;
75 double max_jitter;
76 double max_skew;
77 double mean_jitter;
78 uint32_t max_nr;
79 uint32_t start_seq_nr;
80 uint32_t stop_seq_nr;
81 uint32_t total_nr;
82 uint32_t sequence;
83 uint16_t pt;
84 int reg_pt;
85 uint32_t first_packet_num;
86 unsigned last_payload_len;
88
89typedef struct _tap_rtp_save_data_t {
90 uint32_t timestamp;
91 unsigned int payload_type;
92 size_t payload_len;
94
95#define PT_UNDEFINED -1
96
97/* status flags for the flags parameter in tap_rtp_stat_t */
98#define STAT_FLAG_FIRST 0x001
99#define STAT_FLAG_MARKER 0x002
100#define STAT_FLAG_WRONG_SEQ 0x004
101#define STAT_FLAG_PT_CHANGE 0x008
102#define STAT_FLAG_PT_CN 0x010
103#define STAT_FLAG_FOLLOW_PT_CN 0x020
104#define STAT_FLAG_REG_PT_CHANGE 0x040
105#define STAT_FLAG_WRONG_TIMESTAMP 0x080
106#define STAT_FLAG_PT_T_EVENT 0x100
107#define STAT_FLAG_DUP_PKT 0x200
108
109/* forward */
110struct _rtp_info;
111
112/* function for analysing an RTP packet. Called from rtp_analysis and rtp_streams */
113extern void rtppacket_analyse(tap_rtp_stat_t *statinfo,
114 const packet_info *pinfo,
115 const struct _rtp_info *rtpinfo);
116
117#ifdef __cplusplus
118}
119#endif /* __cplusplus */
120
121#endif /* __TAP_RTP_ANALYSIS_H__ */
Definition tap-rtp-analysis.h:36
Definition packet_info.h:43
Definition packet-rtp.h:29
Definition tap-rtp-analysis.h:89
Definition tap-rtp-analysis.h:43
uint32_t start_seq_nr
Definition tap-rtp-analysis.h:79
double time
Definition tap-rtp-analysis.h:67
uint32_t total_nr
Definition tap-rtp-analysis.h:81
bool first_packet
Definition tap-rtp-analysis.h:44
double start_time
Definition tap-rtp-analysis.h:68
uint32_t sequence
Definition tap-rtp-analysis.h:82
uint32_t max_nr
Definition tap-rtp-analysis.h:78
uint32_t stop_seq_nr
Definition tap-rtp-analysis.h:80