Package com.banuba.sdk.effect_player
Class EffectPlayer.CppProxy
java.lang.Object
com.banuba.sdk.effect_player.EffectPlayer.CppProxy
- All Implemented Interfaces:
EffectPlayer
- Enclosing interface:
- EffectPlayer
public static final class EffectPlayer.CppProxy extends java.lang.Object implements EffectPlayer
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.banuba.sdk.effect_player.EffectPlayer
EffectPlayer.CppProxy
-
Method Summary
Modifier and Type Method Description void
_djinni_private_destroy()
void
addCameraPoiListener(CameraPoiListener cameraPoiListener)
Add callback to receive center of the face in frame relative to top-left corner in [0, 1] space.void
addEffectActivationCompletionListener(EffectActivationCompletionListener effectActivationCompletionListener)
Add callback to receive current effect activation notification from Effect Player.void
addEffectInfoListener(EffectInfoListener effectInfoListener)
Add callback to receive current effect info from Effect Player.void
addFaceNumberListener(FaceNumberListener faceNumberListener)
Add callback to receive faces count in frame.void
addFrameDataListener(FrameDataListener frameDataListener)
Add callback to receive frame data right after processing in recognizer.void
addFrameDurationListener(FrameDurationListener frameDurationListener)
Add callback to receive FPS information.void
addLowLightListener(LowLightListener lowLightListener)
Add callback to receive low light info Thread-safe.void
captureBlit(int captureWidth, int captureHeight)
Record last rendering ("draw_()") result into current OpenGL framebuffer.static EffectPlayer
create(EffectPlayerConfiguration configuration)
DebugInterface
debugInterface()
For internal usage onlylong
draw()
Draw the current effect into the current OpenGL framebuffer.Data
drawVideoFrame(FrameData inputFrameData, long timeNs, PixelFormat outputPixelFormat)
Draw processed frame to image buffer.Data
drawVideoFrameAllocated(FrameData inputFrameData, long timeNs, PixelFormat outputPixelFormat, Data allocatedBuffer)
The same as *draw_video_frame* but accepts preallocated buffer to avoid recreation for every frame.long
drawWithExternalFrameData(FrameData frameData)
Draw the current effect into the current OpenGL framebuffer.EffectManager
effectManager()
Get effect manager object Thread-safe.void
enableAudio(boolean enable)
Set audio enabledprotected void
finalize()
Scene
getCurrentScene()
If currently loaded effect is based on new Scene engine and it is loaded completly returns Scene object from the effect.InputManager
getInputManager()
Get interface to control user iterations.EffectPlayerPlaybackState
getPlaybackState()
Thread-safe.boolean
isDeviceNnCompatible()
Check is device compatible with Neural Networks player Thread-safe.boolean
isVoiceChangerConfigured()
Thread-safe.void
onVideoRecordEnd()
Triggers record stop events in EP and Effect.void
onVideoRecordStart(boolean playAudioWhileRecording)
Trigger record start events in EP and Effect.void
playbackPause()
void
playbackPlay()
MUST be called from the main(render) threadvoid
playbackStop()
Data
processImage(FullImageData inputImage, PixelFormat outputPixelFormat, ProcessImageParams params)
Process an image with current effect.byte[]
processImageData(byte[] inputImage, int width, int height, CameraOrientation orientation, boolean isMirrored, PixelFormat inputPixelFormat, PixelFormat outputPixelFormat, ProcessImageParams params)
Process image with current effect.Data
processImageFrameData(FrameData inputFrameData, PixelFormat outputPixelFormat, ProcessImageParams params)
Process an image with current effect.void
processRecordedAudio(java.lang.String inFilename, java.lang.String outFilename, float mixVolume)
Process recorded voice with voice changer effects mixing with recorded sounds.FrameData
processVideoFrame(FullImageData inputImage, ProcessImageParams params, java.lang.Integer recognizerIterations)
Provide frame to evaluate video processing.FrameData
processVideoFrameData(FrameData inputFrameData, ProcessImageParams params, java.lang.Integer recognizerIterations)
Provide frame data to evaluate video processing.void
pushFrame(FullImageData fullImage)
Provides image to process and to play effect.void
pushFrameData(FrameData frameData)
Provides FrameData to process and to play effect.void
pushFrameWithNumber(FullImageData fullImage, long frameNumber)
Provides image to process and to play effect.Data
readPixels(int width, int height)
Receive the last rendered frame in binary form.void
removeCameraPoiListener(CameraPoiListener cameraPoiListener)
Remove callback to receive center of the face in frame relative to top-left Thread-safe.void
removeEffectActivationCompletionListener(EffectActivationCompletionListener effectActivationCompletionListener)
Remove callback to receive current effect activation notification from Effect Player.void
removeEffectInfoListener(EffectInfoListener effectInfoListener)
Remove callback to receive current effect info from Effect Player.void
removeFaceNumberListener(FaceNumberListener faceNumberListener)
Remove callback to receive faces count in frame.void
removeFrameDataListener(FrameDataListener frameDataListener)
Remove callback to receive frame data right after processing in recognizer.void
removeFrameDurationListener(FrameDurationListener frameDurationListener)
Remove callback to receive FPS information.void
removeLowLightListener(LowLightListener lowLightListener)
Remove callback to receive low light info Thread-safe.void
setEffectVolume(float volume)
Set effect audio volume.void
setExternalCameraTexture(int name, int width, int height)
Set OpenGL name of input external texture.void
setFaceSearchMode(FaceSearchMode faceSearch)
Change face search mode Thread-safe.void
setMaxFaces(int maxFaces)
Sets maximum allowed face results, if face tracking feature is present.void
setRecognizerOfflineMode(boolean on)
Force recognizer offline mode Thread-safe.void
setRenderConsistencyMode(ConsistencyMode value)
Thread-safe.void
setRenderTransform(PixelRect imageRect, PixelRect viewportRect, boolean xFlip, boolean yFlip)
Request display of sub-area of the input image into sub-area of the output surface, with optional x,y flips imageRect is fitted inside viewportRect Resets transform to default if either rect has 0 dimensionsvoid
setUseExtCamTex(boolean value)
Use external texture as input source.void
startAnalyticsCapture(java.util.HashMap<java.lang.String,java.lang.String> deviceInfo, AnalyticsConfig config, AnalyticsListener listener)
Request to start analytics capture process.void
startFramedataCapture(java.lang.String folder, java.lang.String filename)
Request to start framedata capture process.void
startVideoProcessing(long screenWidth, long screenHeight, CameraOrientation orientation, boolean resetEffect, boolean offlineMode)
Initialize video processing.void
stopAnalyticsCapture()
void
stopFramedataCapture()
void
stopVideoProcessing(boolean resetEffect)
Finish processing and return renderer to normal state.void
surfaceChanged(int width, int height)
Notify about rendering surface being resized.void
surfaceCreated(int width, int height)
Use to notify the EffectPlayer that the surface exists and effect can be played.void
surfaceDestroyed()
This method should be called right before an active context will become invalid.static int
versionMajor()
Get major version of EffectPlayer.static int
versionMinor()
Get minor version of EffectPlayervoid
writeRecordedAudio(java.lang.String filename, long lengthMs)
Save recorded audio.Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
_djinni_private_destroy
public void _djinni_private_destroy() -
finalize
protected void finalize() throws java.lang.Throwable- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
-
addFrameDurationListener
Description copied from interface:EffectPlayer
Add callback to receive FPS information. Thread-safe. May be called from any thread- Specified by:
addFrameDurationListener
in interfaceEffectPlayer
-
removeFrameDurationListener
Description copied from interface:EffectPlayer
Remove callback to receive FPS information. Thread-safe. May be called from any thread- Specified by:
removeFrameDurationListener
in interfaceEffectPlayer
-
addFaceNumberListener
Description copied from interface:EffectPlayer
Add callback to receive faces count in frame. Thread-safe. May be called from any thread- Specified by:
addFaceNumberListener
in interfaceEffectPlayer
-
removeFaceNumberListener
Description copied from interface:EffectPlayer
Remove callback to receive faces count in frame. Thread-safe. May be called from any thread- Specified by:
removeFaceNumberListener
in interfaceEffectPlayer
-
addFrameDataListener
Description copied from interface:EffectPlayer
Add callback to receive frame data right after processing in recognizer. Thread-safe. May be called from any thread- Specified by:
addFrameDataListener
in interfaceEffectPlayer
-
removeFrameDataListener
Description copied from interface:EffectPlayer
Remove callback to receive frame data right after processing in recognizer. Thread-safe. May be called from any thread- Specified by:
removeFrameDataListener
in interfaceEffectPlayer
-
addLowLightListener
Description copied from interface:EffectPlayer
Add callback to receive low light info Thread-safe. May be called from any thread- Specified by:
addLowLightListener
in interfaceEffectPlayer
-
removeLowLightListener
Description copied from interface:EffectPlayer
Remove callback to receive low light info Thread-safe. May be called from any thread- Specified by:
removeLowLightListener
in interfaceEffectPlayer
-
addCameraPoiListener
Description copied from interface:EffectPlayer
Add callback to receive center of the face in frame relative to top-left corner in [0, 1] space. Thread-safe. May be called from any thread- Specified by:
addCameraPoiListener
in interfaceEffectPlayer
-
removeCameraPoiListener
Description copied from interface:EffectPlayer
Remove callback to receive center of the face in frame relative to top-left Thread-safe. May be called from any thread- Specified by:
removeCameraPoiListener
in interfaceEffectPlayer
-
addEffectInfoListener
Description copied from interface:EffectPlayer
Add callback to receive current effect info from Effect Player. Thread-safe. May be called from any thread- Specified by:
addEffectInfoListener
in interfaceEffectPlayer
-
removeEffectInfoListener
Description copied from interface:EffectPlayer
Remove callback to receive current effect info from Effect Player. Thread-safe. May be called from any thread- Specified by:
removeEffectInfoListener
in interfaceEffectPlayer
-
addEffectActivationCompletionListener
public void addEffectActivationCompletionListener(EffectActivationCompletionListener effectActivationCompletionListener)Description copied from interface:EffectPlayer
Add callback to receive current effect activation notification from Effect Player. Thread-safe. May be called from any thread- Specified by:
addEffectActivationCompletionListener
in interfaceEffectPlayer
-
removeEffectActivationCompletionListener
public void removeEffectActivationCompletionListener(EffectActivationCompletionListener effectActivationCompletionListener)Description copied from interface:EffectPlayer
Remove callback to receive current effect activation notification from Effect Player. Thread-safe. May be called from any thread- Specified by:
removeEffectActivationCompletionListener
in interfaceEffectPlayer
-
setMaxFaces
public void setMaxFaces(int maxFaces)Description copied from interface:EffectPlayer
Sets maximum allowed face results, if face tracking feature is present. Thread-safe. May be called from any thread This option is relevant only for GLFX effects.- Specified by:
setMaxFaces
in interfaceEffectPlayer
-
setExternalCameraTexture
public void setExternalCameraTexture(int name, int width, int height)Description copied from interface:EffectPlayer
Set OpenGL name of input external texture. https://developer.android.com/reference/android/graphics/SurfaceTexture . MUST be called from the render thread- Specified by:
setExternalCameraTexture
in interfaceEffectPlayer
- Parameters:
name
- Texture namewidth
- Textute widthheight
- Texture height- See Also:
Note: This function is Android only. Note: We use texture size to calculate aspect ratio only.
-
setUseExtCamTex
public void setUseExtCamTex(boolean value)Description copied from interface:EffectPlayer
Use external texture as input source. MUST be called from the render thread- Specified by:
setUseExtCamTex
in interfaceEffectPlayer
- See Also:
EffectPlayer.setExternalCameraTexture(int,int,int)
-
surfaceCreated
public void surfaceCreated(int width, int height)Description copied from interface:EffectPlayer
Use to notify the EffectPlayer that the surface exists and effect can be played. 0, 0 for width and height are valid values. MUST be called from the render thread- Specified by:
surfaceCreated
in interfaceEffectPlayer
-
surfaceChanged
public void surfaceChanged(int width, int height)Description copied from interface:EffectPlayer
Notify about rendering surface being resized. MUST be called from the render thread- Specified by:
surfaceChanged
in interfaceEffectPlayer
-
surfaceDestroyed
public void surfaceDestroyed()Description copied from interface:EffectPlayer
This method should be called right before an active context will become invalid. Switches playback state to inactive state. If it's not done an application will be crashed on next draw iteration. After losing the surface effect playback can't be resumed from last position. MUST be called from the render thread- Specified by:
surfaceDestroyed
in interfaceEffectPlayer
-
draw
public long draw()Description copied from interface:EffectPlayer
Draw the current effect into the current OpenGL framebuffer. Uses internal frame_data object obtained from latest push_frame recognition result. Return current frame number if drawing was performed and caller should swap buffers otherwise `DRAW_SKIPPED`(-1) MUST be called from the render thread- Specified by:
draw
in interfaceEffectPlayer
-
drawWithExternalFrameData
Description copied from interface:EffectPlayer
Draw the current effect into the current OpenGL framebuffer. Uses externally provided frameData object instead of internal one obtained from latest push_frame recognition result. Return frame number from provided frameData if drawing was performed and caller should swap buffers otherwise `DRAW_SKIPPED`(-1) MUST be called from the render thread- Specified by:
drawWithExternalFrameData
in interfaceEffectPlayer
-
captureBlit
public void captureBlit(int captureWidth, int captureHeight)Description copied from interface:EffectPlayer
Record last rendering ("draw_()") result into current OpenGL framebuffer. Content is cropped to maintain effect_size() aspect ratio MUST be called from the render thread- Specified by:
captureBlit
in interfaceEffectPlayer
-
readPixels
Description copied from interface:EffectPlayer
Receive the last rendered frame in binary form.- Specified by:
readPixels
in interfaceEffectPlayer
- Parameters:
width
- width of the picture to take, must match the values passed to `setEffectSize` or `create`height
- height of the picture to take, must match the values passed to `setEffectSize` or `create`- Returns:
- RGBA data, size is `width * height * 4` MUST be called from the render thread
-
setRenderConsistencyMode
Description copied from interface:EffectPlayer
Thread-safe. May be called from any thread- Specified by:
setRenderConsistencyMode
in interfaceEffectPlayer
-
setRenderTransform
public void setRenderTransform(PixelRect imageRect, PixelRect viewportRect, boolean xFlip, boolean yFlip)Description copied from interface:EffectPlayer
Request display of sub-area of the input image into sub-area of the output surface, with optional x,y flips imageRect is fitted inside viewportRect Resets transform to default if either rect has 0 dimensions- Specified by:
setRenderTransform
in interfaceEffectPlayer
- Parameters:
imageRect
- rectangle in input image coordinates(pixels) after applying input rotations and flipsviewportRect
- rectangle in output surface coordinates(pixels) MUST be called from the render thread
-
processImage
public Data processImage(FullImageData inputImage, PixelFormat outputPixelFormat, ProcessImageParams params)Description copied from interface:EffectPlayer
Process an image with current effect. Must be called from the render thread.- Specified by:
processImage
in interfaceEffectPlayer
- Parameters:
inputImage
- to avoid conversion recommended to use YUV imageoutputPixelFormat
- to avoid conversion recommended to use RGBAparams
- extra image processing arguments
-
processImageFrameData
public Data processImageFrameData(FrameData inputFrameData, PixelFormat outputPixelFormat, ProcessImageParams params)Description copied from interface:EffectPlayer
Process an image with current effect. Prefer this method over `processImage` when you have extra input data besides just an input image. Must be called from render thread.- Specified by:
processImageFrameData
in interfaceEffectPlayer
- Parameters:
inputFrameData
- `FrameData` with an imageoutputPixelFormat
- to avoid conversion recommended to use RGBAparams
- extra image processing arguments
-
processImageData
public byte[] processImageData(byte[] inputImage, int width, int height, CameraOrientation orientation, boolean isMirrored, PixelFormat inputPixelFormat, PixelFormat outputPixelFormat, ProcessImageParams params)Description copied from interface:EffectPlayer
Process image with current effect. Must be called from render thread. NOTE: inputImage have copy overhead, preferable to use process_image method MUST be called from the render thread- Specified by:
processImageData
in interfaceEffectPlayer
- Parameters:
inputImage
- input image with `width * height * 4` sizeoutputPixelFormat
- to avoid conversion recommended to use RGBA
-
pushFrame
Description copied from interface:EffectPlayer
Provides image to process and to play effect. Thread-safe. May be called from any thread- Specified by:
pushFrame
in interfaceEffectPlayer
-
pushFrameWithNumber
Description copied from interface:EffectPlayer
Provides image to process and to play effect. Thread-safe. May be called from any thread- Specified by:
pushFrameWithNumber
in interfaceEffectPlayer
-
pushFrameData
Description copied from interface:EffectPlayer
Provides FrameData to process and to play effect. Must contain full image. Thread-safe. May be called from any thread- Specified by:
pushFrameData
in interfaceEffectPlayer
-
playbackPlay
public void playbackPlay()Description copied from interface:EffectPlayer
MUST be called from the main(render) thread- Specified by:
playbackPlay
in interfaceEffectPlayer
-
playbackPause
public void playbackPause()- Specified by:
playbackPause
in interfaceEffectPlayer
-
playbackStop
public void playbackStop()- Specified by:
playbackStop
in interfaceEffectPlayer
-
getPlaybackState
Description copied from interface:EffectPlayer
Thread-safe. May be called from any thread- Specified by:
getPlaybackState
in interfaceEffectPlayer
-
getCurrentScene
Description copied from interface:EffectPlayer
If currently loaded effect is based on new Scene engine and it is loaded completly returns Scene object from the effect. Otherwise returns null. MUST be called from the render thread Returned Scene object MUST be used only from the render thread and only while the effect is in the loaded state.- Specified by:
getCurrentScene
in interfaceEffectPlayer
-
setEffectVolume
public void setEffectVolume(float volume)Description copied from interface:EffectPlayer
Set effect audio volume. Thread-safe. May be called from any thread- Specified by:
setEffectVolume
in interfaceEffectPlayer
- Parameters:
volume
- A value in range `[0, 1]`, where `1` means maximum volume.
-
enableAudio
public void enableAudio(boolean enable)Description copied from interface:EffectPlayer
Set audio enabled- Specified by:
enableAudio
in interfaceEffectPlayer
-
getInputManager
Description copied from interface:EffectPlayer
Get interface to control user iterations. This events will be passed to effect. Thread-safe. May be called from any thread- Specified by:
getInputManager
in interfaceEffectPlayer
-
startVideoProcessing
public void startVideoProcessing(long screenWidth, long screenHeight, CameraOrientation orientation, boolean resetEffect, boolean offlineMode)Description copied from interface:EffectPlayer
Initialize video processing. To provide frames use *process_video_frame* methods. Effect audio is recorded as well and can be accessed using *process_recorded_audio* and *write_recorded_audio*. *push_frame* should not be called during processing. MUST be called from the render thread- Specified by:
startVideoProcessing
in interfaceEffectPlayer
-
stopVideoProcessing
public void stopVideoProcessing(boolean resetEffect)Description copied from interface:EffectPlayer
Finish processing and return renderer to normal state. MUST be called from the render thread- Specified by:
stopVideoProcessing
in interfaceEffectPlayer
-
processVideoFrameData
public FrameData processVideoFrameData(FrameData inputFrameData, ProcessImageParams params, java.lang.Integer recognizerIterations)Description copied from interface:EffectPlayer
Provide frame data to evaluate video processing. MUST be called from the render thread- Specified by:
processVideoFrameData
in interfaceEffectPlayer
- Parameters:
inputFrameData
- Frame Data to process.params
- Processing params.recognizerIterations
- Number of processing iterations. Higher number means higher processing quality, but lower speed. Must be greater than 1. Pass null value for default number.- Returns:
- Frame data with frame processing results.
-
processVideoFrame
public FrameData processVideoFrame(FullImageData inputImage, ProcessImageParams params, java.lang.Integer recognizerIterations)Description copied from interface:EffectPlayer
Provide frame to evaluate video processing. MUST be called from the render thread- Specified by:
processVideoFrame
in interfaceEffectPlayer
- Parameters:
inputImage
- Image to process.params
- Processing params.recognizerIterations
- Number of processing iterations. Higher number means higher processing quality, but lower speed. Must be greater than 1. Pass null value for default number.- Returns:
- Frame data with frame processing results.
-
drawVideoFrame
Description copied from interface:EffectPlayer
Draw processed frame to image buffer. MUST be called from the render thread- Specified by:
drawVideoFrame
in interfaceEffectPlayer
- Parameters:
inputFrameData
- FrameData to draw.timeNs
- Frame position on timeline.outputPixelFormat
- Output image format.- Returns:
- Buffer with processed image in selected format.
-
drawVideoFrameAllocated
public Data drawVideoFrameAllocated(FrameData inputFrameData, long timeNs, PixelFormat outputPixelFormat, Data allocatedBuffer)Description copied from interface:EffectPlayer
The same as *draw_video_frame* but accepts preallocated buffer to avoid recreation for every frame. MUST be called from the render thread- Specified by:
drawVideoFrameAllocated
in interfaceEffectPlayer
-
isVoiceChangerConfigured
public boolean isVoiceChangerConfigured()Description copied from interface:EffectPlayer
Thread-safe. May be called from any thread- Specified by:
isVoiceChangerConfigured
in interfaceEffectPlayer
-
processRecordedAudio
public void processRecordedAudio(java.lang.String inFilename, java.lang.String outFilename, float mixVolume)Description copied from interface:EffectPlayer
Process recorded voice with voice changer effects mixing with recorded sounds. Copies in->out if no voice changer or effect is active. Not thread-safe but can be called from any thread. Recorded sounds have the same lifetime as the effect(e.g reset after load_effect, etc.).- Specified by:
processRecordedAudio
in interfaceEffectPlayer
- Parameters:
inFilename
- Input filename.outFilename
- Must have ".wav" extension.mixVolume
- Relative volume for mixing in sounds, [0..1].
-
writeRecordedAudio
public void writeRecordedAudio(java.lang.String filename, long lengthMs)Description copied from interface:EffectPlayer
Save recorded audio. Not thread-safe but can be called from any thread.- Specified by:
writeRecordedAudio
in interfaceEffectPlayer
- Parameters:
filename
- ".wav" extension must be used.lengthMs
- Track length. Set to '0' to use full duration.
-
onVideoRecordStart
public void onVideoRecordStart(boolean playAudioWhileRecording)Description copied from interface:EffectPlayer
Trigger record start events in EP and Effect. Records all sounds during recording to be replayed by `processRecordedAudio`. If @param playAudioWhileRecording is true, the audio will continue to play. Otherwise, the audio will be muted. Thread-safe. May be called from any thread- Specified by:
onVideoRecordStart
in interfaceEffectPlayer
-
onVideoRecordEnd
public void onVideoRecordEnd()Description copied from interface:EffectPlayer
Triggers record stop events in EP and Effect. Thread-safe. May be called from any thread- Specified by:
onVideoRecordEnd
in interfaceEffectPlayer
-
isDeviceNnCompatible
public boolean isDeviceNnCompatible()Description copied from interface:EffectPlayer
Check is device compatible with Neural Networks player Thread-safe. May be called from any thread On some platforms (e.g. Android) may require the first invocation to be on the render thread- Specified by:
isDeviceNnCompatible
in interfaceEffectPlayer
-
startFramedataCapture
public void startFramedataCapture(java.lang.String folder, java.lang.String filename)Description copied from interface:EffectPlayer
Request to start framedata capture process. Output file is in CBOR format. Thread-safe. May be called from any thread- Specified by:
startFramedataCapture
in interfaceEffectPlayer
- Parameters:
folder
- Output folder.filename
- Output filename. If the value is an empty string, filename is generated based on date and time.
-
stopFramedataCapture
public void stopFramedataCapture()- Specified by:
stopFramedataCapture
in interfaceEffectPlayer
- See Also:
EffectPlayer.startFramedataCapture(java.lang.String,java.lang.String)
-
startAnalyticsCapture
public void startAnalyticsCapture(java.util.HashMap<java.lang.String,java.lang.String> deviceInfo, AnalyticsConfig config, AnalyticsListener listener)Description copied from interface:EffectPlayer
Request to start analytics capture process. Analytics supports two business cases: 1. Capture high resolution photo with face (bigger than 720p). 2. Capture N frames with face (N is configurable, if N=0 capturer will skip this case). Result is a path to CBOR file with images and face recognition results, compressed with zlib. Thread-safe. May be called from any thread- Specified by:
startAnalyticsCapture
in interfaceEffectPlayer
- Parameters:
deviceInfo
- Any user specific information to attach in analytics report.config
- Setup configurable properties (like frames counter and delay before capture).listener
- Callback which is fired in one of two above mentioned cases.
-
stopAnalyticsCapture
public void stopAnalyticsCapture()- Specified by:
stopAnalyticsCapture
in interfaceEffectPlayer
-
effectManager
Description copied from interface:EffectPlayer
Get effect manager object Thread-safe. May be called from any thread- Specified by:
effectManager
in interfaceEffectPlayer
-
debugInterface
Description copied from interface:EffectPlayer
For internal usage only- Specified by:
debugInterface
in interfaceEffectPlayer
-
setRecognizerOfflineMode
public void setRecognizerOfflineMode(boolean on)Description copied from interface:EffectPlayer
Force recognizer offline mode Thread-safe. May be called from any thread- Specified by:
setRecognizerOfflineMode
in interfaceEffectPlayer
-
setFaceSearchMode
Description copied from interface:EffectPlayer
Change face search mode Thread-safe. May be called from any thread- Specified by:
setFaceSearchMode
in interfaceEffectPlayer
-
create
-
versionMajor
public static int versionMajor()Description copied from interface:EffectPlayer
Get major version of EffectPlayer. Use this method to filter out breaking changes in implementation of this class.- See Also:
EffectPlayer.versionMinor
-
versionMinor
public static int versionMinor()Description copied from interface:EffectPlayer
Get minor version of EffectPlayer- See Also:
EffectPlayer.versionMajor
-