GstWebRTC - API Reference
GstWebRTC | ||||||||
---|---|---|---|---|---|---|---|---|
WebRTC Fundamentals | ||||||||
GstWebRTC Basics | ||||||||
|
||||||||
Evaluating GstWebRTC | ||||||||
Getting the code | ||||||||
Building GstWebRTC | ||||||||
Examples | ||||||||
|
||||||||
MCU Demo Application | ||||||||
Contact Us |
Classes, Structs and Enums
This section describes the enumerator and classes involved in the custom signaler creation.
GstBaseSignaler Class
Base class for custom signalers.
Members
- guint id
- The ID of the local endpoint
- gchar *peer_id
- The ID of the remote endpoint
- gboolean peer_connected
- True if peer is currently connected
- GstSDPMessage *peer_sdp
- Remote SDP negotiated by peer
- GstBaseSignalerSdpType type
- Whether we are sending an offer or answering a remote offer. In other words, whether we are starting the call or not.
GstBaseSignalerSdpType
- GST_BASE_SIGNALER_SDP_OFFER
- The SDP is an offer
- GST_BASE_SIGNALER_SDP_ANSWER
- The SDP is an answer
- GST_BASE_SIGNALER_SDP_UNKNOWN
- The SDP is unknown, typically an error
Virtual Functions
The subclass must implement the following functions, these functions are called by the base class.
Connect
The concrete signaler should connect to the signaling mechanism.
gboolean (*connect) (GstBaseSignaler *self)
- Parameters
- self: The concrete signaler
- Returns
- True if connection was successful
Disconnect
The concrete signaler should disconnect from the signaling mechanism.
gboolean (*disconnect) (GstBaseSignaler *self)
- Parameters
- self: The concrete signaler
- Returns
- True if disconnection was successful.
Send SDP
The concrete signaler should send the given SDP to the peer via its signaling mechanism.
gboolean (*send_sdp) (GstBaseSignaler *self, GstSDPMessage *sdp, GstBaseSignalerSdpType type)
- Parameters
- self: The concrete signaler
- sdp: The SDP that should be sent.
- type: Whether the SDP is an OFFER or an ANSWER
- Returns
- True if the SDP was succesfully sent.
Send Candidates
The concrete signaler should send the given candidates to the peer via its signaling mechanism. The candidates are given in a SDP form. This method can be called several times.
gboolean (*send_candidates) (GstBaseSignaler *self, GstSDPMessage *candidates)
- Parameters
- self: The concrete signaler
- candidates: The candidates to be sent.
- Returns
- True if sent candidates successfully was successful.
Signals
The following signals must be emitted by the subclass using the g_signal_emit_by_name:
Signaling bound
The concrete signaler should emit the "signaling-bound" when the local peer connects to the signaling mechanism.
void (*signaling_bound) (GstBaseSignaler *self)
- Parameters
- self: The concrete signaler
- Returns
- Nothing
Peer Connected
The concrete signaler should emit the "peer-connected" when the remote peer connects to the signaling mechanism.
void (*peer_connected) (GstBaseSignaler *self)
- Parameters
- self: The concrete signaler
- Returns
- Nothing
Peer Disconnected
The concrete signaler should emit the "peer-disconnected" when the local peer disconnects from the signaling mechanism.
void (*peer_disconnected) (GstBaseSignaler *self)
- Parameters
- self: The concrete signaler
- Returns
- Nothing
Peer SDP
The concrete signaler should emit the "peer-sdp" when the peer SDP has been sent via the signaling mechanism.
void (*peer_sdp) (GstBaseSignaler *self, GstBaseSignalerSdpType * type, GstSDPMessage * sdp)
- Parameters
- self: The concrete signaler
- type: Whether the SDP is for video, audio or data
- sdp: The candidate in SDP format
- Returns
- Nothing
Peer Candidate
The concrete signaler should emit the "peer-candidate" when the peer candidate has been sent via the signaling mechanism.
void (*peer_candidate) (GstBaseSignaler *self, gint sdp_index, gchar * sdp)
- Parameters
- self: The concrete signaler
- sdp_index Whether the SDP is for video, audio or data
- sdp: The candidate in SDP format
- Returns
- Nothing
Signaling Error
The concrete signaler should emit the "signaling-error" when there is an unrecoverable signaling error. The internal state machine will terminate the pipeline. The concrete signaler should fill the GError respectively.
void (*signaling_error) (GstBaseSignaler *self, GError *error)
- Parameters
- self: The concrete signaler
- error: A GError describing the error. This is used by GstRrWebRTC to provide feedback to the user.
- Returns
- Nothing