Skip to main content
Version: 2.x

Class ViEffect

VoiceIsolation effect for OdinNative.Wrapper.MediaPipeline

Declaration
public class ViEffect : PipelineEffect, IPipelineEffect

Inheritance: System.Object -> OdinNative.Wrapper.Media.PipelineEffect

Implements:
OdinNative.Wrapper.Media.IPipelineEffect

Properties

Enabled

Indicates whether the effect will attenuate non-speech portions of the input audio signal

Declaration
public bool Enabled { get; set; }

AttenuationLimitDb

Maximum attenuation applied to non-speech in dB; values of 100 and above remove background sound entirely, while values close to 0 disable noise reduction.

Declaration
public float AttenuationLimitDb { get; set; }

Fields

Config

Intern voice isolation configuration

Declaration
public NativeBindings.OdinViConfig Config

Methods

UpdateEffectConfig()

Set voice isolation configuration

Declaration
public bool UpdateEffectConfig()
Returns

System.Boolean: true on success or false

SetViConfig(OdinViConfig)

Set managed voice isolation configuration

Declaration
public override NativeBindings.OdinError SetViConfig(NativeBindings.OdinViConfig config)
Returns

OdinNative.Core.Imports.NativeBindings.OdinError: updated config

Parameters
TypeNameDescription
OdinNative.Core.Imports.NativeBindings.OdinViConfigconfignew config

GetViConfig()

Get native voice isolation configuration

Declaration
public NativeBindings.OdinViConfig GetViConfig()
Returns

OdinNative.Core.Imports.NativeBindings.OdinViConfig: updated config

SetVadConfig(OdinVadConfig)

Not supported

Declaration
public override NativeBindings.OdinError SetVadConfig(NativeBindings.OdinVadConfig config)
Returns

OdinNative.Core.Imports.NativeBindings.OdinError

Parameters
TypeName
OdinNative.Core.Imports.NativeBindings.OdinVadConfigconfig
Exceptions

OdinNative.Wrapper.OdinWrapperException

GetVadConfig(out OdinVadConfig)

Not supported

Declaration
public override NativeBindings.OdinError GetVadConfig(out NativeBindings.OdinVadConfig config)
Returns

OdinNative.Core.Imports.NativeBindings.OdinError

Parameters
TypeName
OdinNative.Core.Imports.NativeBindings.OdinVadConfigconfig
Exceptions

OdinNative.Wrapper.OdinWrapperException

SetApmConfig(OdinApmConfig)

Not supported

Declaration
public override NativeBindings.OdinError SetApmConfig(NativeBindings.OdinApmConfig config)
Returns

OdinNative.Core.Imports.NativeBindings.OdinError

Parameters
TypeName
OdinNative.Core.Imports.NativeBindings.OdinApmConfigconfig
Exceptions

OdinNative.Wrapper.OdinWrapperException

UpdateApmPlayback(float[], ulong)

Not supported

Declaration
public override NativeBindings.OdinError UpdateApmPlayback(float[] audio, ulong msDelay)
Returns

OdinNative.Core.Imports.NativeBindings.OdinError

Parameters
TypeName
System.Single[]audio
System.UInt64msDelay
Exceptions

OdinNative.Wrapper.OdinWrapperException

Create(MediaPipeline, out ViEffect)

Insert a vi effect in the specified pipeline

Declaration
public static bool Create(MediaPipeline pipeline, out ViEffect vi)
Returns

System.Boolean: true on success or false

Parameters
TypeNameDescription
OdinNative.Wrapper.MediaPipelinepipelinewhere to create a vi effect
OdinNative.Wrapper.Media.ViEffectvicreated OdinNative.Wrapper.Media.ViEffect instance or null

Create(MediaPipeline, OdinViConfig)

Insert a vi effect in the specified pipeline and sets the vi config

Declaration
public static ViEffect Create(MediaPipeline pipeline, NativeBindings.OdinViConfig config)
Returns

OdinNative.Wrapper.Media.ViEffect: Instance of OdinNative.Wrapper.Media.ViEffect

Parameters
TypeNameDescription
OdinNative.Wrapper.MediaPipelinepipelinewhere to create a vi effect
OdinNative.Core.Imports.NativeBindings.OdinViConfigconfigconfiguration settings for vi

Implements