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​