Janus
Home
Demos
Documentation
Papers
Need help?
JanusCon!
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
postprocessing
pp-rtp.h
Go to the documentation of this file.
1
13
#ifndef JANUS_PP_RTP
14
#define JANUS_PP_RTP
15
16
#ifdef __MACH__
17
#include <machine/endian.h>
18
#define __BYTE_ORDER BYTE_ORDER
19
#define __BIG_ENDIAN BIG_ENDIAN
20
#define __LITTLE_ENDIAN LITTLE_ENDIAN
21
#else
22
#include <endian.h>
23
#endif
24
25
#include <glib.h>
26
27
typedef
struct
janus_pp_rtp_header
28
{
29
#if __BYTE_ORDER == __BIG_ENDIAN
30
uint16_t
version
:2;
31
uint16_t
padding
:1;
32
uint16_t
extension
:1;
33
uint16_t
csrccount
:4;
34
uint16_t
markerbit
:1;
35
uint16_t
type
:7;
36
#elif __BYTE_ORDER == __LITTLE_ENDIAN
37
uint16_t
csrccount
:4;
38
uint16_t
extension
:1;
39
uint16_t
padding
:1;
40
uint16_t
version
:2;
41
uint16_t
type
:7;
42
uint16_t
markerbit
:1;
43
#endif
44
uint16_t
seq_number
;
45
uint32_t
timestamp
;
46
uint32_t
ssrc
;
47
uint32_t
csrc
[16];
48
}
janus_pp_rtp_header
;
49
50
typedef
struct
janus_pp_rtp_header_extension
{
51
uint16_t
type
;
52
uint16_t
length
;
53
}
janus_pp_rtp_header_extension
;
54
55
typedef
struct
janus_pp_frame_packet
{
56
janus_pp_rtp_header
*
header
;
/* Pointer to RTP header */
57
int
version
;
/* Version of the .mjr file (2=has timestamps) */
58
uint32_t
p_ts
;
/* Packet timestamp as saved by Janus (if available) */
59
uint16_t
seq
;
/* RTP Sequence number */
60
uint64_t
ts
;
/* RTP Timestamp */
61
uint16_t
len
;
/* Length of the data */
62
int
pt
;
/* Payload type of the data */
63
long
offset
;
/* Offset of the data in the file */
64
int
skip
;
/* Bytes to skip, besides the RTP header */
65
uint8_t
drop
;
/* Whether this packet can be dropped (e.g., padding)*/
66
int
audiolevel
;
/* Value of audio level in RTP extension, if parsed */
67
int
rotation
;
/* Value of rotation in RTP extension, if parsed */
68
struct
janus_pp_frame_packet
*
next
;
69
struct
janus_pp_frame_packet
*
prev
;
70
}
janus_pp_frame_packet
;
71
72
#endif
janus_pp_rtp_header::csrccount
uint16_t csrccount
Definition:
pp-rtp.h:33
janus_pp_frame_packet::offset
long offset
Definition:
pp-rtp.h:63
janus_pp_rtp_header_extension::type
uint16_t type
Definition:
pp-rtp.h:51
janus_pp_frame_packet::seq
uint16_t seq
Definition:
pp-rtp.h:59
janus_pp_rtp_header::version
uint16_t version
Definition:
pp-rtp.h:30
janus_pp_frame_packet::drop
uint8_t drop
Definition:
pp-rtp.h:65
janus_pp_frame_packet
Definition:
pp-rtp.h:55
janus_pp_frame_packet
struct janus_pp_frame_packet janus_pp_frame_packet
janus_pp_frame_packet::next
struct janus_pp_frame_packet * next
Definition:
pp-rtp.h:68
janus_pp_rtp_header::csrc
uint32_t csrc[16]
Definition:
pp-rtp.h:47
janus_pp_frame_packet::len
uint16_t len
Definition:
pp-rtp.h:61
janus_pp_frame_packet::rotation
int rotation
Definition:
pp-rtp.h:67
janus_pp_frame_packet::p_ts
uint32_t p_ts
Definition:
pp-rtp.h:58
janus_pp_frame_packet::version
int version
Definition:
pp-rtp.h:57
janus_pp_rtp_header::padding
uint16_t padding
Definition:
pp-rtp.h:31
janus_pp_rtp_header::type
uint16_t type
Definition:
pp-rtp.h:35
janus_pp_frame_packet::pt
int pt
Definition:
pp-rtp.h:62
janus_pp_frame_packet::skip
int skip
Definition:
pp-rtp.h:64
janus_pp_rtp_header::timestamp
uint32_t timestamp
Definition:
pp-rtp.h:45
janus_pp_rtp_header_extension::length
uint16_t length
Definition:
pp-rtp.h:52
janus_pp_rtp_header::extension
uint16_t extension
Definition:
pp-rtp.h:32
janus_pp_frame_packet::audiolevel
int audiolevel
Definition:
pp-rtp.h:66
janus_pp_rtp_header::seq_number
uint16_t seq_number
Definition:
pp-rtp.h:44
janus_pp_rtp_header
Definition:
pp-rtp.h:28
janus_pp_frame_packet::header
janus_pp_rtp_header * header
Definition:
pp-rtp.h:56
janus_pp_rtp_header::ssrc
uint32_t ssrc
Definition:
pp-rtp.h:46
janus_pp_frame_packet::prev
struct janus_pp_frame_packet * prev
Definition:
pp-rtp.h:69
janus_pp_rtp_header
struct janus_pp_rtp_header janus_pp_rtp_header
janus_pp_rtp_header_extension
struct janus_pp_rtp_header_extension janus_pp_rtp_header_extension
janus_pp_rtp_header::markerbit
uint16_t markerbit
Definition:
pp-rtp.h:34
janus_pp_rtp_header_extension
Definition:
pp-rtp.h:50
janus_pp_frame_packet::ts
uint64_t ts
Definition:
pp-rtp.h:60