AudioOutput

abstract class NatML.Devices.Outputs.AudioOutput : IDisposable

The AudioOutput is an abstract base class for defining media device outputs that consume AudioBuffer instances.

Updating with New Buffers

/// <summary>
/// Update the output with a new audio buffer.
/// </summary>
/// <param name="audioBuffer">Audio buffer.</param>
abstract void Update (AudioBuffer audioBuffer);

The audio output is updated with the Update method. The output will then consume the data within the AudioBuffer, performing any necessary computations and transformations.

Disposing the Output

/// <summary>
/// Dispose the audio output and release resources.
/// </summary>
virtual void Dispose ();

The Dispose method performs a cleanup and releases any resources held by the output.

Always remember to dispose outputs to prevent resource leaks.

Implicit Delegate Conversion

/// <summary>
/// Implicitly convert the output to an audio buffer delegate.
/// </summary>
static implicit operator Action<AudioBuffer> (AudioOutput output);

The AudioOutput class defines an implicit conversion to an Action<AudioBuffer>, allowing the output to be passed directly to AudioDevice.StartRunning.

Last updated