Extra callbacks definitions. More...

Classes | |
| struct | __RtcDataChannel |
| RtcDataChannel represents a bi-directional data channel between two peers. More... | |
Typedefs | |
| typedef VOID(* | RtcOnFrame) (UINT64, PFrame) |
| RtcOnFrame is fired everytime a frame is received from the remote peer. It is available via the RtpRec. | |
| typedef VOID(* | RtcOnBandwidthEstimation) (UINT64, DOUBLE) |
| RtcOnBandwidthEstimation is fired everytime a bandwidth estimation value is computed. This will be fired for receiver side estimation. | |
| typedef VOID(* | RtcOnSenderBandwidthEstimation) (UINT64, UINT32, UINT32, UINT32, UINT32, UINT64) |
| RtcOnSenderBandwidthEstimation is fired everytime a bandwidth estimation value is computed by sender. This is an estimate of ALL packets sent across all transceivers. See https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01 for more details. | |
| typedef VOID(* | RtcOnPictureLoss) (UINT64) |
| RtcOnPictureLoss is fired everytime a Picture Loss Indication (PLI) feedback message is received. Receiving such message normally indicates that you sent a video frame which receiver could not decode. It may happen either because of packet loss or for any other reason. Generating an intra frame (aka keyframe, aka I-frame) in response to such message is considered a good strategy. | |
| typedef struct __RtcDataChannel | RtcDataChannel |
| RtcDataChannel represents a bi-directional data channel between two peers. | |
| typedef struct __RtcDataChannel * | PRtcDataChannel |
| typedef VOID(* | RtcOnMessage) (UINT64, PRtcDataChannel, BOOL, PBYTE, UINT32) |
| RtcOnMessage is fired when a message is received for the DataChannel. | |
| typedef VOID(* | RtcOnOpen) (UINT64, PRtcDataChannel) |
| typedef VOID(* | RtcOnDataChannel) (UINT64, PRtcDataChannel) |
| RtcOnDataChannel is fired when the remote PeerConnection creates a new DataChannel. | |
| typedef VOID(* | RtcOnIceCandidate) (UINT64, PCHAR) |
| RtcOnIceCandidate is fired when new iceCandidate is found. if PCHAR is NULL then candidate gathering is done. | |
| typedef BOOL(* | IceSetInterfaceFilterFunc) (UINT64, PCHAR) |
| IceSetInterfaceFilterFunc is fired when a callback function to filter network interfaces is assigned. The callback function is expected to check for specific interface names to be whitelisted/blacklisted. | |
| typedef VOID(* | RtcOnConnectionStateChange) (UINT64, RTC_PEER_CONNECTION_STATE) |
| RtcOnConnectionStateChange is fired to report a change in peer connection state. | |
| typedef STATUS(* | SignalingClientMessageReceivedFunc) (UINT64, PReceivedSignalingMessage) |
| typedef STATUS(* | SignalingClientErrorReportFunc) (UINT64, STATUS, PCHAR, UINT32) |
| typedef STATUS(* | SignalingClientStateChangedFunc) (UINT64, SIGNALING_CLIENT_STATE) |
Extra callbacks definitions.
| typedef BOOL(* IceSetInterfaceFilterFunc) (UINT64, PCHAR) |
IceSetInterfaceFilterFunc is fired when a callback function to filter network interfaces is assigned. The callback function is expected to check for specific interface names to be whitelisted/blacklisted.
| typedef struct __RtcDataChannel * PRtcDataChannel |
| typedef struct __RtcDataChannel RtcDataChannel |
RtcDataChannel represents a bi-directional data channel between two peers.
| typedef VOID(* RtcOnBandwidthEstimation) (UINT64, DOUBLE) |
RtcOnBandwidthEstimation is fired everytime a bandwidth estimation value is computed. This will be fired for receiver side estimation.
NOTE: RtcOnBandwidthEstimation is a KVS specific method
| typedef VOID(* RtcOnConnectionStateChange) (UINT64, RTC_PEER_CONNECTION_STATE) |
RtcOnConnectionStateChange is fired to report a change in peer connection state.
Reference: https://www.w3.org/TR/webrtc/#event-iceconnectionstatechange
| typedef VOID(* RtcOnDataChannel) (UINT64, PRtcDataChannel) |
RtcOnDataChannel is fired when the remote PeerConnection creates a new DataChannel.
Reference: https://www.w3.org/TR/webrtc/#dom-rtcpeerconnection-ondatachannel
| typedef VOID(* RtcOnFrame) (UINT64, PFrame) |
RtcOnFrame is fired everytime a frame is received from the remote peer. It is available via the RtpRec.
NOTE: RtcOnFrame is a KVS specific method
| typedef VOID(* RtcOnIceCandidate) (UINT64, PCHAR) |
RtcOnIceCandidate is fired when new iceCandidate is found. if PCHAR is NULL then candidate gathering is done.
Reference: https://www.w3.org/TR/webrtc/#dom-rtcpeerconnection-onicecandidate
| typedef VOID(* RtcOnMessage) (UINT64, PRtcDataChannel, BOOL, PBYTE, UINT32) |
RtcOnMessage is fired when a message is received for the DataChannel.
Reference: https://www.w3.org/TR/webrtc/#dom-rtcdatachannel-onmessage
| typedef VOID(* RtcOnOpen) (UINT64, PRtcDataChannel) |
RtcOnOpen is fired when the DataChannel has opened
Reference: https://www.w3.org/TR/webrtc/#dom-rtcdatachannel-onopen
| typedef VOID(* RtcOnPictureLoss) (UINT64) |
RtcOnPictureLoss is fired everytime a Picture Loss Indication (PLI) feedback message is received. Receiving such message normally indicates that you sent a video frame which receiver could not decode. It may happen either because of packet loss or for any other reason. Generating an intra frame (aka keyframe, aka I-frame) in response to such message is considered a good strategy.
See https://tools.ietf.org/html/rfc4585#section-6.3 for more details
| typedef VOID(* RtcOnSenderBandwidthEstimation) (UINT64, UINT32, UINT32, UINT32, UINT32, UINT64) |
RtcOnSenderBandwidthEstimation is fired everytime a bandwidth estimation value is computed by sender. This is an estimate of ALL packets sent across all transceivers. See https://tools.ietf.org/html/draft-holmer-rmcat-transport-wide-cc-extensions-01 for more details.
NOTE: RtcOnSenderBandwidthEstimation is a KVS specific method
| [in] | UINT64 | User customData that will be passed along when RtcOnSenderBandwidthEstimation is called |
| [in] | UINT32 | txBytes - bytes sent over the transport |
| [in] | UINT32 | rxBytes - bytes reported as received |
| [in] | UINT32 | txPackets - number of packets sent over the transport |
| [in] | UINT32 | rxPackets - number of packets reported as received |
| [in] | UINT64 | duration - time window for txBytes, rxBytes, txPackets, rxPackets |
| typedef STATUS(* SignalingClientErrorReportFunc) (UINT64, STATUS, PCHAR, UINT32) |
Callback that is fired on error.
NOTE: This callback is optional and can be set to NULL.
NOTE: Returning non-success status will terminate the internal event loop and will force the state machinery to roll back to the state corresponding to the type of status returned.
| - | UINT64 - Custom data passed in to the signaling client |
| - | STATUS - The status code of the error |
| - | PCHAR - Variable - can point to an error string or other information |
| - | UINT32 - Length of the message |
| typedef STATUS(* SignalingClientMessageReceivedFunc) (UINT64, PReceivedSignalingMessage) |
Callback that is fired when Signalling client receives an Offer
NOTE: Returning non-success status will terminate the internal event loop and will force the state machinery to roll back to the state corresponding to the type of status returned.
| - | UINT64 - Custom data passed in to the signaling client |
| - | PReceivedSignalingMessage - Pointer to the received message |
| typedef STATUS(* SignalingClientStateChangedFunc) (UINT64, SIGNALING_CLIENT_STATE) |
Callback that is fired on signaling client state change.
NOTE: This callback is optional and can be set to NULL.
NOTE: Returning non-success status will terminate the internal event loop and will force the state machinery to roll back to the state corresponding to the type of status returned.
| - | UINT64 - Custom data passed in to the signaling client |
| - | SIGNALING_CLIENT_STATE - The new state |