Skip to content

Processing

This guide explains the Mimi Processing concepts and how to integrate it into your application.

Overview

For a detailed view, familiarize yourself with the Mimi Processing concepts.

Configuration and Activation

To initialize the Mimi Processing, you first need to activate a ProcessingSession.

To do this you need to provide a MimiProcessingConfiguration instance to define its configuration.

Example

Activate a ProcessingSession with a MimiProcessingConfiguration

First define a MimiProcessingConfiguration instance:

val configuration : MimiProcessingConfiguration = TODO("Define your configuration here")

Then activate the ProcessingSession:

val session : Result<ProcessingSession> = MimiCore.processingController.activateSession(configuration)

Warning

It is important to handle the activateSession() Result in your application, as connection issues may cause the activateSession() call to fail.

Basic or Automatic Mimi Processing Configuration?

There are two MimiProcessingConfiguration modes:

A Mimi Processor device will only support one mode of configuration and MimiProcessingConfiguration.Basic should be used with older devices without Automatic support.

Comparison of modes:

Basic Automatic
Feature Availability Only Media Sound Personalization Varies - determined by Mimi Processor device
Applicators One per MimiProcessingParameter, included independent timeouts A single Applicator for all communication
Preset Data Source Configurable (Single, Fine Tuning or Group).
Fitting selection is
Not configurable - only supports Fine Tuning)
Parameter Data Persistence Managed by MSDK Managed by Mimi Processor device

Feature Availability

The following features are available depending on the Processor's capabilities, they can be accessed from the ProcessingSession instance.

Feature Included Modules Parameters Notes
Sound Personalization (soundPersonalization) Media (media) isEnabled,
intensity,
preset
MimiProcessingConfiguration.Basic mode only supports this module.
Voice Call (voiceCall) isEnabled,
intensity,
preset
Voice Clarity (voiceClarity) Ambient Sound Personalization (ambient) isEnabled,
intensity,
preset
Denoiser (denoiser) isEnabled,
intensity

If a Feature or a Module are unavailable, then they are set to null.

MimiProcessingParameter Operations

Once your ProcessingSession has been activated, you can interact with its MimiProcessingParameters to observe and update their values.