Table of Contents

Class WaveFormatConversionStream

Namespace
NAudio.Wave
Assembly
NAudio.WinMM.dll

WaveStream that passes through an ACM Codec

public class WaveFormatConversionStream : WaveStream, IAsyncDisposable, IDisposable, IWaveProvider
Inheritance
WaveFormatConversionStream
Implements
Inherited Members
Extension Methods

Constructors

WaveFormatConversionStream(WaveFormat, WaveStream)

Create a new WaveFormat conversion stream

public WaveFormatConversionStream(WaveFormat targetFormat, WaveStream sourceStream)

Parameters

targetFormat WaveFormat

Desired output format

sourceStream WaveStream

Source stream

Properties

Length

Returns the stream length

public override long Length { get; }

Property Value

long

Position

Gets or sets the current position in the stream

public override long Position { get; set; }

Property Value

long

WaveFormat

Gets the WaveFormat of this stream

public override WaveFormat WaveFormat { get; }

Property Value

WaveFormat

Methods

CreatePcmStream(WaveStream)

Creates a stream that can convert to PCM

public static WaveStream CreatePcmStream(WaveStream sourceStream)

Parameters

sourceStream WaveStream

The source stream

Returns

WaveStream

A PCM stream

Dispose(bool)

Disposes this stream

protected override void Dispose(bool disposing)

Parameters

disposing bool

true if the user called this

Read(byte[], int, int)

Reads converted bytes

public override int Read(byte[] buffer, int offset, int count)

Parameters

buffer byte[]
offset int
count int

Returns

int

Read(Span<byte>)

Reads converted bytes into the provided span

public override int Read(Span<byte> buffer)

Parameters

buffer Span<byte>

Returns

int