Table of Contents

Class OffsetSampleProvider

Namespace
NAudio.Wave.SampleProviders
Assembly
NAudio.Core.dll

Allows you to:

  1. insert a pre-delay of silence before the source begins
  2. skip over a certain amount of the beginning of the source
  3. only play a set amount from the source
  4. insert silence at the end after the source is complete
public class OffsetSampleProvider : ISampleProvider
Inheritance
OffsetSampleProvider
Implements
Inherited Members
Extension Methods

Constructors

OffsetSampleProvider(ISampleProvider)

Creates a new instance of offsetSampleProvider

public OffsetSampleProvider(ISampleProvider sourceProvider)

Parameters

sourceProvider ISampleProvider

The Source Sample Provider to read from

Properties

DelayBy

Amount of silence to insert before playing

public TimeSpan DelayBy { get; set; }

Property Value

TimeSpan

DelayBySamples

Number of samples of silence to insert before playing source

public int DelayBySamples { get; set; }

Property Value

int

LeadOut

Amount of silence to insert after playing source

public TimeSpan LeadOut { get; set; }

Property Value

TimeSpan

LeadOutSamples

Number of samples of silence to insert after playing source

public int LeadOutSamples { get; set; }

Property Value

int

SkipOver

Amount of audio to skip over from the source before beginning playback

public TimeSpan SkipOver { get; set; }

Property Value

TimeSpan

SkipOverSamples

Number of samples in source to discard

public int SkipOverSamples { get; set; }

Property Value

int

Take

Amount of audio to take from the source (TimeSpan.Zero means play to end)

public TimeSpan Take { get; set; }

Property Value

TimeSpan

TakeSamples

Number of samples to read from source (if 0, then read it all)

public int TakeSamples { get; set; }

Property Value

int

WaveFormat

The WaveFormat of this SampleProvider

public WaveFormat WaveFormat { get; }

Property Value

WaveFormat

Methods

Read(Span<float>)

Reads from this sample provider

public int Read(Span<float> buffer)

Parameters

buffer Span<float>

Sample buffer

Returns

int

Number of samples read