4 #ifndef __KINESIS_VIDEO_WEBRTC_CLIENT_RTCP_RTCPPACKET_H
5 #define __KINESIS_VIDEO_WEBRTC_CLIENT_RTCP_RTCPPACKET_H
13 #define RTCP_PACKET_LEN_OFFSET 2
14 #define RTCP_PACKET_TYPE_OFFSET 1
16 #define RTCP_PACKET_RRC_BITMASK 0x1F
18 #define RTCP_PACKET_HEADER_LEN 4
19 #define RTCP_NACK_LIST_LEN 8
21 #define RTCP_PACKET_VERSION_VAL 2
23 #define RTCP_PACKET_LEN_WORD_SIZE 4
25 #define RTCP_PACKET_REMB_MIN_SIZE 16
26 #define RTCP_PACKET_REMB_IDENTIFIER_OFFSET 8
27 #define RTCP_PACKET_REMB_MANTISSA_BITMASK 0x3FFFF
29 #define RTCP_PACKET_SENDER_REPORT_MINLEN 24
30 #define RTCP_PACKET_RECEIVER_REPORT_BLOCK_LEN 24
31 #define RTCP_PACKET_RECEIVER_REPORT_MINLEN 4 + RTCP_PACKET_RECEIVER_REPORT_BLOCK_LEN
37 #define RTCP_FIRST_REPORT_DELAY (3 * HUNDREDS_OF_NANOS_IN_A_SECOND)
80 STATUS
rtcpNackListGet(PBYTE, UINT32, PUINT32, PUINT32, PUINT16, PUINT32);
81 STATUS
rembValueGet(PBYTE, UINT32, PDOUBLE, PUINT32, PUINT8);
84 #define NTP_OFFSET 2208988800ULL
85 #define NTP_TIMESCALE 4294967296ULL
90 #define DLSR_TIMESCALE 65536
96 #define MID_NTP(ntp_time) (UINT32)((currentTimeNTP >> 16U) & 0xffffffffULL)
STATUS setRtcpPacketFromBytes(PBYTE, UINT32, PRtcpPacket)
Definition: RtcpPacket.c:5
UINT64 convertTimestampToNTP(UINT64 time100ns)
Definition: RtcpPacket.c:146
STATUS rembValueGet(PBYTE, UINT32, PDOUBLE, PUINT32, PUINT8)
Definition: RtcpPacket.c:109
RTCP_FEEDBACK_MESSAGE_TYPE
Definition: RtcpPacket.h:48
@ RTCP_PSFB_PLI
Definition: RtcpPacket.h:50
@ RTCP_FEEDBACK_MESSAGE_TYPE_NACK
Definition: RtcpPacket.h:49
@ RTCP_PSFB_SLI
Definition: RtcpPacket.h:51
@ RTCP_FEEDBACK_MESSAGE_TYPE_APPLICATION_LAYER_FEEDBACK
Definition: RtcpPacket.h:52
RTCP_PACKET_TYPE
Definition: RtcpPacket.h:39
@ RTCP_PACKET_TYPE_SOURCE_DESCRIPTION
Definition: RtcpPacket.h:43
@ RTCP_PACKET_TYPE_GENERIC_RTP_FEEDBACK
Definition: RtcpPacket.h:44
@ RTCP_PACKET_TYPE_FIR
Definition: RtcpPacket.h:40
@ RTCP_PACKET_TYPE_SENDER_REPORT
Definition: RtcpPacket.h:41
@ RTCP_PACKET_TYPE_PAYLOAD_SPECIFIC_FEEDBACK
Definition: RtcpPacket.h:45
@ RTCP_PACKET_TYPE_RECEIVER_REPORT
Definition: RtcpPacket.h:42
struct RtcpPacket * PRtcpPacket
struct RtcpPacketHeader * PRtcpPacketHeader
STATUS rtcpNackListGet(PBYTE, UINT32, PUINT32, PUINT32, PUINT16, PUINT32)
Definition: RtcpPacket.c:37
STATUS isRembPacket(PBYTE, UINT32)
Definition: RtcpPacket.c:83
Definition: RtcpPacket.h:72
RtcpPacketHeader header
Definition: RtcpPacket.h:73
UINT32 payloadLength
Definition: RtcpPacket.h:76
PBYTE payload
Definition: RtcpPacket.h:75