Constructor
new FaceOverlayFilter()
Extends
Members
(static) constructorParams
Properties:
Name | Type | Description |
---|---|---|
mediaPipeline |
module:core.MediaPipeline | pipeline to which this Filter belons |
(static) events
Methods
(static) setOverlayedImage(uri, offsetXPercent, offsetYPercent, widthPercent, heightPercent, callbackopt) → {external:Promise}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
uri |
external:String | URI where the image is located | |
offsetXPercent |
external:Number | the offset applied to the image, from the X coordinate of the detected face
upper right corner. A positive value indicates right displacement, while a
negative value moves the overlaid image to the left. This offset is
specified as a percentage of the face width.
For example, to cover the detected face with the overlaid image, the
parameter has to be 0.0 . Values of 1.0 or
-1.0 indicate that the image upper right corner will be at the
face´s X coord, +- the face´s width.
Note The parameter name is misleading, the value is not a percent but a ratio |
|
offsetYPercent |
external:Number | the offset applied to the image, from the Y coordinate of the detected face
upper right corner. A positive value indicates up displacement, while a
negative value moves the overlaid image down. This offset is specified as a
percentage of the face width.
For example, to cover the detected face with the overlaid image, the
parameter has to be 0.0 . Values of 1.0 or
-1.0 indicate that the image upper right corner will be at the
face´s Y coord, +- the face´s width.
Note The parameter name is misleading, the value is not a percent but a ratio |
|
widthPercent |
external:Number | proportional width of the overlaid image, relative to the width of the
detected face. A value of 1.0 implies that the overlaid image will have the
same width as the detected face. Values greater than 1.0 are allowed, while
negative values are forbidden.
Note The parameter name is misleading, the value is not a percent but a ratio |
|
heightPercent |
external:Number | proportional height of the overlaid image, relative to the height of the
detected face. A value of 1.0 implies that the overlaid image will have the
same height as the detected face. Values greater than 1.0 are allowed, while
Note The parameter name is misleading, the value is not a percent but a ratio |
|
callback |
module:filters.FaceOverlayFilter~setOverlayedImageCallback |
<optional> |
Returns:
- Type
- external:Promise
(static) unsetOverlayedImage(callbackopt) → {external:Promise}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:filters.FaceOverlayFilter~unsetOverlayedImageCallback |
<optional> |
Returns:
- Type
- external:Promise
getChildren(callbackopt) → {external:Promise}
MediaObject
.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaObject~getChildrenCallback |
<optional> |
- Inherited From:
- 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
getEncoderBitrate(callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaElement~getEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
getMaxEncoderBitrate(callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaElement~getMaxEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
getMediaPipeline(callbackopt) → {external:Promise}
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
getMinEncoderBitrate(callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaElement~getMinEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
getName(callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaObject~getNameCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
getParent(callbackopt) → {external:Promise}
MediaObject
.
The parent of a Hub or a MediaElement is its MediaPipeline. A MediaPipeline has no parent, so this property will be null.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaObject~getParentCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
getSendTagsInEvents(callbackopt) → {external:Promise}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
module:core/abstracts.MediaObject~getSendTagsInEventsCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
setEncoderBitrate(encoderBitrate, callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
encoderBitrate |
external:Integer | ||
callback |
module:core/abstracts.MediaElement~setEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
setMaxEncoderBitrate(maxEncoderBitrate, callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
maxEncoderBitrate |
external:Integer | ||
callback |
module:core/abstracts.MediaElement~setMaxEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
setMinEncoderBitrate(minEncoderBitrate, callbackopt) → {external:Promise}
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:
Name | Type | Attributes | Description |
---|---|---|---|
minEncoderBitrate |
external:Integer | ||
callback |
module:core/abstracts.MediaElement~setMinEncoderBitrateCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
setName(name, callbackopt) → {external:Promise}
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:
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}
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
sendTagsInEvents |
external:Boolean | ||
callback |
module:core/abstracts.MediaObject~setSendTagsInEventsCallback |
<optional> |
- Inherited From:
- Source:
Returns:
- Type
- external:Promise
Type Definitions
setOverlayedImageCallback(error)
Parameters:
Name | Type | Description |
---|---|---|
error |
external:Error |
unsetOverlayedImageCallback(error)
Parameters:
Name | Type | Description |
---|---|---|
error |
external:Error |