Go to the source code of this file.
Macros | |
#define | TWCC_TICKS_PER_SECOND (1000000LL / 250) |
#define | MICROSECONDS_PER_SECOND 1000000LL |
#define | MILLISECONDS_PER_SECOND 1000LL |
#define | TWCC_PACKET_LOST_TIME ((UINT64) (-1LL)) |
#define | TWCC_PACKET_UNITIALIZED_TIME 0 |
#define | TWCC_ESTIMATOR_TIME_WINDOW (1 * HUNDREDS_OF_NANOS_IN_A_SECOND) |
#define | TWCC_FB_PACKETCHUNK_SIZE 2 |
#define | IS_TWCC_RUNLEN(packetChunk) ((((packetChunk) >> 15u) & 1u) == 0) |
#define | TWCC_RUNLEN_STATUS_SYMBOL(packetChunk) (((packetChunk) >> 13u) & 3u) |
#define | TWCC_RUNLEN_GET(packetChunk) ((packetChunk) & 0x1fffu) |
#define | TWCC_IS_NOTRECEIVED(statusSymbol) ((statusSymbol) == TWCC_STATUS_SYMBOL_NOTRECEIVED) |
#define | TWCC_ISRECEIVED(statusSymbol) ((statusSymbol) == TWCC_STATUS_SYMBOL_SMALLDELTA || (statusSymbol) == TWCC_STATUS_SYMBOL_LARGEDELTA) |
#define | TWCC_RUNLEN_ISRECEIVED(packetChunk) TWCC_ISRECEIVED(TWCC_RUNLEN_STATUS_SYMBOL(packetChunk)) |
#define | TWCC_STATUSVECTOR_IS_2BIT(packetChunk) (((packetChunk) >> 14u) & 1u) |
#define | TWCC_STATUSVECTOR_SSIZE(packetChunk) (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 2u : 1u) |
#define | TWCC_STATUSVECTOR_SMASK(packetChunk) (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 2u : 1u) |
#define | TWCC_STATUSVECTOR_STATUS(packetChunk, i) (((packetChunk) >> (14u - (i) * TWCC_STATUSVECTOR_SSIZE(packetChunk))) & TWCC_STATUSVECTOR_SMASK(packetChunk)) |
#define | TWCC_STATUSVECTOR_COUNT(packetChunk) (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 7 : 14) |
#define | TWCC_PACKET_STATUS_COUNT(payload) (getUnalignedInt16BigEndian((payload) + 10)) |
Enumerations | |
enum | TWCC_STATUS_SYMBOL { TWCC_STATUS_SYMBOL_NOTRECEIVED = 0 , TWCC_STATUS_SYMBOL_SMALLDELTA , TWCC_STATUS_SYMBOL_LARGEDELTA } |
Functions | |
STATUS | onRtcpPacket (PKvsPeerConnection, PBYTE, UINT32) |
STATUS | onRtcpRembPacket (PRtcpPacket, PKvsPeerConnection) |
STATUS | onRtcpPLIPacket (PRtcpPacket, PKvsPeerConnection) |
STATUS | parseRtcpTwccPacket (PRtcpPacket, PTwccManager) |
STATUS | onRtcpTwccPacket (PRtcpPacket, PKvsPeerConnection) |
STATUS | updateTwccHashTable (PTwccManager, PINT64, PUINT64, PUINT64, PUINT64, PUINT64) |
#define IS_TWCC_RUNLEN | ( | packetChunk | ) | ((((packetChunk) >> 15u) & 1u) == 0) |
#define MICROSECONDS_PER_SECOND 1000000LL |
#define MILLISECONDS_PER_SECOND 1000LL |
#define TWCC_ESTIMATOR_TIME_WINDOW (1 * HUNDREDS_OF_NANOS_IN_A_SECOND) |
#define TWCC_FB_PACKETCHUNK_SIZE 2 |
#define TWCC_IS_NOTRECEIVED | ( | statusSymbol | ) | ((statusSymbol) == TWCC_STATUS_SYMBOL_NOTRECEIVED) |
#define TWCC_ISRECEIVED | ( | statusSymbol | ) | ((statusSymbol) == TWCC_STATUS_SYMBOL_SMALLDELTA || (statusSymbol) == TWCC_STATUS_SYMBOL_LARGEDELTA) |
#define TWCC_PACKET_LOST_TIME ((UINT64) (-1LL)) |
#define TWCC_PACKET_STATUS_COUNT | ( | payload | ) | (getUnalignedInt16BigEndian((payload) + 10)) |
#define TWCC_PACKET_UNITIALIZED_TIME 0 |
#define TWCC_RUNLEN_GET | ( | packetChunk | ) | ((packetChunk) & 0x1fffu) |
#define TWCC_RUNLEN_ISRECEIVED | ( | packetChunk | ) | TWCC_ISRECEIVED(TWCC_RUNLEN_STATUS_SYMBOL(packetChunk)) |
#define TWCC_RUNLEN_STATUS_SYMBOL | ( | packetChunk | ) | (((packetChunk) >> 13u) & 3u) |
#define TWCC_STATUSVECTOR_COUNT | ( | packetChunk | ) | (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 7 : 14) |
#define TWCC_STATUSVECTOR_IS_2BIT | ( | packetChunk | ) | (((packetChunk) >> 14u) & 1u) |
#define TWCC_STATUSVECTOR_SMASK | ( | packetChunk | ) | (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 2u : 1u) |
#define TWCC_STATUSVECTOR_SSIZE | ( | packetChunk | ) | (TWCC_STATUSVECTOR_IS_2BIT(packetChunk) ? 2u : 1u) |
#define TWCC_STATUSVECTOR_STATUS | ( | packetChunk, | |
i | |||
) | (((packetChunk) >> (14u - (i) * TWCC_STATUSVECTOR_SSIZE(packetChunk))) & TWCC_STATUSVECTOR_SMASK(packetChunk)) |
#define TWCC_TICKS_PER_SECOND (1000000LL / 250) |
enum TWCC_STATUS_SYMBOL |
STATUS onRtcpPacket | ( | PKvsPeerConnection | pKvsPeerConnection, |
PBYTE | pBuff, | ||
UINT32 | buffLen | ||
) |
STATUS onRtcpPLIPacket | ( | PRtcpPacket | pRtcpPacket, |
PKvsPeerConnection | pKvsPeerConnection | ||
) |
STATUS onRtcpRembPacket | ( | PRtcpPacket | pRtcpPacket, |
PKvsPeerConnection | pKvsPeerConnection | ||
) |
STATUS onRtcpTwccPacket | ( | PRtcpPacket | pRtcpPacket, |
PKvsPeerConnection | pKvsPeerConnection | ||
) |
STATUS parseRtcpTwccPacket | ( | PRtcpPacket | pRtcpPacket, |
PTwccManager | pTwccManager | ||
) |
STATUS updateTwccHashTable | ( | PTwccManager | pTwccManager, |
PINT64 | duration, | ||
PUINT64 | receivedBytes, | ||
PUINT64 | receivedPackets, | ||
PUINT64 | sentBytes, | ||
PUINT64 | sentPackets | ||
) |