Constructor
(abstract) new SdpEndpoint()
- Source:
Extends
Members
(static) constructorParams
- Source:
(static) events
- Source:
Methods
(static) generateOffer(optionsopt, callbackopt) → {external:Promise}
Generates an SDP offer with media capabilities of the Endpoint.
Throws:
-
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:
- Source:
Returns:
-
Type
-
external:Promise
(static) getLocalSessionDescriptor(callbackopt) → {external:Promise}
Returns the local SDP.
-
No offer has been generated: returns null.
-
Offer has been generated: returns the SDP offer.
-
Offer has been generated and answer processed: returns the agreed SDP.
Parameters:
- 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:
- Source:
Returns:
-
Type
-
external:Promise
(static) processAnswer(answer, callbackopt) → {external:Promise}
Generates an SDP offer with media capabilities of the Endpoint.
Throws:
-
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
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:
- 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
the endpoint's capabilities.
If no matching capabilities are found, the SDP will contain no codecs.
Throws:
-
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:
- Source:
Returns:
-
Type
-
external:Promise
Children of this MediaObject
.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
getCreationTime(callbackopt) → {external:Promise}
MediaObject
creation time in seconds since Epoch.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
getEncoderBitrate(callbackopt) → {external:Promise}
Target video bitrate for media transcoding.
The bitrate of a video has a direct impact on its perceived image quality.
Higher bitrate means higher quality, but also a larger amount of bytes to
transmit or store. Use this parameter to set the desired average bitrate in
videos that are transcoded by the media server.
This parameter is most useful for :rom:cls:`RecorderEndpoint` and
:rom:cls:`RtpEndpoint`: when media is being transcoded (either for
streaming
or storing on disk), the resulting quality is directly controlled with this
value.
For :rom:cls:`WebRtcEndpoint`, this value should be left as default, as
remote
WebRTC receivers will already send feedback to inform the media server
about
what is the optimal bitrate to send.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 300000 (300 kbps).
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
getMaxAudioRecvBandwidth(callbackopt) → {external:Promise}
Maximum inbound bitrate requested by this endpoint. Signaled to compatible
WebRTC and RTP senders as part of Kurento's REMB bandwidth estimations, and
also
as an SDP bitrate attribute (
b=AS:{value}
, see
RFC 8866 Section 5.8. Bandwidth Information) in
sendrecv and
recvonly SDP Offers.
- Unit: kbps (kilobits per second).
- Default: 0 (unlimited).
Parameters:
- Source:
Returns:
-
Type
-
external:Promise
getMaxEncoderBitrate(callbackopt) → {external:Promise}
Maximum video bitrate for media transcoding.
This parameter can be used to fine tune the automatic bitrate selection
that
normally takes place within elements that are able to dynamically change
the
encoding bitrate according to the conditions of the streaming, such as
:rom:cls:`WebRtcEndpoint`.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to limit the total bitrate that is handled by the server, by setting a low
maximum output for all endpoints.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to limit the total bitrate that is handled by the server, by setting a low
maximum output for all endpoints.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 0.
-
0 = unlimited. Encoding performed with bitrate as requested by receivers.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
getMaxVideoRecvBandwidth(callbackopt) → {external:Promise}
Maximum inbound bitrate requested by this endpoint. Signaled to compatible
WebRTC and RTP senders as part of Kurento's REMB bandwidth estimations, and
also
as an SDP bitrate attribute (
b=AS:{value}
, see
RFC 8866 Section 5.8. Bandwidth Information) in
sendrecv and
recvonly SDP Offers.
- Unit: kbps (kilobits per second).
- Default: 0 (unlimited).
Parameters:
- Source:
Returns:
-
Type
-
external:Promise
MediaPipeline to which this
MediaObject
belongs. It
returns itself when invoked for a pipeline object.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
getMinEncoderBitrate(callbackopt) → {external:Promise}
Minimum video bitrate for media transcoding.
This parameter can be used to fine tune the automatic bitrate selection
that
normally takes place within elements that are able to dynamically change
the
encoding bitrate according to the conditions of the streaming, such as
:rom:cls:`WebRtcEndpoint`.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to force a higher bitrate than what is being requested by receivers.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 0.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
This
MediaObject
's name.
This is just sugar to simplify developers' life debugging, it is not used
internally for indexing nor identifying the objects. By default, it's the
object's ID.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
Parent of this
MediaObject
.
The parent of a Hub or a MediaElement is its
MediaPipeline. A MediaPipeline has no parent, so this
property will be null.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
Flag activating or deactivating sending the element's tags in fired events.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
setEncoderBitrate(encoderBitrate, callbackopt) → {external:Promise}
Target video bitrate for media transcoding.
The bitrate of a video has a direct impact on its perceived image quality.
Higher bitrate means higher quality, but also a larger amount of bytes to
transmit or store. Use this parameter to set the desired average bitrate in
videos that are transcoded by the media server.
This parameter is most useful for :rom:cls:`RecorderEndpoint` and
:rom:cls:`RtpEndpoint`: when media is being transcoded (either for
streaming
or storing on disk), the resulting quality is directly controlled with this
value.
For :rom:cls:`WebRtcEndpoint`, this value should be left as default, as
remote
WebRTC receivers will already send feedback to inform the media server
about
what is the optimal bitrate to send.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 300000 (300 kbps).
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
setMaxAudioRecvBandwidth(maxAudioRecvBandwidth, callbackopt) → {external:Promise}
Maximum inbound bitrate requested by this endpoint. Signaled to compatible
WebRTC and RTP senders as part of Kurento's REMB bandwidth estimations, and
also
as an SDP bitrate attribute (
b=AS:{value}
, see
RFC 8866 Section 5.8. Bandwidth Information) in
sendrecv and
recvonly SDP Offers.
- Unit: kbps (kilobits per second).
- Default: 0 (unlimited).
Parameters:
- Source:
Returns:
-
Type
-
external:Promise
setMaxEncoderBitrate(maxEncoderBitrate, callbackopt) → {external:Promise}
Maximum video bitrate for media transcoding.
This parameter can be used to fine tune the automatic bitrate selection
that
normally takes place within elements that are able to dynamically change
the
encoding bitrate according to the conditions of the streaming, such as
:rom:cls:`WebRtcEndpoint`.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to limit the total bitrate that is handled by the server, by setting a low
maximum output for all endpoints.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to limit the total bitrate that is handled by the server, by setting a low
maximum output for all endpoints.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 0.
-
0 = unlimited. Encoding performed with bitrate as requested by receivers.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
setMaxVideoRecvBandwidth(maxVideoRecvBandwidth, callbackopt) → {external:Promise}
Maximum inbound bitrate requested by this endpoint. Signaled to compatible
WebRTC and RTP senders as part of Kurento's REMB bandwidth estimations, and
also
as an SDP bitrate attribute (
b=AS:{value}
, see
RFC 8866 Section 5.8. Bandwidth Information) in
sendrecv and
recvonly SDP Offers.
- Unit: kbps (kilobits per second).
- Default: 0 (unlimited).
Parameters:
- Source:
Returns:
-
Type
-
external:Promise
setMinEncoderBitrate(minEncoderBitrate, callbackopt) → {external:Promise}
Minimum video bitrate for media transcoding.
This parameter can be used to fine tune the automatic bitrate selection
that
normally takes place within elements that are able to dynamically change
the
encoding bitrate according to the conditions of the streaming, such as
:rom:cls:`WebRtcEndpoint`.
This should be left as default in most cases, given that remote WebRTC
receivers already send feedback to inform the media server about what is
the
optimal bitrate to send. Otherwise, this parameter could be used for
example
to force a higher bitrate than what is being requested by receivers.
Setting a value will only work if done before the media starts to flow.
- Unit: bps (bits per second).
- Default: 0.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
This
MediaObject
's name.
This is just sugar to simplify developers' life debugging, it is not used
internally for indexing nor identifying the objects. By default, it's the
object's ID.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
Flag activating or deactivating sending the element's tags in fired events.
Parameters:
- Inherited From:
- Source:
Returns:
-
Type
-
external:Promise
Type Definitions
generateOfferCallback(error, result)
Parameters:
- Source:
getLocalSessionDescriptorCallback(error, result)
Parameters:
- Source:
getMaxAudioRecvBandwidthCallback(error, result)
Parameters:
- Source:
getMaxVideoRecvBandwidthCallback(error, result)
Parameters:
- Source:
getRemoteSessionDescriptorCallback(error, result)
Parameters:
- Source:
processAnswerCallback(error, result)
Parameters:
- Source:
processOfferCallback(error, result)
Parameters:
- Source:
setMaxAudioRecvBandwidthCallback(error)
Parameters:
- Source:
setMaxVideoRecvBandwidthCallback(error)
Parameters:
- Source: