Namespace NAudio.Wave
Classes
- AdpcmWaveFormat
Microsoft ADPCM See http://icculus.org/SDL_sound/downloads/external_documentation/wavecomp.htm
- AiffFileReader
A read-only stream of AIFF data based on an aiff file with an associated WaveFormat originally contributed to NAudio by Giawa
- AiffFileWriter
This class writes audio data to a .aif file on disk
- BlockAlignReductionStream
Helper stream that lets us read from compressed audio files with large block alignment as though we could read any amount and reposition anywhere
- BufferedWaveProvider
Provides a buffered store of samples Read method will return queued samples or fill buffer with zeroes Now backed by a circular buffer
- BwfWriter
Broadcast WAVE File Writer
- Cue
Holds information on a cue: a labeled position within a Wave file
- CueList
Holds a list of cues
- CueWaveFileReader
A wave file reader supporting cue reading
- CueWaveFileWriter
A wave file writer that adds cue support
- DirectSoundDeviceInfo
Class for enumerating DirectSound devices
- DirectSoundOut
NativeDirectSoundOut using DirectSound COM interop. Contact author: Alexandre Mutel - alexandre_mutel at yahoo.fr Modified by: Graham "Gee" Plumb
- Gsm610WaveFormat
GSM 610
- Id3v2Tag
An ID3v2 Tag
- ImaAdpcmWaveFormat
IMA/DVI ADPCM Wave Format Work in progress
- MixingWaveProvider32
WaveProvider that can mix together multiple 32 bit floating point input provider All channels must have the same number of inputs and same sample rate n.b. Work in Progress - not tested yet
- MonoToStereoProvider16
Converts from mono to stereo, allowing freedom to route all, some, or none of the incoming signal to left or right channels
- Mp3FileReaderBase
Class for reading from MP3 files
- Mp3Frame
Represents an MP3 Frame
- Mp3WaveFormat
MP3 WaveFormat, MPEGLAYER3WAVEFORMAT from mmreg.h
- MultiplexingWaveProvider
Allows any number of inputs to be patched to outputs Uses could include swapping left and right channels, turning mono into stereo, feeding different input sources to different soundcard outputs etc
- RawSourceWaveStream
WaveStream that simply passes on data from its source stream (e.g. a MemoryStream)
- RiffChunk
Holds information about a RIFF file chunk
- SampleEventArgs
Sample event arguments
- SilenceProvider
Silence producing wave provider Useful for playing silence when doing a WASAPI Loopback Capture
- SimpleCompressorEffect
A simple compressor
- StereoToMonoProvider16
Takes a stereo 16 bit input and turns it mono, allowing you to select left or right channel only or mix them together
- StoppedEventArgs
Stopped Event Args
- TrueSpeechWaveFormat
DSP Group TrueSpeech
- VolumeWaveProvider16
Helper class allowing us to modify the volume of a 16 bit stream without converting to IEEE float
- Wave16ToFloatProvider
Converts 16 bit PCM to IEEE float, optionally adjusting volume along the way
- Wave32To16Stream
WaveStream that converts 32 bit audio back down to 16 bit, clipping if necessary
- WaveBuffer
WaveBuffer class use to store wave datas. Data can be manipulated with arrays (ByteBuffer,FloatBuffer,ShortBuffer,IntBuffer ) that are pointing to the same memory buffer. Use the associated Count property based on the type of buffer to get the number of data in the buffer. Implicit casting is now supported to float[], byte[], int[], short[]. You must not use Length on returned arrays.
n.b. FieldOffset is 8 now to allow it to work natively on 64 bit
- WaveChannel32
Represents Channel for the WaveMixerStream 32 bit output and 16 bit input It's output is always stereo The input stream can be panned
- WaveExtensionMethods
Useful extension methods to make switching between WaveAndSampleProvider easier
- WaveFileReader
This class supports the reading of WAV files, providing a repositionable WaveStream that returns the raw data contained in the WAV file
- WaveFileWriter
This class writes WAV data to a .wav file on disk
- WaveFloatTo16Provider
Converts IEEE float to 16 bit PCM, optionally clipping and adjusting volume along the way
- WaveFormat
Represents a Wave file format
- WaveFormatCustomMarshaler
Custom marshaller for WaveFormat structures
- WaveFormatExtensible
WaveFormatExtensible http://www.microsoft.com/whdc/device/audio/multichaud.mspx
- WaveFormatExtraData
This class used for marshalling from unmanaged code
- WaveInEventArgs
Event Args for WaveInStream event
- WaveInProvider
Buffered WaveProvider taking source data from WaveIn
- WaveMixerStream32
WaveStream that can mix together multiple 32 bit input streams (Normally used with stereo input channels) All channels must have the same number of inputs
- WaveOffsetStream
Simply shifts the input stream in time, optionally clipping its start and end. (n.b. may include looping in the future)
- WaveProvider16
Base class for creating a 16 bit wave provider
- WaveProvider32
Base class for creating a 32 bit floating point wave provider Can also be used as a base class for an ISampleProvider that can be plugged straight into anything requiring an IWaveProvider
- WaveRecorder
Utility class to intercept audio from an IWaveProvider and save it to disk
- WaveStream
Base class for all WaveStream classes. Derives from stream.
- XingHeader
Represents a Xing VBR header
Structs
- AiffFileReader.AiffChunk
AIFF Chunk
Interfaces
- IMp3FrameDecompressor
Interface for MP3 frame by frame decoder
- ISampleNotifier
An interface for WaveStreams which can report notification of individual samples
- ISampleProvider
Like IWaveProvider, but makes it much simpler to put together a 32 bit floating point mixing engine
- IWaveBuffer
IWaveBuffer interface use to store wave datas. Data can be manipulated with arrays (ByteBuffer,FloatBuffer, ShortBuffer,IntBuffer ) that are pointing to the same memory buffer. This is a requirement for all subclasses.
Use the associated Count property based on the type of buffer to get the number of data in the buffer.
WaveBuffer for the standard implementation using C# unions.
- IWaveIn
Generic interface for wave recording
- IWavePlayer
Represents the interface to a device that can play a WaveFile
- IWavePosition
Interface for IWavePlayers that can report position
- IWaveProvider
Generic interface for all WaveProviders.
Enums
- ChannelMode
Channel Mode
- Mp3WaveFormatFlags
Wave Format Padding Flags
- Mp3WaveFormatId
Wave Format ID
- MpegLayer
MPEG Layer flags
- MpegVersion
MPEG Version Flags
- PlaybackState
Playback State
- WaveFormatEncoding
Summary description for WaveFormatEncoding.
Delegates
- Mp3FileReaderBase.FrameDecompressorBuilder
Function that can create an MP3 Frame decompressor