GStreamer WebRTC Wrapper/Architecture/GstWebRTCWrapperBin Modules: Difference between revisions

From RidgeRun Developer Wiki
(Created page with "<noinclude> {{GStreamer WebRTC Wrapper/Head|next=Modules|previous=Getting_the_Code/Building_and_Installation_Guide|keywords=}} </noinclude> = GstWebrtc Wrapper Modules = Th...")
 
Line 5: Line 5:
= GstWebrtc Wrapper Modules =  
= GstWebrtc Wrapper Modules =  


This section describes the modules which will include as part of GstWebrtcWrapperbin Element. The modules correspond to the blocks in the ```Figure 2.```
This section describes the modules which will include as part of GstWebrtcWrapperbin Element. The modules correspond to the blocks in the '''Figure 2.'''
 
<center>
[[File:GstWebWrapper arch.png|600px]]<br>
'''Figure 2.''' GstWebRTCWrapperbin module diagram.
</center>


== GstWebRTCBin ==
== GstWebRTCBin ==
Line 17: Line 22:
* '''signaler''': Set the signaling mechanism for negotiation.
* '''signaler''': Set the signaling mechanism for negotiation.


== GstWebrtcState ==
== WebRTC State Machine ==


The module to control the negotiation procedure during the WebRTC connection.
The module to control the negotiation procedure during the WebRTC connection.
Line 30: Line 35:
* ''on-change-state'' : Emitted afterchanging a new state.
* ''on-change-state'' : Emitted afterchanging a new state.


== GstBaseSignaler Class ==
== BaseSignaler ==


The module to handle the signaling mechanism to negotiate.
The module to handle the signaling mechanism to negotiate.
Line 50: Line 55:
*  ''on-error-connection'': Emitted after receiving an error message.
*  ''on-error-connection'': Emitted after receiving an error message.


== GstIceServer ==
== BaseIceServers ==


The module to handle the ice serving mechanisms.
The module to handle the ice serving mechanisms.
Line 59: Line 64:
* '''get_turn_servers()''': Returns the list of TURN servers.
* '''get_turn_servers()''': Returns the list of TURN servers.


== GstPubnubSignaler ==
== PubnubSignaler ==


The module to handle the PubNub resources for messaging. This class is based on GstBaseSignaler class.
The module to handle the PubNub resources for messaging. This class is based on GstBaseSignaler class.
Line 87: Line 92:
*  ''on-error-connection'': Emitted after receiving an error message.
*  ''on-error-connection'': Emitted after receiving an error message.


== GstXirsysIceServer ==
== XirsysIceServer ==


The module to handle the ice serving for Xirsys CoTURN. This class is based on GstXirsysIceServer.
The module to handle the ice serving for Xirsys CoTURN. This class is based on GstXirsysIceServer.

Revision as of 17:28, 17 January 2020




Previous: Getting_the_Code/Building_and_Installation_Guide Index Next: Modules




GstWebrtc Wrapper Modules

This section describes the modules which will include as part of GstWebrtcWrapperbin Element. The modules correspond to the blocks in the Figure 2.


Figure 2. GstWebRTCWrapperbin module diagram.

GstWebRTCBin

It is the GStreamer Element for WebRTC protocol development for GStreamer Team.

Properties

  • start-call: The endpoint sends the local description as offer
  • ice-server: Set the ice server mechanism.
  • signaler: Set the signaling mechanism for negotiation.

WebRTC State Machine

The module to control the negotiation procedure during the WebRTC connection.

Method

  • current_state(): Get current state
  • next_state(): Move to next state.

Signal

  • on-change-state : Emitted afterchanging a new state.

BaseSignaler

The module to handle the signaling mechanism to negotiate.

Methods

  • init(): Initial configuration for BaseSignalerClass.
  • open_connection(): open the signaling connection.
  • send_local_description(): Send the local description through signaling.
  • send_candidate(): Send the candidate through signaling.
  • send_custom_message(): Send a custom message through signaling.
  • close_connection(): close the signaling connection.

Signals

  • on-add-candidate: Emitted after receiving a candidate.
  • on-add-remote-description: Emitted after receiving the remote description
  • on-close-connection: Emitted after receiving close message.
  • on-error-connection: Emitted after receiving an error message.

BaseIceServers

The module to handle the ice serving mechanisms.

Methods

  • get_stun_servers(): Returns the list of STUN servers.
  • get_turn_servers(): Returns the list of TURN servers.

PubnubSignaler

The module to handle the PubNub resources for messaging. This class is based on GstBaseSignaler class.

Properties

  • peer-channel: The peer chaneel to call.
  • user-channel: The user channel identification.
  • publish-key': Autentification Key to publish message on PubNub.
  • subscribe-key: Autentification Key to subscribe message from PubNub.
  • pubnub-server: PubNub Server URL

Methods

  • init(): Initial configuration for BaseSignalerClass.
  • open_connection(): open the signaling connection.
  • send_local_description(): Send the local description through signaling.
  • send_candidate(): Send the candidate through signaling.
  • send_custom_message(): Send a custom message through signaling.
  • close_connection(): close the signaling connection.

Signals

  • on-add-candidate: Emitted after receiving a candidate.
  • on-add-remote-description: Emitted after receiving the remote description
  • on-close-connection: Emitted after receiving close message.
  • on-error-connection: Emitted after receiving an error message.

XirsysIceServer

The module to handle the ice serving for Xirsys CoTURN. This class is based on GstXirsysIceServer.

Properties

  • ident: Ident provided via Xirsys Account.
  • secret: Secret provided via Xirsys Account
  • channel': Channel provided via Xirsys Account
  • xirsys_path: Xirsys path provided via Xirsys Account

Methods

  • get_stun_servers(): Returns the list of STUN servers.
  • get_turn_servers(): Returns the list of TURN servers.