Android API reference
Complete API reference for the Video Mobile SDK on Android.
This reference documents all public classes, methods, and types in the Android Video Mobile SDK.
DynamicProcessor
The core class for image and video processing.
class DynamicProcessor(context: Context)Initialize the SDK
Methods for setting up the SDK and verifying license status.
setLicence
Configures the SDK license.
fun setLicence(apiKey: String?, cert: String?, recreate: Boolean = false)| Parameter | Type | Description |
|---|---|---|
apiKey | String? | Your API key from EyeQ |
cert | String? | Your certificate string |
recreate | Boolean | Set true to reinitialize with new credentials |
init
Initializes the processing engine.
fun init(useGpu: Boolean)| Parameter | Type | Description |
|---|---|---|
useGpu | Boolean | true for GPU acceleration, false for CPU |
Call on a background thread. Initialization may take several seconds.
isInitialized
Property that indicates if the processor is ready.
var isInitialized: BooleanReturns: true if initialized and ready for processing.
checkCertificate
Validates a license certificate.
fun checkCertificate(apiKey: String, cert: String): Int| Parameter | Type | Description |
|---|---|---|
apiKey | String | API key to validate |
cert | String | Certificate to validate |
Returns: Positive value = days remaining, -1 = expired, -2 = wrong apikey/certificate combination, -10 or -11 = missing manager.
getDaysLeft
Returns remaining days on the license.
fun getDaysLeft(): IntReturns: Number of days until license expires.
isDelegateSupported
Checks if GPU delegate is supported on the current device.
fun isDelegateSupported(): BooleanReturns: true if GPU acceleration is supported.
Image processing
Methods for processing still images at different quality levels.
processImage
Processes an image at full resolution.
fun processImage(bitmap: Bitmap, strength: Float = 1.0f): Bitmap| Parameter | Type | Description |
|---|---|---|
bitmap | Bitmap | Source image |
strength | Float | Correction intensity (0.0–1.0), defaults to 1.0 |
Returns: Processed Bitmap at original resolution.
processImagePreview
Processes an image optimized for preview display.
fun processImagePreview(bitmap: Bitmap, strength: Float = 1.0f): DynamicOutputs| Parameter | Type | Description |
|---|---|---|
bitmap | Bitmap | Source image |
strength | Float | Correction intensity (0.0–1.0), defaults to 1.0 |
Returns: DynamicOutputs for use with DynamicView. Faster than processImage but for preview only.
Video processing
Methods optimized for real-time video frame processing with temporal consistency.
processCameraFrame
Processes a live camera frame.
fun processCameraFrame(bitmap: Bitmap, strength: Float): DynamicOutputs| Parameter | Type | Description |
|---|---|---|
bitmap | Bitmap | Camera frame as bitmap |
strength | Float | Correction intensity (0.0–1.0) |
Returns: DynamicOutputs for use with DynamicView.
consumePlayerFrame
Feeds a video player frame for deflicker averaging. Call this before processPlayerFrame.
fun consumePlayerFrame(frameBuffer: ByteBuffer)| Parameter | Type | Description |
|---|---|---|
frameBuffer | ByteBuffer | Buffer of frame from video player |
processPlayerFrame
Processes a video player frame. Must call consumePlayerFrame first to provide the frame data.
fun processPlayerFrame(strength: Float = 1.0f): DynamicOutputs| Parameter | Type | Description |
|---|---|---|
strength | Float | Correction intensity (0.0–1.0), defaults to 1.0 |
Returns: DynamicOutputs for use with DynamicView.
processTranscoderFrame
Processes a frame during video transcoding.
fun processTranscoderFrame(frameBuffer: ByteBuffer, strength: Float = 1.0f): DynamicOutputs| Parameter | Type | Description |
|---|---|---|
frameBuffer | ByteBuffer | Buffer of frame from transcoder |
strength | Float | Correction intensity (0.0–1.0), defaults to 1.0 |
Returns: DynamicOutputs for use with DynamicView.
Deflickering
Methods for configuring temporal smoothing to prevent flickering in video.
setDeflickerParams
Configures temporal smoothing for video.
fun setDeflickerParams(frames: Int, curveAvg: Float, imgAvg: Float)| Parameter | Type | Description |
|---|---|---|
frames | Int | Number of frames to skip between inferences |
curveAvg | Float | Tone curve smoothing, 0–1 (recommended: 0.08) |
imgAvg | Float | Image correction smoothing, 0–1 (recommended: 0.9) |
resetDeflicker
Resets the deflickering state. Call when switching cameras, starting a new video, or seeking.
fun resetDeflicker()Benchmarking
Attach a listener to monitor processing performance and identify bottlenecks.
setBenchListener
Sets a listener for performance benchmarking.
fun setBenchListener(listener: EyeQBenchListener)| Parameter | Type | Description |
|---|---|---|
listener | EyeQBenchListener | Listener to receive benchmark callbacks |
DynamicView
OpenGL-based view for efficient preview rendering.
class DynamicView : GLSurfaceViewSetup
Methods for configuring the view with image data and correction parameters.
setBitmap
Sets the source image for display.
fun setBitmap(bitmap: Bitmap)setParams
Configures the correction parameters from processing output.
fun setParams(global: FloatArray, local: FloatArray, fusion: FloatArray)Rendering
Methods for triggering display updates and capturing results.
requestRender
Triggers a render update.
fun requestRender()getResultBitmap
Captures the current rendered result.
fun getResultBitmap(): BitmapAdjustments
Methods for modifying the display without reprocessing the image.
setStrength
Adjusts correction intensity without reprocessing.
fun setStrength(strength: Float)setRotation
Applies rotation to the displayed image.
fun setRotation(rotation: TextureRotation)setFlipHorizontal / setFlipVertical
Flips the image.
fun setFlipHorizontal(flip: Boolean)
fun setFlipVertical(flip: Boolean)setBenchListener
Sets a listener for rendering performance benchmarking.
fun setBenchListener(listener: ImageBenchListener)Data types
Data structures and enumerations used throughout the SDK.
DynamicOutputs
Output data from preview and video processing.
data class DynamicOutputs(
var global: FloatArray,
var local: FloatArray,
var fusion: FloatArray,
var lut: FloatBuffer? = null
)| Property | Type | Description |
|---|---|---|
global | FloatArray | Global correction parameters |
local | FloatArray | Local correction parameters |
fusion | FloatArray | Fusion parameters |
lut | FloatBuffer? | Optional lookup table |
TensorflowDelegate
Hardware acceleration options.
enum class TensorflowDelegate {
CPU,
GPU,
NNAPI
}TextureRotation
Image rotation options for DynamicView.
enum class TextureRotation {
NORMAL,
ROTATION_90,
ROTATION_180,
ROTATION_270
}ImageScaleType
Image scaling behavior in DynamicView.
enum class ImageScaleType {
CENTER_CROP,
CENTER_INSIDE
}Benchmarking interfaces
Interfaces for monitoring SDK performance.
EyeQBenchListener
Listener for DynamicProcessor benchmarking.
interface EyeQBenchListener {
fun onDynamic(bench: BenchDynamic)
fun onEgl(bench: BenchEgl)
fun onDeflicker(consumeTime: Long)
}BenchDynamic
Processing benchmark data.
data class BenchDynamic(
var scaleTime: Long,
var readFromBitmap: Long,
var normalizeTime: Long,
var inferenceTime: Long,
var adjustTime: Long
)BenchEgl
EGL rendering benchmark data.
data class BenchEgl(
val textureTime: Long,
val renderTime: Long,
val readTime: Long,
val releaseTime: Long
)ImageBenchListener
Listener for DynamicView benchmarking.
interface ImageBenchListener {
fun onLoadTexture(time: Long)
fun onRender(time: Long)
fun onReadPixels(time: Long)
}Utility classes
Helper classes for common tasks when working with camera frames and image data.
YuvToRgbConverter
Converts YUV camera frames to RGB bitmaps.
class YuvToRgbConverter(context: Context)yuvToRgb
Converts a YUV image to RGB bitmap.
fun yuvToRgb(image: Image, output: Bitmap)forPreview
Creates a converter optimized for preview.
fun forPreview(): YuvToRgbConverterVIDEO-SDK Version 1.0.0.23 built from aa5eef97017e23db1d3051b079500606825ef474 on 5-6-2023.
Copyright © 2026 EyeQ Imaging Inc. All rights reserved.