1 #ifndef __KINESIS_VIDEO_WEBRTC_CLIENT_PEERCONNECTION_RTP__
2 #define __KINESIS_VIDEO_WEBRTC_CLIENT_PEERCONNECTION_RTP__
12 #define DEFAULT_MTU_SIZE 1200
13 #define DEFAULT_ROLLING_BUFFER_DURATION_IN_SECONDS 3
14 #define HIGHEST_EXPECTED_BIT_RATE (10 * 1024 * 1024)
15 #define DEFAULT_SEQ_NUM_BUFFER_SIZE 1000
16 #define DEFAULT_VALID_INDEX_BUFFER_SIZE 1000
17 #define DEFAULT_PEER_FRAME_BUFFER_SIZE (5 * 1024)
18 #define SRTP_AUTH_TAG_OVERHEAD 10
22 #define HUGE_FRAME_MULTIPLIER 2.5
80 #define CONVERT_TIMESTAMP_TO_RTP(clockRate, pts) ((UINT64) ((DOUBLE) (pts) * ((DOUBLE) (clockRate) / HUNDREDS_OF_NANOS_IN_A_SECOND)))
STATUS findTransceiverBySsrc(PKvsPeerConnection pKvsPeerConnection, PKvsRtpTransceiver *ppTransceiver, UINT32 ssrc)
Definition: Rtp.c:426
STATUS hasTransceiverWithSsrc(PKvsPeerConnection pKvsPeerConnection, UINT32 ssrc)
Definition: Rtp.c:420
STATUS writeRtpPacket(PKvsPeerConnection pKvsPeerConnection, PRtpPacket pRtpPacket)
Definition: Rtp.c:393
STATUS kvsRtpTransceiverSetJitterBuffer(PKvsRtpTransceiver, PJitterBuffer)
Definition: Rtp.c:94
struct RtcRtpSender * PRtcRtpSender
STATUS freeKvsRtpTransceiver(PKvsRtpTransceiver *)
Definition: Rtp.c:58
struct KvsRtpTransceiver * PKvsRtpTransceiver
STATUS createKvsRtpTransceiver(RTC_RTP_TRANSCEIVER_DIRECTION, PKvsPeerConnection, UINT32, UINT32, PRtcMediaStreamTrack, PJitterBuffer, RTC_CODEC, PKvsRtpTransceiver *)
Definition: Rtp.c:7
VOID(* RtcOnFrame)(UINT64, PFrame)
RtcOnFrame is fired everytime a frame is received from the remote peer. It is available via the RtpRe...
Definition: Include.h:989
VOID(* RtcOnPictureLoss)(UINT64)
RtcOnPictureLoss is fired everytime a Picture Loss Indication (PLI) feedback message is received....
Definition: Include.h:1026
VOID(* RtcOnBandwidthEstimation)(UINT64, DOUBLE)
RtcOnBandwidthEstimation is fired everytime a bandwidth estimation value is computed....
Definition: Include.h:998
RTC_RTP_TRANSCEIVER_DIRECTION
RTC_RTP_TRANSCEIVER_DIRECTION indicates direction of a transceiver.
Definition: Include.h:860
RTC_CODEC
The enum specifies the codec types for audio and video tracks.
Definition: Include.h:831
Definition: JitterBuffer.h:20
Definition: PeerConnection.h:72
RtcInboundRtpStreamStats inboundStats
Definition: Rtp.h:71
UINT64 onPictureLossCustomData
Definition: Rtp.h:60
UINT32 rtcpReportsTimerId
Definition: Rtp.h:66
PBYTE peerFrameBuffer
Definition: Rtp.h:63
PKvsPeerConnection pKvsPeerConnection
Definition: Rtp.h:50
RtcOnFrame onFrame
Definition: Rtp.h:56
UINT32 peerFrameBufferSize
Definition: Rtp.h:64
RtcOnBandwidthEstimation onBandwidthEstimation
Definition: Rtp.h:59
UINT64 onFrameCustomData
Definition: Rtp.h:55
RtcOutboundRtpStreamStats outboundStats
Definition: Rtp.h:69
RtcRemoteInboundRtpStreamStats remoteInboundStats
Definition: Rtp.h:70
UINT64 onBandwidthEstimationCustomData
Definition: Rtp.h:58
RtcOnPictureLoss onPictureLoss
Definition: Rtp.h:61
UINT32 jitterBufferSsrc
Definition: Rtp.h:52
PJitterBuffer pJitterBuffer
Definition: Rtp.h:53
RtcRtpSender sender
Definition: Rtp.h:48
RtcRtpTransceiver transceiver
Definition: Rtp.h:47
MUTEX statsLock
Definition: Rtp.h:68
Definition: Retransmitter.h:13
The RTCInboundRtpStreamStats dictionary represents the measurement metrics for the incoming RTP media...
Definition: Stats.h:448
RtcOutboundRtpStreamStats Gathers stats for media stream from the embedded device Note: RTCOutboundRt...
Definition: Stats.h:347
RTCRemoteInboundRtpStreamStats Represents the remote endpoint's measurement metrics for a particular ...
Definition: Stats.h:399
PRtpRollingBuffer packetBuffer
Definition: Rtp.h:34
UINT64 lastKnownFrameCountTime
Definition: Rtp.h:42
UINT64 firstFrameWallClockTime
Definition: Rtp.h:38
UINT16 rtxSequenceNumber
Definition: Rtp.h:28
UINT8 rtxPayloadType
Definition: Rtp.h:26
UINT64 rtpTimeOffset
Definition: Rtp.h:37
PRetransmitter retransmitter
Definition: Rtp.h:35
UINT64 lastKnownFrameCount
Definition: Rtp.h:41
UINT32 rtxSsrc
Definition: Rtp.h:30
RtcMediaStreamTrack track
Definition: Rtp.h:33
UINT32 ssrc
Definition: Rtp.h:29
PayloadArray payloadArray
Definition: Rtp.h:31
UINT8 payloadType
Definition: Rtp.h:25
UINT16 sequenceNumber
Definition: Rtp.h:27
The RTCRtpTransceiver represents a combination of an RTCRtpSender and an RTCRtpReceiver that share a ...
Definition: Include.h:1133
Definition: RtpRollingBuffer.h:13
Definition: RtpPacket.h:87
Definition: RtpPacket.h:99