Amazon Kinesis Webrtc C SDK
StatusCodes
Collaboration diagram for StatusCodes:

Modules

 SessionDescriptionInitStatusCodes
 Session description init related status codes.
 
 SDPStatusCodes
 SDP related status codes.
 
 STUNStatusCodes
 STUN related status codes.
 
 NetworkingStatusCodes
 Networking related status codes.
 
 DTLSStatusCodes
 DTLS related status codes.
 
 ICEStatusCodes
 ICE/TURN related status codes.
 
 SRTPStatusCodes
 SRTP related status codes.
 
 RTPStatusCodes
 RTP related status codes.
 
 SignalingStatusCodes
 Signaling related status codes.
 
 PeerConnectionStatusCodes
 Peer connection related status codes.
 
 SCTPStatusCodes
 SCTP related status codes.
 
 RTCPStatusCodes
 RTCP related status codes.
 
 RollingBufferStatusCodes
 Rolling buffer related status codes.
 
 NameLengths
 Lengths of different character arrays.
 
 StructureVersions
 Structure version macros.
 
 Counts
 Count related macros.
 
 Timeouts
 Timeouts related macros.
 
 PublicEnums
 Public Enums.
 
 Callbacks
 Extra callbacks definitions.
 
 PublicStructures
 Structures available for use by applications.
 
 StatsStructures
 Metrics/Stats Related structures.
 
 PublicMemberFunctions
 Public functions.
 

Macros

#define STATUS_WEBRTC_BASE   0x55000000
 
#define SIGNALING_VALID_NAME_CHARS   "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_.-"
 
#define MAX_RTP_SEQUENCE_NUM   ((UINT32) MAX_UINT16)
 
#define MAX_RTP_TIMESTAMP   ((UINT32) MAX_UINT32)
 
#define KINESIS_VIDEO_STUN_URL_POSTFIX   "amazonaws.com"
 
#define KINESIS_VIDEO_STUN_URL_POSTFIX_CN   "amazonaws.com.cn"
 
#define KINESIS_VIDEO_STUN_URL   "stun:stun.kinesisvideo.%s.%s:443"
 
#define KINESIS_VIDEO_STUN_URL_WITHOUT_PORT   "stun.kinesisvideo.%s.%s"
 
#define SIGNALING_DEFAULT_SSL_PORT   DEFAULT_SSL_PORT_NUMBER
 
#define SIGNALING_DEFAULT_NON_SSL_PORT   DEFAULT_NON_SSL_PORT_NUMBER
 
#define CHK_LOG_ERR_NV(condition)   DLOGE("CHK_LOG_ERR_NV has been replaced with CHK_LOG_ERR");
 
#define SIGNALING_STATES_DEFAULT_RETRY_COUNT   1
 
#define SIGNALING_DEFAULT_API_CALL_CACHE_TTL   (10 * HUNDREDS_OF_NANOS_IN_AN_HOUR)
 
#define SIGNALING_API_CALL_CACHE_TTL_SENTINEL_VALUE   0
 
#define CREATE_SIGNALING_CLIENT_RETRY_ATTEMPTS_SENTINEL_VALUE   -1
 
#define INVALID_SIGNALING_CLIENT_HANDLE_VALUE   ((SIGNALING_CLIENT_HANDLE) INVALID_PIC_HANDLE_VALUE)
 This is a sentinel indicating an invalid handle value. More...
 
#define IS_VALID_SIGNALING_CLIENT_HANDLE(h)   ((h) != INVALID_SIGNALING_CLIENT_HANDLE_VALUE)
 Checks for the handle validity. More...
 

Typedefs

typedef UINT64 SIGNALING_CLIENT_HANDLE
 Definition of the signaling client handle. More...
 
typedef SIGNALING_CLIENT_HANDLEPSIGNALING_CLIENT_HANDLE
 

Variables

CHAR __RtcDataChannel::name [255+1]
 Define name of data channel. Max length is 256 characters. More...
 
UINT32 __RtcDataChannel::id
 
UINT32 RtcPeerConnection::version
 Version of peer connection structure. More...
 
RTC_CODEC RtcMediaStreamTrack::codec
 non-standard, codec that the track is using More...
 
CHAR RtcMediaStreamTrack::trackId [255+1]
 non-standard, id of this individual track More...
 
CHAR RtcMediaStreamTrack::streamId [255+1]
 non-standard, id of the MediaStream this track belongs too More...
 
MEDIA_STREAM_TRACK_KIND RtcMediaStreamTrack::kind
 Kind of track - audio or video. More...
 
RtcMediaStreamTrack RtcRtpReceiver::track
 Track with details of codec, trackId, streamId and track kind. More...
 
RTC_RTP_TRANSCEIVER_DIRECTION RtcRtpTransceiver::direction
 Transceiver direction. More...
 
RtcRtpReceiver RtcRtpTransceiver::receiver
 RtcRtpReceiver that has track specific information. More...
 
CHAR RtcIceServer::urls [256+1]
 URL of STUN/TURN Server. More...
 
CHAR RtcIceServer::username [256+1]
 Username to be used with TURN server. More...
 
CHAR RtcIceServer::credential [256+1]
 Password to be used with TURN server. More...
 
PBYTE RtcCertificate::pCertificate
 Certificate bits. More...
 
UINT32 RtcCertificate::certificateSize
 Size of certificate in bytes (optional) More...
 
PBYTE RtcCertificate::pPrivateKey
 Private key bit. More...
 
UINT32 RtcCertificate::privateKeySize
 Size of private key in bytes (optional) More...
 
UINT16 KvsRtcConfiguration::maximumTransmissionUnit
 
UINT32 KvsRtcConfiguration::iceLocalCandidateGatheringTimeout
 
UINT32 KvsRtcConfiguration::iceConnectionCheckTimeout
 
UINT32 KvsRtcConfiguration::iceCandidateNominationTimeout
 
UINT32 KvsRtcConfiguration::iceConnectionCheckPollingInterval
 
INT32 KvsRtcConfiguration::generatedCertificateBits
 
BOOL KvsRtcConfiguration::generateRSACertificate
 
UINT32 KvsRtcConfiguration::sendBufSize
 Socket send buffer length. Item larger then this size will get dropped. Use system default if 0. More...
 
UINT64 KvsRtcConfiguration::filterCustomData
 Custom Data that can be populated by the developer while developing filter function. More...
 
IceSetInterfaceFilterFunc KvsRtcConfiguration::iceSetInterfaceFilterFunc
 
BOOL KvsRtcConfiguration::disableSenderSideBandwidthEstimation
 
ICE_TRANSPORT_POLICY RtcConfiguration::iceTransportPolicy
 Indicates which candidates the ICE Agent is allowed to use. More...
 
RtcIceServer RtcConfiguration::iceServers [(5 *4+1)]
 Servers available to be used by ICE, such as STUN and TURN servers. More...
 
KvsRtcConfiguration RtcConfiguration::kvsRtcConfiguration
 Non-standard configuration options. More...
 
RtcCertificate RtcConfiguration::certificates [3]
 
SDP_TYPE RtcSessionDescriptionInit::type
 Indicates an offer/answer SDP type. More...
 
BOOL RtcSessionDescriptionInit::useTrickleIce
 Indicates if an offer should set trickle ice. More...
 
CHAR RtcSessionDescriptionInit::sdp [25000+1]
 
CHAR RtcIceCandidateInit::candidate [255+1]
 
UINT32 SignalingMessage::version
 Current version of the structure. More...
 
SIGNALING_MESSAGE_TYPE SignalingMessage::messageType
 Type of signaling message. More...
 
CHAR SignalingMessage::correlationId [256+1]
 Correlation Id string. More...
 
CHAR SignalingMessage::peerClientId [256+1]
 Sender client id. More...
 
UINT32 SignalingMessage::payloadLen
 Optional payload length. If 0, the length will be calculated. More...
 
CHAR SignalingMessage::payload [(10 *1024)+1]
 Actual signaling message payload. More...
 
SignalingMessage ReceivedSignalingMessage::signalingMessage
 
SERVICE_CALL_RESULT ReceivedSignalingMessage::statusCode
 Response status code. More...
 
CHAR ReceivedSignalingMessage::errorType [256+1]
 Error type of the signaling message. More...
 
CHAR ReceivedSignalingMessage::description [1024+1]
 Optional description of the message. More...
 
UINT32 SignalingClientInfo::version
 Version of the structure. More...
 
CHAR SignalingClientInfo::clientId [256+1]
 Client id to use. Defines if the client is a producer/consumer. More...
 
UINT32 SignalingClientInfo::loggingLevel
 
PCHAR SignalingClientInfo::cacheFilePath
 
KvsRetryStrategyCallbacks SignalingClientInfo::signalingRetryStrategyCallbacks
 Retry strategy callbacks used while creating signaling client. More...
 
INT32 SignalingClientInfo::signalingClientCreationMaxRetryAttempts
 Max attempts to create signaling client before returning error to the caller. More...
 
UINT32 SignalingClientInfo::stateMachineRetryCountReadOnly
 
UINT32 SignalingClientInfo::signalingMessagesMinimumThreads
 Unused field post v1.8.1. More...
 
UINT32 SignalingClientInfo::signalingMessagesMaximumThreads
 Unused field post v1.8.1. More...
 
UINT32 ChannelInfo::version
 Version of the structure. More...
 
PCHAR ChannelInfo::pChannelName
 Name of the signaling channel name. Maximum length is defined by MAX_CHANNEL_NAME_LEN + 1. More...
 
PCHAR ChannelInfo::pChannelArn
 
PCHAR ChannelInfo::pStorageStreamArn
 
PCHAR ChannelInfo::pRegion
 
PCHAR ChannelInfo::pControlPlaneUrl
 
PCHAR ChannelInfo::pCertPath
 Optional certificate path. Maximum length is defined by MAX_PATH_LEN+1. More...
 
PCHAR ChannelInfo::pUserAgentPostfix
 
PCHAR ChannelInfo::pCustomUserAgent
 Optional custom user agent name. Maximum length is defined by MAX_USER_AGENT_LEN+1. More...
 
PCHAR ChannelInfo::pUserAgent
 Combined user agent. Maximum length is defined by MAX_USER_AGENT_LEN+1. More...
 
PCHAR ChannelInfo::pKmsKeyId
 Optional KMS key id ARN. Maximum length is defined by MAX_ARN_LEN+1. More...
 
SIGNALING_CHANNEL_TYPE ChannelInfo::channelType
 Channel type when creating. More...
 
SIGNALING_CHANNEL_ROLE_TYPE ChannelInfo::channelRoleType
 Channel role type for the endpoint - master/viewer. More...
 
BOOL ChannelInfo::reserved
 Reserved field for compatibility. More...
 
UINT64 ChannelInfo::cachingPeriod
 
BOOL ChannelInfo::retry
 Flag determines if a retry of the network calls is to be done on errors up to max retry times. More...
 
BOOL ChannelInfo::reconnect
 Flag determines if reconnection should be attempted on connection drop. More...
 
UINT64 ChannelInfo::messageTtl
 
UINT32 ChannelInfo::tagCount
 Number of tags associated with the stream. More...
 
PTag ChannelInfo::pTags
 Stream tags array. More...
 
SIGNALING_API_CALL_CACHE_TYPE ChannelInfo::cachingPolicy
 Backend API call caching policy. More...
 
BOOL ChannelInfo::asyncIceServerConfig
 
BOOL ChannelInfo::useMediaStorage
 use the feature of media storage. More...
 
UINT32 IceConfigInfo::version
 Version of the struct. More...
 
UINT64 IceConfigInfo::ttl
 TTL of the configuration is 100ns. More...
 
UINT32 IceConfigInfo::uriCount
 Number of Ice URI objects. More...
 
CHAR IceConfigInfo::uris [4][256+1]
 List of Ice server URIs. More...
 
CHAR IceConfigInfo::userName [256+1]
 Username for the server. More...
 
CHAR IceConfigInfo::password [256+1]
 Password for the server. More...
 
BOOL MediaStorageConfig::storageStatus
 Indicate the association between channelArn and storageStreamArn. More...
 
CHAR MediaStorageConfig::storageStreamArn [MAX_ARN_LEN+1]
 The arn of kvs stream, optional if you already associate signaling channel with stream. More...
 
UINT32 SignalingClientCallbacks::version
 Current version of the structure. More...
 
UINT64 SignalingClientCallbacks::customData
 Custom data passed by the caller. More...
 
SignalingClientMessageReceivedFunc SignalingClientCallbacks::messageReceivedFn
 Callback registration for received SDP. More...
 
SignalingClientErrorReportFunc SignalingClientCallbacks::errorReportFn
 Error reporting function. This is an optional member. More...
 
SignalingClientStateChangedFunc SignalingClientCallbacks::stateChangeFn
 Signaling client state change callback. More...
 
GetCurrentTimeFunc SignalingClientCallbacks::getCurrentTimeFn
 callback to override system time, used for testing clock skew More...
 
UINT32 SignalingChannelDescription::version
 Version of the SignalingChannelDescription struct. More...
 
CHAR SignalingChannelDescription::channelArn [MAX_ARN_LEN+1]
 Channel Amazon Resource Name (ARN) More...
 
CHAR SignalingChannelDescription::channelName [256+1]
 Signaling channel name. Should be unique per AWS account. More...
 
SIGNALING_CHANNEL_STATUS SignalingChannelDescription::channelStatus
 Current channel status as reported by the service. More...
 
SIGNALING_CHANNEL_TYPE SignalingChannelDescription::channelType
 Channel type as reported by the service. More...
 
CHAR SignalingChannelDescription::updateVersion [MAX_UPDATE_VERSION_LEN+1]
 
UINT64 SignalingChannelDescription::messageTtl
 
UINT64 SignalingChannelDescription::creationTime
 Timestamp of when the channel gets created. More...
 
RTC_RTP_TRANSCEIVER_DIRECTION RtcRtpTransceiverInit::direction
 Transceiver direction - SENDONLY, RECVONLY, SENDRECV. More...
 
BOOL RtcDataChannelInit::ordered
 Decides the order in which data is sent. If true, data is sent in order. More...
 
NullableUint16 RtcDataChannelInit::maxPacketLifeTime
 
NullableUint16 RtcDataChannelInit::maxRetransmits
 Control number of times a channel retransmits data if not delivered successfully. More...
 
CHAR RtcDataChannelInit::protocol [255+1]
 Sub protocol name for the channel. More...
 
BOOL RtcDataChannelInit::negotiated
 
UINT32 RtcIceMetrics::version
 Structure version. More...
 
RtcIceServerStats RtcIceMetrics::rtcIceServerStats
 Server related stats. Reference in Stats.h. More...
 
RtcIceCandidateStats RtcIceMetrics::localRtcIceCandidateStats
 Local candidate stats. Reference in Stats.h. More...
 
RtcIceCandidateStats RtcIceMetrics::remoteRtcIceCandidateStats
 Remote candidate stats. Reference in Stats.h. More...
 
RtcIceCandidatePairStats RtcIceMetrics::rtcIceCandidatePairStats
 Candidate pair stats. Reference in Stats.h. More...
 
UINT32 RtcStreamMetrics::version
 Structure version. More...
 
RtcRemoteInboundRtpStreamStats RtcStreamMetrics::rtcInboundStats
 Inbound RTP Stats. Reference in Stats.h. More...
 
RtcOutboundRtpStreamStats RtcStreamMetrics::rtcOutboundStats
 Outbound RTP Stats. Reference in Stats.h. More...
 
RtcTransportStats RtcStreamMetrics::rtcTransportStats
 Transport stats. Reference in Stats.h. More...
 
UINT32 SignalingClientMetrics::version
 Structure version. More...
 
UINT64 SignalingClientMetrics::signalingStartTime
 
UINT64 SignalingClientMetrics::signalingEndTime
 
UINT64 SignalingClientMetrics::signalingCallTime
 
SignalingClientStats SignalingClientMetrics::signalingClientStats
 Signaling client metrics stats. Reference in Stats.h. More...
 
UINT32 KvsIceAgentMetrics::version
 Structure version. More...
 
KvsIceAgentStats KvsIceAgentMetrics::kvsIceAgentStats
 ICE agent metrics. Reference in Stats.h. More...
 
UINT32 PeerConnectionMetrics::version
 Structure version. More...
 
PeerConnectionStats PeerConnectionMetrics::peerConnectionStats
 Peer connection metrics stats. Reference in Stats.h. More...
 
UINT64 RtcStats::timestamp
 Timestamp of request for stats. More...
 
RTC_STATS_TYPE RtcStats::requestedTypeOfStats
 Type of stats requested. Set to RTC_ALL to get all supported stats. More...
 
RtcStatsObject RtcStats::rtcStatsObject
 Object that is populated by the SDK on request. More...
 
UINT32 RtcEncoderStats::targetBitrate
 
UINT16 RtcEncoderStats::width
 Only valid for video. More...
 
UINT16 RtcEncoderStats::height
 Only valid for video. More...
 
UINT16 RtcEncoderStats::bitDepth
 Only valid for video. bits per pixel (24, 30, 36), note it's not per channel but per pixel. More...
 
UINT32 RtcEncoderStats::encodeTimeMsec
 milliseconds spent encoding frames since last encoder update More...
 
BOOL RtcEncoderStats::voiceActivity
 Only valid for audio. TRUE if last audio packet contained voice. More...
 
DOMString RtcEncoderStats::encoderImplementation
 encoder name eg "libvpx" or "x264" More...
 

Detailed Description

WEBRTC related status codes. Each value is an positive integer formed by adding a base integer inticating the category to an index. Users may run scripts/parse_status.py to print a list of all status codes and their hex value.

Macro Definition Documentation

◆ CHK_LOG_ERR_NV

#define CHK_LOG_ERR_NV (   condition)    DLOGE("CHK_LOG_ERR_NV has been replaced with CHK_LOG_ERR");

◆ CREATE_SIGNALING_CLIENT_RETRY_ATTEMPTS_SENTINEL_VALUE

#define CREATE_SIGNALING_CLIENT_RETRY_ATTEMPTS_SENTINEL_VALUE   -1

Signaling caching policy TTL period sentinel value which will force the default period.

◆ INVALID_SIGNALING_CLIENT_HANDLE_VALUE

#define INVALID_SIGNALING_CLIENT_HANDLE_VALUE   ((SIGNALING_CLIENT_HANDLE) INVALID_PIC_HANDLE_VALUE)

This is a sentinel indicating an invalid handle value.

◆ IS_VALID_SIGNALING_CLIENT_HANDLE

#define IS_VALID_SIGNALING_CLIENT_HANDLE (   h)    ((h) != INVALID_SIGNALING_CLIENT_HANDLE_VALUE)

Checks for the handle validity.

◆ KINESIS_VIDEO_STUN_URL

#define KINESIS_VIDEO_STUN_URL   "stun:stun.kinesisvideo.%s.%s:443"

◆ KINESIS_VIDEO_STUN_URL_POSTFIX

#define KINESIS_VIDEO_STUN_URL_POSTFIX   "amazonaws.com"

Parameterized string for KVS STUN Server

◆ KINESIS_VIDEO_STUN_URL_POSTFIX_CN

#define KINESIS_VIDEO_STUN_URL_POSTFIX_CN   "amazonaws.com.cn"

◆ KINESIS_VIDEO_STUN_URL_WITHOUT_PORT

#define KINESIS_VIDEO_STUN_URL_WITHOUT_PORT   "stun.kinesisvideo.%s.%s"

◆ MAX_RTP_SEQUENCE_NUM

#define MAX_RTP_SEQUENCE_NUM   ((UINT32) MAX_UINT16)

Maximum sequence number in rtp packet/jitter buffer

◆ MAX_RTP_TIMESTAMP

#define MAX_RTP_TIMESTAMP   ((UINT32) MAX_UINT32)

Maximum timestamp in rtp packet/jitter buffer

◆ SIGNALING_API_CALL_CACHE_TTL_SENTINEL_VALUE

#define SIGNALING_API_CALL_CACHE_TTL_SENTINEL_VALUE   0

Signaling caching policy TTL period sentinel value which will force the default period.

◆ SIGNALING_DEFAULT_API_CALL_CACHE_TTL

#define SIGNALING_DEFAULT_API_CALL_CACHE_TTL   (10 * HUNDREDS_OF_NANOS_IN_AN_HOUR)

Signaling caching policy default TTL period

◆ SIGNALING_DEFAULT_NON_SSL_PORT

#define SIGNALING_DEFAULT_NON_SSL_PORT   DEFAULT_NON_SSL_PORT_NUMBER

Default signaling non SSL port

◆ SIGNALING_DEFAULT_SSL_PORT

#define SIGNALING_DEFAULT_SSL_PORT   DEFAULT_SSL_PORT_NUMBER

Default signaling SSL port

◆ SIGNALING_STATES_DEFAULT_RETRY_COUNT

#define SIGNALING_STATES_DEFAULT_RETRY_COUNT   1

Signaling states default retry count. This will evaluate to the last call being made 20 seconds in which will hit a timeout first.

◆ SIGNALING_VALID_NAME_CHARS

#define SIGNALING_VALID_NAME_CHARS   "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_.-"

Valid ASCII characters for signaling channel name

◆ STATUS_WEBRTC_BASE

#define STATUS_WEBRTC_BASE   0x55000000

Typedef Documentation

◆ PSIGNALING_CLIENT_HANDLE

◆ SIGNALING_CLIENT_HANDLE

typedef UINT64 SIGNALING_CLIENT_HANDLE

Definition of the signaling client handle.

Variable Documentation

◆ asyncIceServerConfig

BOOL ChannelInfo::asyncIceServerConfig

This parameter has no effect any longer. All ICE config retrieving is done reactively when needed which will simplify the processing and will help with issues on a small footprint platforms

◆ bitDepth

UINT16 RtcEncoderStats::bitDepth

Only valid for video. bits per pixel (24, 30, 36), note it's not per channel but per pixel.

◆ cacheFilePath

PCHAR SignalingClientInfo::cacheFilePath

File cache path override. The default path is "./.SignalingCache_vN" which might not work for devices which have read only partition where the code is located. For default value or when file caching is not being used this value can be NULL or point to an EMPTY_STRING.

◆ cachingPeriod

UINT64 ChannelInfo::cachingPeriod

Endpoint caching TTL. For no caching policy this param will be ignored. For caching policies the default value will be used if this parameter is 0 (SIGNALING_API_CALL_CACHE_TTL_SENTINEL_VALUE).

◆ cachingPolicy

SIGNALING_API_CALL_CACHE_TYPE ChannelInfo::cachingPolicy

Backend API call caching policy.

◆ candidate

CHAR RtcIceCandidateInit::candidate[255+1]

Candidate information containing details such as protocol (udp/tcp), IP Address, priority and port

◆ certificates

RtcCertificate RtcConfiguration::certificates[3]

Set of certificates that the RtcPeerConnection uses to authenticate. Although any given DTLS connection will use only one certificate, this attribute allows the caller to provide multiple certificates that support different algorithms.

If this value is absent, then a default set of certificates is generated for each RtcPeerConnection.

An absent value is determined by the certificate pointing to NULL

Doc: https://www.w3.org/TR/webrtc/#dom-rtcconfiguration-certificates

!!!!!!!!!! IMPORTANT !!!!!!!!!! It is recommended to rotate the certificates often - preferably for every peer connection to avoid a compromised client weakening the security of the new connections.

NOTE: The certificates, if specified, can be freed after the peer connection create call

◆ certificateSize

UINT32 RtcCertificate::certificateSize

Size of certificate in bytes (optional)

◆ channelArn

CHAR SignalingChannelDescription::channelArn[MAX_ARN_LEN+1]

Channel Amazon Resource Name (ARN)

◆ channelName

CHAR SignalingChannelDescription::channelName[256+1]

Signaling channel name. Should be unique per AWS account.

◆ channelRoleType

SIGNALING_CHANNEL_ROLE_TYPE ChannelInfo::channelRoleType

Channel role type for the endpoint - master/viewer.

◆ channelStatus

SIGNALING_CHANNEL_STATUS SignalingChannelDescription::channelStatus

Current channel status as reported by the service.

◆ channelType [1/2]

SIGNALING_CHANNEL_TYPE ChannelInfo::channelType

Channel type when creating.

◆ channelType [2/2]

SIGNALING_CHANNEL_TYPE SignalingChannelDescription::channelType

Channel type as reported by the service.

◆ clientId

CHAR SignalingClientInfo::clientId[256+1]

Client id to use. Defines if the client is a producer/consumer.

◆ codec

RTC_CODEC RtcMediaStreamTrack::codec

non-standard, codec that the track is using

◆ correlationId

CHAR SignalingMessage::correlationId[256+1]

Correlation Id string.

◆ creationTime

UINT64 SignalingChannelDescription::creationTime

Timestamp of when the channel gets created.

◆ credential

CHAR RtcIceServer::credential[256+1]

Password to be used with TURN server.

◆ customData

UINT64 SignalingClientCallbacks::customData

Custom data passed by the caller.

◆ description

CHAR ReceivedSignalingMessage::description[1024+1]

Optional description of the message.

◆ direction [1/2]

RTC_RTP_TRANSCEIVER_DIRECTION RtcRtpTransceiver::direction

Transceiver direction.

◆ direction [2/2]

RTC_RTP_TRANSCEIVER_DIRECTION RtcRtpTransceiverInit::direction

Transceiver direction - SENDONLY, RECVONLY, SENDRECV.

◆ disableSenderSideBandwidthEstimation

BOOL KvsRtcConfiguration::disableSenderSideBandwidthEstimation

Disable TWCC feedback based sender bandwidth estimation, enabled by default. You want to set this to TRUE if you are on a very stable connection and want to save 1.2MB of memory

◆ encoderImplementation

DOMString RtcEncoderStats::encoderImplementation

encoder name eg "libvpx" or "x264"

◆ encodeTimeMsec

UINT32 RtcEncoderStats::encodeTimeMsec

milliseconds spent encoding frames since last encoder update

◆ errorReportFn

SignalingClientErrorReportFunc SignalingClientCallbacks::errorReportFn

Error reporting function. This is an optional member.

◆ errorType

CHAR ReceivedSignalingMessage::errorType[256+1]

Error type of the signaling message.

◆ filterCustomData

UINT64 KvsRtcConfiguration::filterCustomData

Custom Data that can be populated by the developer while developing filter function.

◆ generatedCertificateBits

INT32 KvsRtcConfiguration::generatedCertificateBits

GeneratedCertificateBits controls the amount of bits the locally generated self-signed certificate uses A smaller amount of bits may result in less CPU usage on startup, but will cause a weaker certificate to be generated If set to 0 the default GENERATED_CERTIFICATE_BITS will be used

◆ generateRSACertificate

BOOL KvsRtcConfiguration::generateRSACertificate

GenerateRSACertificate controls if an ECDSA or RSA certificate is generated. By default we generate an ECDSA certificate but some platforms may not support them.

◆ getCurrentTimeFn

GetCurrentTimeFunc SignalingClientCallbacks::getCurrentTimeFn

callback to override system time, used for testing clock skew

◆ height

UINT16 RtcEncoderStats::height

Only valid for video.

◆ iceCandidateNominationTimeout

UINT32 KvsRtcConfiguration::iceCandidateNominationTimeout

If client is ice controlling, this is the timeout for receiving bind response of requests that has USE_CANDIDATE attribute. If client is ice controlled, this is the timeout for receiving binding request that has USE_CANDIDATE attribute after connection check is done. Use default value if 0.

◆ iceConnectionCheckPollingInterval

UINT32 KvsRtcConfiguration::iceConnectionCheckPollingInterval

Ta in https://datatracker.ietf.org/doc/html/rfc8445#section-14.2 rate at which binding request packets are sent during connection check. Use default interval if 0.

◆ iceConnectionCheckTimeout

UINT32 KvsRtcConfiguration::iceConnectionCheckTimeout

Maximum time allowed waiting for at least one ice candidate pair to receive binding response from the peer. Use default value if 0.

◆ iceLocalCandidateGatheringTimeout

UINT32 KvsRtcConfiguration::iceLocalCandidateGatheringTimeout

Maximum time ice will wait for gathering STUN and RELAY candidates. Once it's reached, ice will proceed with whatever candidate it current has. Use default value if 0.

◆ iceServers

RtcIceServer RtcConfiguration::iceServers[(5 * 4+1)]

Servers available to be used by ICE, such as STUN and TURN servers.

◆ iceSetInterfaceFilterFunc

IceSetInterfaceFilterFunc KvsRtcConfiguration::iceSetInterfaceFilterFunc

Filter function callback to be set when the developer would like to whitelist/blacklist specific network interfaces

◆ iceTransportPolicy

ICE_TRANSPORT_POLICY RtcConfiguration::iceTransportPolicy

Indicates which candidates the ICE Agent is allowed to use.

◆ id

UINT32 __RtcDataChannel::id

Read only field. Setting this in the application has no effect. This field is populated with the id set by the peer connection's createDataChannel() call or the channel id is set in createDataChannel() on embedded end.

◆ kind

MEDIA_STREAM_TRACK_KIND RtcMediaStreamTrack::kind

Kind of track - audio or video.

◆ kvsIceAgentStats

KvsIceAgentStats KvsIceAgentMetrics::kvsIceAgentStats

ICE agent metrics. Reference in Stats.h.

◆ kvsRtcConfiguration

KvsRtcConfiguration RtcConfiguration::kvsRtcConfiguration

Non-standard configuration options.

◆ localRtcIceCandidateStats

RtcIceCandidateStats RtcIceMetrics::localRtcIceCandidateStats

Local candidate stats. Reference in Stats.h.

◆ loggingLevel

UINT32 SignalingClientInfo::loggingLevel

Verbosity level for the logging. One of LOG_LEVEL_XXX values or the default verbosity will be assumed. Currently, default value is LOG_LEVEL_WARNING

◆ maximumTransmissionUnit

UINT16 KvsRtcConfiguration::maximumTransmissionUnit

Controls the size of the largest packet the WebRTC SDK will send Some networks may drop packets if they exceed a certain size, and is useful in those conditions. A smaller MTU will incur higher bandwidth usage however since more packets will be generated with smaller payloads. If unset DEFAULT_MTU_SIZE will be used

◆ maxPacketLifeTime

NullableUint16 RtcDataChannelInit::maxPacketLifeTime

Limits the time (in milliseconds) during which the channel will (re)transmit data if not acknowledged. This value may be clamped if it exceeds the maximum value supported by the user agent.

◆ maxRetransmits

NullableUint16 RtcDataChannelInit::maxRetransmits

Control number of times a channel retransmits data if not delivered successfully.

◆ messageReceivedFn

SignalingClientMessageReceivedFunc SignalingClientCallbacks::messageReceivedFn

Callback registration for received SDP.

◆ messageTtl [1/2]

UINT64 ChannelInfo::messageTtl

The message TTL. Must be in the range of 5ns and 120ns. Specifying zero will default to 60ns

◆ messageTtl [2/2]

UINT64 SignalingChannelDescription::messageTtl

The period of time a signaling channel retains underlived messages before they are discarded The values are in the range of 5 and 120 seconds

◆ messageType

SIGNALING_MESSAGE_TYPE SignalingMessage::messageType

Type of signaling message.

◆ name

CHAR __RtcDataChannel::name[255+1]

Define name of data channel. Max length is 256 characters.

◆ negotiated

BOOL RtcDataChannelInit::negotiated

If set to true, it is up to the application to negotiate the channel and create an RTCDataChannel object with the same id as the other peer.

◆ ordered

BOOL RtcDataChannelInit::ordered

Decides the order in which data is sent. If true, data is sent in order.

◆ password

CHAR IceConfigInfo::password[256+1]

Password for the server.

◆ payload

CHAR SignalingMessage::payload[(10 *1024)+1]

Actual signaling message payload.

◆ payloadLen

UINT32 SignalingMessage::payloadLen

Optional payload length. If 0, the length will be calculated.

◆ pCertificate

PBYTE RtcCertificate::pCertificate

Certificate bits.

◆ pCertPath

PCHAR ChannelInfo::pCertPath

Optional certificate path. Maximum length is defined by MAX_PATH_LEN+1.

◆ pChannelArn

PCHAR ChannelInfo::pChannelArn

Channel Amazon Resource Name (ARN). This is an optional parameter Maximum length is defined by MAX_ARN_LEN+1

◆ pChannelName

PCHAR ChannelInfo::pChannelName

Name of the signaling channel name. Maximum length is defined by MAX_CHANNEL_NAME_LEN + 1.

◆ pControlPlaneUrl

PCHAR ChannelInfo::pControlPlaneUrl

Optional fully qualified control plane URL Maximum length is defined by MAX_ARN_LEN+1

◆ pCustomUserAgent

PCHAR ChannelInfo::pCustomUserAgent

Optional custom user agent name. Maximum length is defined by MAX_USER_AGENT_LEN+1.

◆ peerClientId

CHAR SignalingMessage::peerClientId[256+1]

Sender client id.

◆ peerConnectionStats

PeerConnectionStats PeerConnectionMetrics::peerConnectionStats

Peer connection metrics stats. Reference in Stats.h.

◆ pKmsKeyId

PCHAR ChannelInfo::pKmsKeyId

Optional KMS key id ARN. Maximum length is defined by MAX_ARN_LEN+1.

◆ pPrivateKey

PBYTE RtcCertificate::pPrivateKey

Private key bit.

◆ pRegion

PCHAR ChannelInfo::pRegion

AWS Region in which the channel is to be opened. Can be empty for default Maximum length is defined by MAX_REGION_NAME_LEN+1

◆ privateKeySize

UINT32 RtcCertificate::privateKeySize

Size of private key in bytes (optional)

◆ protocol

CHAR RtcDataChannelInit::protocol[255+1]

Sub protocol name for the channel.

◆ pStorageStreamArn

PCHAR ChannelInfo::pStorageStreamArn

Storage Stream Amazon Resource Name (ARN). This is an optional parameter Maximum length is defined by MAX_ARN_LEN+1

◆ pTags

PTag ChannelInfo::pTags

Stream tags array.

◆ pUserAgent

PCHAR ChannelInfo::pUserAgent

Combined user agent. Maximum length is defined by MAX_USER_AGENT_LEN+1.

◆ pUserAgentPostfix

PCHAR ChannelInfo::pUserAgentPostfix

Optional user agent post-fix. Maximum length is defined by MAX_CUSTOM_USER_AGENT_NAME_POSTFIX_LEN+1

◆ receiver

RtcRtpReceiver RtcRtpTransceiver::receiver

RtcRtpReceiver that has track specific information.

◆ reconnect

BOOL ChannelInfo::reconnect

Flag determines if reconnection should be attempted on connection drop.

◆ remoteRtcIceCandidateStats

RtcIceCandidateStats RtcIceMetrics::remoteRtcIceCandidateStats

Remote candidate stats. Reference in Stats.h.

◆ requestedTypeOfStats

RTC_STATS_TYPE RtcStats::requestedTypeOfStats

Type of stats requested. Set to RTC_ALL to get all supported stats.

◆ reserved

BOOL ChannelInfo::reserved

Reserved field for compatibility.

◆ retry

BOOL ChannelInfo::retry

Flag determines if a retry of the network calls is to be done on errors up to max retry times.

◆ rtcIceCandidatePairStats

RtcIceCandidatePairStats RtcIceMetrics::rtcIceCandidatePairStats

Candidate pair stats. Reference in Stats.h.

◆ rtcIceServerStats

RtcIceServerStats RtcIceMetrics::rtcIceServerStats

Server related stats. Reference in Stats.h.

◆ rtcInboundStats

RtcRemoteInboundRtpStreamStats RtcStreamMetrics::rtcInboundStats

Inbound RTP Stats. Reference in Stats.h.

◆ rtcOutboundStats

RtcOutboundRtpStreamStats RtcStreamMetrics::rtcOutboundStats

Outbound RTP Stats. Reference in Stats.h.

◆ rtcStatsObject

RtcStatsObject RtcStats::rtcStatsObject

Object that is populated by the SDK on request.

◆ rtcTransportStats

RtcTransportStats RtcStreamMetrics::rtcTransportStats

Transport stats. Reference in Stats.h.

◆ sdp

CHAR RtcSessionDescriptionInit::sdp[25000+1]

SDP Data containing media capabilities, transport addresses and related metadata in a transport agnostic manner

◆ sendBufSize

UINT32 KvsRtcConfiguration::sendBufSize

Socket send buffer length. Item larger then this size will get dropped. Use system default if 0.

◆ signalingCallTime

UINT64 SignalingClientMetrics::signalingCallTime

◆ signalingClientCreationMaxRetryAttempts

INT32 SignalingClientInfo::signalingClientCreationMaxRetryAttempts

Max attempts to create signaling client before returning error to the caller.

◆ signalingClientStats

SignalingClientStats SignalingClientMetrics::signalingClientStats

Signaling client metrics stats. Reference in Stats.h.

◆ signalingEndTime

UINT64 SignalingClientMetrics::signalingEndTime

◆ signalingMessage

SignalingMessage ReceivedSignalingMessage::signalingMessage

The signaling message with details such as message type, correlation ID, peer client ID and payload

◆ signalingMessagesMaximumThreads

UINT32 SignalingClientInfo::signalingMessagesMaximumThreads

Unused field post v1.8.1.

◆ signalingMessagesMinimumThreads

UINT32 SignalingClientInfo::signalingMessagesMinimumThreads

Unused field post v1.8.1.

◆ signalingRetryStrategyCallbacks

KvsRetryStrategyCallbacks SignalingClientInfo::signalingRetryStrategyCallbacks

Retry strategy callbacks used while creating signaling client.

◆ signalingStartTime

UINT64 SignalingClientMetrics::signalingStartTime

◆ stateChangeFn

SignalingClientStateChangedFunc SignalingClientCallbacks::stateChangeFn

Signaling client state change callback.

◆ stateMachineRetryCountReadOnly

UINT32 SignalingClientInfo::stateMachineRetryCountReadOnly

Retry count of state machine. Note that this MUST NOT be modified by the user. It is a read only field

◆ statusCode

SERVICE_CALL_RESULT ReceivedSignalingMessage::statusCode

Response status code.

◆ storageStatus

BOOL MediaStorageConfig::storageStatus

Indicate the association between channelArn and storageStreamArn.

◆ storageStreamArn

CHAR MediaStorageConfig::storageStreamArn[MAX_ARN_LEN+1]

The arn of kvs stream, optional if you already associate signaling channel with stream.

◆ streamId

CHAR RtcMediaStreamTrack::streamId[255+1]

non-standard, id of the MediaStream this track belongs too

◆ tagCount

UINT32 ChannelInfo::tagCount

Number of tags associated with the stream.

◆ targetBitrate

UINT32 RtcEncoderStats::targetBitrate

It is the current target bitrate configured for this particular SSRC and is the Transport Independent Application Specific (TIAS) bitrate [RFC3890]. Typically, the target bitrate is a configuration parameter provided to the codec's encoder and does not count the size of the IP or other transport layers like TCP or UDP. It is measured in bits per second and the bitrate is calculated over a 1 second window.

◆ timestamp

UINT64 RtcStats::timestamp

Timestamp of request for stats.

◆ track

RtcMediaStreamTrack RtcRtpReceiver::track

Track with details of codec, trackId, streamId and track kind.

◆ trackId

CHAR RtcMediaStreamTrack::trackId[255+1]

non-standard, id of this individual track

◆ ttl

UINT64 IceConfigInfo::ttl

TTL of the configuration is 100ns.

◆ type

SDP_TYPE RtcSessionDescriptionInit::type

Indicates an offer/answer SDP type.

◆ updateVersion

CHAR SignalingChannelDescription::updateVersion[MAX_UPDATE_VERSION_LEN+1]

A random number generated on every update while describing signaling channel

◆ uriCount

UINT32 IceConfigInfo::uriCount

Number of Ice URI objects.

◆ uris

CHAR IceConfigInfo::uris[4][256+1]

List of Ice server URIs.

◆ urls

CHAR RtcIceServer::urls[256+1]

URL of STUN/TURN Server.

◆ useMediaStorage

BOOL ChannelInfo::useMediaStorage

use the feature of media storage.

◆ username

CHAR RtcIceServer::username[256+1]

Username to be used with TURN server.

◆ userName

CHAR IceConfigInfo::userName[256+1]

Username for the server.

◆ useTrickleIce

BOOL RtcSessionDescriptionInit::useTrickleIce

Indicates if an offer should set trickle ice.

◆ version [1/12]

UINT32 RtcPeerConnection::version

Version of peer connection structure.

◆ version [2/12]

UINT32 SignalingMessage::version

Current version of the structure.

◆ version [3/12]

UINT32 SignalingClientInfo::version

Version of the structure.

◆ version [4/12]

UINT32 ChannelInfo::version

Version of the structure.

◆ version [5/12]

UINT32 IceConfigInfo::version

Version of the struct.

◆ version [6/12]

UINT32 SignalingClientCallbacks::version

Current version of the structure.

◆ version [7/12]

UINT32 SignalingChannelDescription::version

Version of the SignalingChannelDescription struct.

◆ version [8/12]

UINT32 RtcIceMetrics::version

Structure version.

◆ version [9/12]

UINT32 RtcStreamMetrics::version

Structure version.

◆ version [10/12]

UINT32 SignalingClientMetrics::version

Structure version.

◆ version [11/12]

UINT32 KvsIceAgentMetrics::version

Structure version.

◆ version [12/12]

UINT32 PeerConnectionMetrics::version

Structure version.

◆ voiceActivity

BOOL RtcEncoderStats::voiceActivity

Only valid for audio. TRUE if last audio packet contained voice.

◆ width

UINT16 RtcEncoderStats::width

Only valid for video.