Class: SdpEndpoint

core/abstracts.SdpEndpoint

This interface is implemented by Endpoints that require an SDP negotiation for the setup of a networked media session with remote peers. The API provides the following functionality:
  • Generate SDP offers.
  • Process SDP offers.
  • Configure SDP related params.

Constructor

(abstract) new SdpEndpoint()

Source:

Extends

Members

(static) constructorParams

Source:

(static) events

Source:

Methods

(static) generateOffer(callbackopt) → {external:Promise}

Generates an SDP offer with media capabilities of the Endpoint. Exceptions
  • SDP_END_POINT_ALREADY_NEGOTIATED If the endpoint is already negotiated.
  • SDP_END_POINT_GENERATE_OFFER_ERROR if the generated offer is empty. This is most likely due to an internal error.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.SdpEndpoint~generateOfferCallback <optional>
Source:
Returns:
Type
external:Promise

(static) getLocalSessionDescriptor(callbackopt) → {external:Promise}

This method returns the local SDP. The output depends on the negotiation stage:
  • No offer has been generated: returns null.
  • Offer has been generated: return the SDP offer.
  • Offer has been generated and answer processed: retruns the agreed SDP.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.SdpEndpoint~getLocalSessionDescriptorCallback <optional>
Source:
Returns:
Type
external:Promise

(static) getRemoteSessionDescriptor(callbackopt) → {external:Promise}

This method returns the remote SDP. If the negotiation process is not complete, it will return NULL.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.SdpEndpoint~getRemoteSessionDescriptorCallback <optional>
Source:
Returns:
Type
external:Promise

(static) processAnswer(answer, callbackopt) → {external:Promise}

Generates an SDP offer with media capabilities of the Endpoint. Exceptions
  • SDP_PARSE_ERROR If the offer is empty or has errors.
  • SDP_END_POINT_ALREADY_NEGOTIATED If the endpoint is already negotiated.
  • SDP_END_POINT_PROCESS_ANSWER_ERROR if the result of processing the answer is an empty string. This is most likely due to an internal error.
  • SDP_END_POINT_NOT_OFFER_GENERATED If the method is invoked before the generateOffer method.
Parameters:
Name Type Attributes Description
answer external:String SessionSpec answer from the remote User Agent
callback module:core/abstracts.SdpEndpoint~processAnswerCallback <optional>
Source:
Returns:
Type
external:Promise

(static) processOffer(offer, callbackopt) → {external:Promise}

Processes SDP offer of the remote peer, and generates an SDP answer based on Exceptions
  • SDP_PARSE_ERROR If the offer is empty or has errors.
  • SDP_END_POINT_ALREADY_NEGOTIATED If the endpoint is already negotiated.
  • SDP_END_POINT_PROCESS_OFFER_ERROR if the generated offer is empty. This is most likely due to an internal error.
Parameters:
Name Type Attributes Description
offer external:String SessionSpec offer from the remote User Agent
callback module:core/abstracts.SdpEndpoint~processOfferCallback <optional>
Source:
Returns:
Type
external:Promise

getChildren(callbackopt) → {external:Promise}

children of this MediaObject.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getChildrenCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getChilds(callbackopt) → {external:Promise}

Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getChildsCallback <optional>
Inherited From:
Deprecated:
  • (Use children instead) children of this MediaObject.
Source:
Returns:
Type
external:Promise

getCreationTime(callbackopt) → {external:Promise}

MediaObject creation time in seconds since Epoch.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getCreationTimeCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getMaxAudioRecvBandwidth(callbackopt) → {external:Promise}

Maximum bandwidth for audio reception, in kbps. The default value is 500. A value of 0 sets this as leaves this unconstrained.
Note This has
Parameters:
Name Type Attributes Description
callback module:core/abstracts.SdpEndpoint~getMaxAudioRecvBandwidthCallback <optional>
Source:
Returns:
Type
external:Promise

getMaxOuputBitrate(callbackopt) → {external:Promise}

Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaElement~getMaxOuputBitrateCallback <optional>
Inherited From:
Deprecated:
  • Deprecated due to a typo. Use maxOutputBitrate instead of this function. Maximum video bandwidth for transcoding. 0 = unlimited. Unit: bps(bits per second). Default value: MAXINT
Source:
Returns:
Type
external:Promise

getMaxOutputBitrate(callbackopt) → {external:Promise}

Maximum video bitrate for transcoding. 0 = unlimited. Unit: bps(bits per second). Default value: MAXINT
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaElement~getMaxOutputBitrateCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getMaxVideoRecvBandwidth(callbackopt) → {external:Promise}

Maximum bandwidth for video reception, in kbps. The default value is 500. A value of 0 sets this as unconstrained.
Note This has to be set before the SDP is generated.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.SdpEndpoint~getMaxVideoRecvBandwidthCallback <optional>
Source:
Returns:
Type
external:Promise

getMediaPipeline(callbackopt) → {external:Promise}

MediaPipeline to which this MediaObject belongs. It returns itself when invoked for a pipeline object.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getMediaPipelineCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getMinOuputBitrate(callbackopt) → {external:Promise}

Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaElement~getMinOuputBitrateCallback <optional>
Inherited From:
Deprecated:
  • Deprecated due to a typo. Use minOutputBitrate instead of this function. Minimum video bandwidth for transcoding. Unit: bps(bits per second). Default value: 0
Source:
Returns:
Type
external:Promise

getMinOutputBitrate(callbackopt) → {external:Promise}

Minimum video bitrate for transcoding. Unit: bps(bits per second). Default value: 0
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaElement~getMinOutputBitrateCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getName(callbackopt) → {external:Promise}

this MediaObject's name. This is just a comodity to simplify developers' life debugging, it is not used internally for indexing nor idenfiying the objects. By default, it's the object's ID.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getNameCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getParent(callbackopt) → {external:Promise}

parent of this MediaObject. The parent of a Hub or a
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getParentCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

getSendTagsInEvents(callbackopt) → {external:Promise

flag activating or deactivating sending the element's tags in fired events.
Parameters:
Name Type Attributes Description
callback module:core/abstracts.MediaObject~getSendTagsInEventsCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

setMaxAudioRecvBandwidth(maxAudioRecvBandwidth, callbackopt) → {external:Promise}

Maximum bandwidth for audio reception, in kbps. The default value is 500. A value of 0 sets this as leaves this unconstrained.
Note This has
Parameters:
Name Type Attributes Description
maxAudioRecvBandwidth external:Integer
callback module:core/abstracts.SdpEndpoint~setMaxAudioRecvBandwidthCallback <optional>
Source:
Returns:
Type
external:Promise

setMaxOuputBitrate(maxOuputBitrate, callbackopt) → {external:Promise}

Parameters:
Name Type Attributes Description
maxOuputBitrate external:Integer
callback module:core/abstracts.MediaElement~setMaxOuputBitrateCallback <optional>
Inherited From:
Deprecated:
  • Deprecated due to a typo. Use maxOutputBitrate instead of this function. Maximum video bandwidth for transcoding. 0 = unlimited. Unit: bps(bits per second). Default value: MAXINT
Source:
Returns:
Type
external:Promise

setMaxOutputBitrate(maxOutputBitrate, callbackopt) → {external:Promise}

Maximum video bitrate for transcoding. 0 = unlimited. Unit: bps(bits per second). Default value: MAXINT
Parameters:
Name Type Attributes Description
maxOutputBitrate external:Integer
callback module:core/abstracts.MediaElement~setMaxOutputBitrateCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

setMaxVideoRecvBandwidth(maxVideoRecvBandwidth, callbackopt) → {external:Promise}

Maximum bandwidth for video reception, in kbps. The default value is 500. A value of 0 sets this as unconstrained.
Note This has to be set before the SDP is generated.
Parameters:
Name Type Attributes Description
maxVideoRecvBandwidth external:Integer
callback module:core/abstracts.SdpEndpoint~setMaxVideoRecvBandwidthCallback <optional>
Source:
Returns:
Type
external:Promise

setMinOuputBitrate(minOuputBitrate, callbackopt) → {external:Promise}

Parameters:
Name Type Attributes Description
minOuputBitrate external:Integer
callback module:core/abstracts.MediaElement~setMinOuputBitrateCallback <optional>
Inherited From:
Deprecated:
  • Deprecated due to a typo. Use minOutputBitrate instead of this function. Minimum video bandwidth for transcoding. Unit: bps(bits per second). Default value: 0
Source:
Returns:
Type
external:Promise

setMinOutputBitrate(minOutputBitrate, callbackopt) → {external:Promise}

Minimum video bitrate for transcoding. Unit: bps(bits per second). Default value: 0
Parameters:
Name Type Attributes Description
minOutputBitrate external:Integer
callback module:core/abstracts.MediaElement~setMinOutputBitrateCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

setName(name, callbackopt) → {external:Promise}

this MediaObject's name. This is just a comodity to simplify developers' life debugging, it is not used internally for indexing nor idenfiying the objects. By default, it's the object's ID.
Parameters:
Name Type Attributes Description
name external:String
callback module:core/abstracts.MediaObject~setNameCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

setSendTagsInEvents(sendTagsInEvents, callbackopt) → {external:Promise}

flag activating or deactivating sending the element's tags in fired events.
Parameters:
Name Type Attributes Description
sendTagsInEvents external:Boolean
callback module:core/abstracts.MediaObject~setSendTagsInEventsCallback <optional>
Inherited From:
Source:
Returns:
Type
external:Promise

Type Definitions

generateOfferCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:String The SDP offer.
Source:

getLocalSessionDescriptorCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:String The last agreed SessionSpec
Source:

getMaxAudioRecvBandwidthCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:Integer
Source:

getMaxVideoRecvBandwidthCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:Integer
Source:

getRemoteSessionDescriptorCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:String The last agreed User Agent session description
Source:

processAnswerCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:String Updated SDP offer, based on the answer received.
Source:

processOfferCallback(error, result)

Parameters:
Name Type Description
error external:Error
result external:String The chosen configuration from the ones stated in the SDP offer
Source:

setMaxAudioRecvBandwidthCallback(error)

Parameters:
Name Type Description
error external:Error
Source:

setMaxVideoRecvBandwidthCallback(error)

Parameters:
Name Type Description
error external:Error
Source: