Skip to main content
Version: 2.x

Class OdinApmComponent

AudioProcessingModule component for OdinNative.Wrapper.Media.ApmEffect

This class provides configuration for the native implemented audio processing. The supported processor/filter are applicable to OdinNative.Wrapper.Media.IMedia which must be set.

Declaration
[HelpURL("https://docs.4players.io/voice/unity/next/api/OdinNative.Unity.Audio/OdinApmComponent/")]
[AddComponentMenu("Odin/Audio/Effect/Audio processing module")]
public class OdinApmComponent : MonoBehaviour, IOdinEffect

Inheritance: System.Object -> UnityEngine.Object -> UnityEngine.Component -> UnityEngine.Behaviour -> UnityEngine.MonoBehaviour

Implements:
OdinNative.Unity.Audio.IOdinEffect

Properties

Media

Declaration
public IMedia Media { get; set; }

Effect

Declaration
public ApmEffect Effect { get; }

IsCreated

Declaration
public bool IsCreated { get; }

Fields

EchoCanceller

Declaration
public bool EchoCanceller

HighPassFilter

Declaration
public bool HighPassFilter

TransientSuppressor

Declaration
public bool TransientSuppressor

NoiseSuppressionLevel

Declaration
public NativeBindings.OdinNoiseSuppressionLevel NoiseSuppressionLevel

GainControllerVersion

Declaration
public NativeBindings.OdinGainControllerVersion GainControllerVersion

Methods

UpdateConfig()

Declaration
public void UpdateConfig()

UpdateConfig(MediaPipeline)

Declaration
public void UpdateConfig(MediaPipeline pipeline)
Parameters
TypeName
OdinNative.Wrapper.MediaPipelinepipeline

ResetEffect()

Declaration
public void ResetEffect()

ResetEffect(MediaPipeline, uint, bool, OdinApmConfig)

Declaration
public void ResetEffect(MediaPipeline pipeline, uint samplerate, bool stereo, NativeBindings.OdinApmConfig config)
Parameters
TypeName
OdinNative.Wrapper.MediaPipelinepipeline
System.UInt32samplerate
System.Booleanstereo
OdinNative.Core.Imports.NativeBindings.OdinApmConfigconfig

UpdateApmPlayback(float[], ulong)

Send samples to Apm processing. The buffer should contain loopback audio data for calculating echo cancellation.

Declaration
public void UpdateApmPlayback(float[] buffer, ulong delay = 100)
Parameters
TypeNameDescription
System.Single[]buffersamples
System.UInt64delaydelay

GetMedia<T>()

Declaration
public T GetMedia<T>() where T : IMedia
Returns

<T>

Type Parameters
  • T

GetEffect()

Declaration
public PipelineEffect GetEffect()
Returns

OdinNative.Wrapper.Media.PipelineEffect

Implements