Table of Contents

Class AudioRenderClient

Namespace
NAudio.CoreAudioApi
Assembly
NAudio.Wasapi.dll

Audio Render Client

public class AudioRenderClient : IDisposable
Inheritance
AudioRenderClient
Implements
Inherited Members

Methods

Dispose()

Dispose

public void Dispose()

GetBuffer(int)

Gets a pointer to the buffer

public nint GetBuffer(int numFramesRequested)

Parameters

numFramesRequested int

Number of frames requested

Returns

nint

Pointer to the buffer

GetBufferLease(int, int)

Gets a writable Span over the WASAPI render buffer. The returned lease must be disposed (which calls ReleaseBuffer) before the next call to GetBuffer. Write audio data directly into Buffer to avoid copies.

public RenderBufferLease GetBufferLease(int numFramesRequested, int bytesPerFrame)

Parameters

numFramesRequested int

Number of frames requested

bytesPerFrame int

Bytes per frame (WaveFormat.BlockAlign)

Returns

RenderBufferLease

A lease that provides a writable Span and releases the buffer on dispose

ReleaseBuffer(int, AudioClientBufferFlags)

Release buffer

public void ReleaseBuffer(int numFramesWritten, AudioClientBufferFlags bufferFlags)

Parameters

numFramesWritten int

Number of frames written

bufferFlags AudioClientBufferFlags

Buffer flags