-
Notifications
You must be signed in to change notification settings - Fork 6
Home
Members | Descriptions |
---|---|
enum AudioChannel
|
|
class BGC::Audio::BGCAudioClip
|
|
class BGC::Audio::BGCClipPlayer
|
Ability to programmatically play BGCStreams in a Unity scene, with a callback on completion. |
class BGC::Audio::BGCStream
|
|
class BGC::Audio::BGCStreamExtensions
|
Contains convenience extensions for BGCStreams, to support linear concatenation of filters |
class BGC::Audio::Calibration
|
Manages calibration values and processes |
class BGC::Audio::CrossFadingRefClip
|
Holds a reference to a large underlying sample buffer. Loops and crossfades with itself. Used for managing extra-large TENoise sample. |
class BGC::Audio::FrequencyDomain
|
Collection of common mathematical processes used in the Frequency-Domain. |
class BGC::Audio::InterlacingAudioClip
|
Stream that stores the left and right channels as separate arrays |
class BGC::Audio::LinearInterpolation
|
Resampling methods |
class BGC::Audio::Normalization
|
A collection of some common procedures related to level scaling of Audio |
class BGC::Audio::NormalizedMonoClip
|
Stream that stores a mono sample buffer and scaling factors. Plays as a stereo stream. |
class BGC::Audio::SimpleAudioClip
|
Simplest implementation of a samplebuffer-based stream. |
class BGC::Audio::Spatial
|
A collection of common operations related to Spatialization of Audio |
class BGC::Audio::SynthStream
|
|
class BGC::Audio::WaveEncoding
|
Operations for Loading and Saving WAV files Some documentation on the WAV format is available here: http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html |
class BGC::Audio::Windowing
|
A collection of some common operations related to WindowingAudio. |
struct BGC::Audio::CarrierTone
|
Float-based description of a single carrier tone, for tone composition |
struct BGC::Audio::ComplexCarrierTone
|
Double, Complex64-based description of a single carrier tone, for tone composition. |
enum
AudioChannel
Values | Descriptions |
---|---|
Left | |
Right | |
Both |
class BGC::Audio::BGCAudioClip
: public BGC.Audio.BGCStream
Members | Descriptions |
---|---|
public float Duration
|
|
public override float SamplingRate
|
public float
Duration
public override float
SamplingRate
class BGC::Audio::BGCClipPlayer
: public MonoBehaviour
Ability to programmatically play BGCStreams in a Unity scene, with a callback on completion.
Members | Descriptions |
---|---|
public PlaybackStopped playbackEndedNotifier
|
|
public bool IsPlaying
|
|
public double Duration
|
|
public delegate void PlaybackStopped ()
|
|
public inline void SetStream ( IBGCStream stream)
|
|
public inline void PlayStream ( IBGCStream stream)
|
|
public inline void Stop (bool invoke)
|
|
public inline void Play ()
|
|
public void ResetClip ()
|
|
public inline void Clear ()
|
public bool
IsPlaying
public double
Duration
public delegate void
PlaybackStopped
()
public inline void
SetStream
(
IBGCStream
stream)
public inline void
PlayStream
(
IBGCStream
stream)
public inline void
Stop
(bool invoke)
public inline void
Play
()
public void
ResetClip
()
public inline void
Clear
()
class BGC::Audio::BGCStream
: public BGC.Audio.IBGCStream
Members | Descriptions |
---|---|
public abstract IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
public abstract int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
public abstract
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
public abstract int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
protected bool
initialized
protected inline virtual void
_Initialize
()
Contains convenience extensions for BGCStreams, to support linear concatenation of filters
Members | Descriptions |
---|
Manages calibration values and processes
Members | Descriptions |
---|
class BGC::Audio::CrossFadingRefClip
: public BGC.Audio.BGCAudioClip
Holds a reference to a large underlying sample buffer. Loops and crossfades with itself. Used for managing extra-large TENoise sample.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline CrossFadingRefClip (float [] samples,double leftFactor,double rightFactor,int initialPosition)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
CrossFadingRefClip
(float [] samples,double leftFactor,double rightFactor,int initialPosition)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
Collection of common mathematical processes used in the Frequency-Domain.
Members | Descriptions |
---|
class BGC::Audio::InterlacingAudioClip
: public BGC.Audio.BGCAudioClip
Stream that stores the left and right channels as separate arrays
Members | Descriptions |
---|---|
public override int ChannelSamples
|
|
public override int TotalSamples
|
|
public override int Channels
|
|
public inline InterlacingAudioClip (float [] leftSamples,float [] rightSamples)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
ChannelSamples
public override int
TotalSamples
public override int
Channels
public inline
InterlacingAudioClip
(float [] leftSamples,float [] rightSamples)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
Resampling methods
Members | Descriptions |
---|
A collection of some common procedures related to level scaling of Audio
Members | Descriptions |
---|---|
public const double dbMax
|
|
public const double dbOffset
|
|
public const double RMS_TO_PEAK
|
|
public const double TARGET_RMS
|
|
public const double TARGET_PEAK
|
public const double
dbMax
public const double
dbOffset
public const double
RMS_TO_PEAK
public const double
TARGET_RMS
public const double
TARGET_PEAK
class BGC::Audio::NormalizedMonoClip
: public BGC.Audio.BGCAudioClip
Stream that stores a mono sample buffer and scaling factors. Plays as a stereo stream.
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline NormalizedMonoClip (float [] monoSamples,double leftFactor,double rightFactor)
|
|
public inline NormalizedMonoClip (float [] monoSamples,double presentationLevel)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
NormalizedMonoClip
(float [] monoSamples,double leftFactor,double rightFactor)
public inline
NormalizedMonoClip
(float [] monoSamples,double presentationLevel)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::SimpleAudioClip
: public BGC.Audio.BGCAudioClip
Simplest implementation of a samplebuffer-based stream.
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline SimpleAudioClip (float [] samples,int channels)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
SimpleAudioClip
(float [] samples,int channels)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
A collection of common operations related to Spatialization of Audio
Members | Descriptions |
---|
class BGC::Audio::SynthStream
: public BGC.Audio.IBGCStream
Members | Descriptions |
---|---|
public float SamplingRate
|
|
public abstract IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public abstract int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
public float
SamplingRate
public abstract
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public abstract int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
protected bool
initialized
protected inline virtual void
_Initialize
()
Operations for Loading and Saving WAV files Some documentation on the WAV format is available here: http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html
Members | Descriptions |
---|
A collection of some common operations related to WindowingAudio.
Members | Descriptions |
---|
Float-based description of a single carrier tone, for tone composition
Members | Descriptions |
---|---|
public readonly float frequency
|
|
public readonly float amplitude
|
|
public readonly float phase
|
|
public inline CarrierTone (float frequency,float amplitude,float phase)
|
|
public CarrierTone WithNewPhase (float newPhase)
|
|
public CarrierTone RotatePhase (float rotator)
|
public readonly float
frequency
public readonly float
amplitude
public readonly float
phase
public inline
CarrierTone
(float frequency,float amplitude,float phase)
public
CarrierTone
WithNewPhase
(float newPhase)
public
CarrierTone
RotatePhase
(float rotator)
Double, Complex64-based description of a single carrier tone, for tone composition.
Members | Descriptions |
---|---|
public readonly double frequency
|
|
public readonly Complex64 amplitude
|
|
public inline ComplexCarrierTone (double frequency, Complex64 amplitude)
|
|
public inline ComplexCarrierTone (double frequency)
|
|
public ComplexCarrierTone WithNewPhase (double newPhase)
|
|
public ComplexCarrierTone RotatePhase (double rotator)
|
|
public ComplexCarrierTone TimeShift (double deltaT)
|
public readonly double
frequency
public inline
ComplexCarrierTone
(double frequency,
Complex64
amplitude)
public inline
ComplexCarrierTone
(double frequency)
public
ComplexCarrierTone
WithNewPhase
(double newPhase)
public
ComplexCarrierTone
RotatePhase
(double rotator)
public
ComplexCarrierTone
TimeShift
(double deltaT)
class BGC::Audio::AnalyticStreams::AnalyticADSREnvelope
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
: public BGC.Audio.Synthesis.IADSR
Members | Descriptions |
---|---|
public override int Samples
|
|
public inline AnalyticADSREnvelope ( IAnalyticStream stream,double timeToPeak,double timeToSustain,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
|
|
public inline AnalyticADSREnvelope ( IAnalyticStream stream,double timeToPeak,double timeToSustain,double timeToRelease,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
|
|
public inline void TriggerRelease (bool immediate)
|
|
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public override int
Samples
public inline
AnalyticADSREnvelope
(
IAnalyticStream
stream,double timeToPeak,double timeToSustain,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
public inline
AnalyticADSREnvelope
(
IAnalyticStream
stream,double timeToPeak,double timeToSustain,double timeToRelease,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
public inline void
TriggerRelease
(bool immediate)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticFilter
: public BGC.Audio.AnalyticStreams.IAnalyticStream
Filters represent transformations of the AnalyticStream.
Members | Descriptions |
---|---|
public abstract int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
public abstract double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
public abstract double
GetRMS
()
The RMS amplitude of the stream (real component)
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
protected bool
initialized
protected inline virtual void
_Initialize
()
class BGC::Audio::AnalyticStreams::AnalyticFrequencyModulationFilter
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
Applies FrequencyModulation to the underlying stream, in the frequency domain. Utilizes the FFT Shift Theorem
Members | Descriptions |
---|---|
public override int Samples
|
|
public inline AnalyticFrequencyModulationFilter ( IAnalyticStream stream,double modRate,double modDepth)
|
|
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public override int
Samples
public inline
AnalyticFrequencyModulationFilter
(
IAnalyticStream
stream,double modRate,double modDepth)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticNoiseStream
: public BGC.Audio.AnalyticStreams.IAnalyticStream
Members | Descriptions |
---|---|
public double SamplingRate
|
|
public inline AnalyticNoiseStream (double rms,double freqLB,double freqUB,int frequencyCount, AmplitudeDistribution distribution,Random randomizer)
|
|
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
public inline int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline void Seek (int position)
|
Seek to the indicated position in the stream |
public double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public double
SamplingRate
public inline
AnalyticNoiseStream
(double rms,double freqLB,double freqUB,int frequencyCount,
AmplitudeDistribution
distribution,Random randomizer)
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public void
Reset
()
Sets this internal state of this stream to the initial state
public inline void
Seek
(int position)
Seek to the indicated position in the stream
public double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamAdder
: public BGC.Audio.AnalyticStreams.AnalyticFilter
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IAnalyticStream > InternalStreams
|
|
public override int Samples
|
|
public override double SamplingRate
|
|
public inline AnalyticStreamAdder ()
|
|
public inline AnalyticStreamAdder (params IAnalyticStream [] streams)
|
|
public inline AnalyticStreamAdder ( IEnumerable](#class_i_enumerable)< [IAnalyticStream > streams)
|
|
public inline void AddStream ( IAnalyticStream stream)
|
|
public inline void AddStreams ( IEnumerable](#class_i_enumerable)< [IAnalyticStream > streams)
|
|
public inline bool RemoveStream ( IAnalyticStream stream)
|
|
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public override
IEnumerable](#class_i_enumerable)< [IAnalyticStream
>
InternalStreams
public override int
Samples
public override double
SamplingRate
public inline
AnalyticStreamAdder
()
public inline
AnalyticStreamAdder
(params
IAnalyticStream
[] streams)
public inline
AnalyticStreamAdder
(
IEnumerable](#class_i_enumerable)< [IAnalyticStream
> streams)
public inline void
AddStream
(
IAnalyticStream
stream)
public inline void
AddStreams
(
IEnumerable](#class_i_enumerable)< [IAnalyticStream
> streams)
public inline bool
RemoveStream
(
IAnalyticStream
stream)
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamCenterer
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
A Decorator class for AnalyticStreams that centers the stream, temporally, in a window.
Members | Descriptions |
---|---|
public override int Samples
|
|
public inline AnalyticStreamCenterer ( IAnalyticStream stream,double totalDuration)
|
|
public inline AnalyticStreamCenterer ( IAnalyticStream stream,int preDelaySamples,int postDelaySamples)
|
|
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public override int
Samples
public inline
AnalyticStreamCenterer
(
IAnalyticStream
stream,double totalDuration)
public inline
AnalyticStreamCenterer
(
IAnalyticStream
stream,int preDelaySamples,int postDelaySamples)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamConverter
: public BGC.Audio.AnalyticStreams.IAnalyticStream
Analytic signal generation based on "An Efficient Analytic Signal Generator" by Clay S. Turner http://www.claysturner.com/dsp/asg.pdf
Members | Descriptions |
---|---|
public double SamplingRate
|
|
public int Samples
|
|
public inline AnalyticStreamConverter ( IBGCStream stream)
|
|
public inline int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline void Seek (int position)
|
Seek to the indicated position in the stream |
public double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public double
SamplingRate
public int
Samples
public inline
AnalyticStreamConverter
(
IBGCStream
stream)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline void
Reset
()
Sets this internal state of this stream to the initial state
public inline void
Seek
(int position)
Seek to the indicated position in the stream
public double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamEnvelopeConverter
: public BGC.Audio.IBGCStream
Returns the magnitude of the underlying AnalyticStream as a BGCStream
Members | Descriptions |
---|---|
public int Channels
|
|
public int TotalSamples
|
|
public int ChannelSamples
|
|
public float SamplingRate
|
|
public IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline AnalyticStreamEnvelopeConverter ( IAnalyticStream stream)
|
|
public inline int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public void Reset ()
|
Sets this internal state of this stream to the initial state |
public void Seek (int position)
|
Seek to the indicated position in the stream |
public int
Channels
public int
TotalSamples
public int
ChannelSamples
public float
SamplingRate
public
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline
AnalyticStreamEnvelopeConverter
(
IAnalyticStream
stream)
public inline int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public void
Reset
()
Sets this internal state of this stream to the initial state
public void
Seek
(int position)
Seek to the indicated position in the stream
Members | Descriptions |
---|
class BGC::Audio::AnalyticStreams::AnalyticStreamFork
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
Members | Descriptions |
---|---|
public readonly InternalStreamFork forkedStream
|
|
public override int Samples
|
|
public int position
|
|
public int forkPosition
|
|
public inline AnalyticStreamFork ( IAnalyticStream stream)
|
|
public inline AnalyticStreamFork ( IAnalyticStream stream,out IAnalyticStream forkedStream)
|
|
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public readonly
InternalStreamFork
forkedStream
public override int
Samples
public int
position
public int
forkPosition
public inline
AnalyticStreamFork
(
IAnalyticStream
stream)
public inline
AnalyticStreamFork
(
IAnalyticStream
stream,out
IAnalyticStream
forkedStream)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamFrequencyShifter
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
Applies FrequencyShift to the underlying stream. Utilizes the FFT Shift Theorem
Members | Descriptions |
---|---|
public override int Samples
|
|
public inline AnalyticStreamFrequencyShifter ( IAnalyticStream stream,double frequencyShift)
|
|
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public override int
Samples
public inline
AnalyticStreamFrequencyShifter
(
IAnalyticStream
stream,double frequencyShift)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticStreamWindower
: public BGC.Audio.AnalyticStreams.SimpleAnalyticFilter
A Decorator class for BGCAudioClips that windows and truncates underlying clip
Members | Descriptions |
---|---|
public inline AnalyticStreamWindower ( IAnalyticStream stream, Windowing.Function function,double totalDuration,int smoothingSamples,int sampleOffset,bool recalculateRMS)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public inline
AnalyticStreamWindower
(
IAnalyticStream
stream,
Windowing.Function
function,double totalDuration,int smoothingSamples,int sampleOffset,bool recalculateRMS)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::AnalyticWave
: public BGC.Audio.AnalyticStreams.IAnalyticStream
Members | Descriptions |
---|---|
public double SamplingRate
|
|
public inline AnalyticWave (double amplitude,double frequency,double phase)
|
|
public inline int Read ( Complex64 [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline void Seek (int position)
|
Seek to the indicated position in the stream |
public double GetRMS ()
|
The RMS amplitude of the stream (real component) |
public double
SamplingRate
public inline
AnalyticWave
(double amplitude,double frequency,double phase)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline void
Reset
()
Sets this internal state of this stream to the initial state
public inline void
Seek
(int position)
Seek to the indicated position in the stream
public double
GetRMS
()
The RMS amplitude of the stream (real component)
class BGC::Audio::AnalyticStreams::BGCStreamConverter
: public BGC.Audio.IBGCStream
Members | Descriptions |
---|---|
public int Channels
|
|
public int TotalSamples
|
|
public int ChannelSamples
|
|
public float SamplingRate
|
|
public IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline BGCStreamConverter ( IAnalyticStream stream)
|
|
public inline int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public void Reset ()
|
Sets this internal state of this stream to the initial state |
public void Seek (int position)
|
Seek to the indicated position in the stream |
public int
Channels
public int
TotalSamples
public int
ChannelSamples
public float
SamplingRate
public
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline
BGCStreamConverter
(
IAnalyticStream
stream)
public inline int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public void
Reset
()
Sets this internal state of this stream to the initial state
public void
Seek
(int position)
Seek to the indicated position in the stream
class BGC::Audio::AnalyticStreams::SimpleAnalyticFilter
: public BGC.Audio.AnalyticStreams.AnalyticFilter
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IAnalyticStream > InternalStreams
|
|
public override double SamplingRate
|
|
public inline SimpleAnalyticFilter ( IAnalyticStream stream)
|
|
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
protected readonly IAnalyticStream stream
|
public override
IEnumerable](#class_i_enumerable)< [IAnalyticStream
>
InternalStreams
public override double
SamplingRate
public inline
SimpleAnalyticFilter
(
IAnalyticStream
stream)
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
protected readonly
IAnalyticStream
stream
Members | Descriptions |
---|---|
class BGC::Audio::Envelopes::BGCEnvelopeFilter
|
Filters represent transformations of the BGCAudioStreams. Like Spatialization, windowing, and Carlile-Filtering |
class BGC::Audio::Envelopes::BGCEnvelopeStream
|
|
class BGC::Audio::Envelopes::ConstantEnvelope
|
|
class BGC::Audio::Envelopes::CosineEnvelope
|
|
class BGC::Audio::Envelopes::EnvelopeConcatenator
|
|
class BGC::Audio::Envelopes::GaussianEnvelope
|
|
class BGC::Audio::Envelopes::LinearEnvelope
|
|
class BGC::Audio::Envelopes::SigmoidEnvelope
|
class BGC::Audio::Envelopes::BGCEnvelopeFilter
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Filters represent transformations of the BGCAudioStreams. Like Spatialization, windowing, and Carlile-Filtering
Members | Descriptions |
---|---|
public abstract bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public abstract int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
public abstract bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public abstract int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual void
Initialize
()
Perform any calculations necessary to prepare the Stream
protected bool
initialized
protected inline virtual void
_Initialize
()
class BGC::Audio::Envelopes::BGCEnvelopeStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Members | Descriptions |
---|---|
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
public abstract int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public abstract float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
public abstract int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public abstract float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
protected bool
initialized
protected inline virtual void
_Initialize
()
class BGC::Audio::Envelopes::ConstantEnvelope
: public BGC.Audio.Envelopes.BGCEnvelopeStream
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline ConstantEnvelope (double value)
|
|
public inline ConstantEnvelope (double value,double duration)
|
|
public inline ConstantEnvelope (double value,int samples)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public override float
SamplingRate
public inline
ConstantEnvelope
(double value)
public inline
ConstantEnvelope
(double value,double duration)
public inline
ConstantEnvelope
(double value,int samples)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
class BGC::Audio::Envelopes::CosineEnvelope
: public BGC.Audio.Envelopes.BGCEnvelopeStream
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public override float
SamplingRate
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
class BGC::Audio::Envelopes::EnvelopeConcatenator
: public BGC.Audio.Envelopes.BGCEnvelopeFilter
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IBGCEnvelopeStream > InternalStreams
|
|
public override int Samples
|
|
public override float SamplingRate
|
|
public inline EnvelopeConcatenator ()
|
|
public inline EnvelopeConcatenator (params IBGCEnvelopeStream [] streams)
|
|
public inline EnvelopeConcatenator ( IEnumerable](#class_i_enumerable)< [IBGCEnvelopeStream > streams)
|
|
public inline void AddStream ( IBGCEnvelopeStream stream)
|
|
public inline void AddStreams ( IEnumerable](#class_i_enumerable)< [IBGCEnvelopeStream > streams)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public override int
Samples
public override float
SamplingRate
public inline
EnvelopeConcatenator
()
public inline
EnvelopeConcatenator
(params
IBGCEnvelopeStream
[] streams)
public inline
EnvelopeConcatenator
(
IEnumerable](#class_i_enumerable)< [IBGCEnvelopeStream
> streams)
public inline void
AddStream
(
IBGCEnvelopeStream
stream)
public inline void
AddStreams
(
IEnumerable](#class_i_enumerable)< [IBGCEnvelopeStream
> streams)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
class BGC::Audio::Envelopes::GaussianEnvelope
: public BGC.Audio.Envelopes.BGCEnvelopeStream
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline GaussianEnvelope (double gaussianWidth,double peakTime,double sigmaFloor)
|
|
public inline GaussianEnvelope (double totalDuration,double gaussianWidth,double peakTime,double sigmaFloor)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public override float
SamplingRate
public inline
GaussianEnvelope
(double gaussianWidth,double peakTime,double sigmaFloor)
public inline
GaussianEnvelope
(double totalDuration,double gaussianWidth,double peakTime,double sigmaFloor)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
class BGC::Audio::Envelopes::LinearEnvelope
: public BGC.Audio.Envelopes.BGCEnvelopeStream
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline LinearEnvelope (double duration)
|
|
public inline LinearEnvelope (double growthStartTime,double growthEndTime)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public override float
SamplingRate
public inline
LinearEnvelope
(double duration)
public inline
LinearEnvelope
(double growthStartTime,double growthEndTime)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
class BGC::Audio::Envelopes::SigmoidEnvelope
: public BGC.Audio.Envelopes.BGCEnvelopeStream
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline SigmoidEnvelope (double duration,double tanhLimit)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override bool HasMoreSamples ()
|
Returns if the BGCEnvelopeStream has more samples |
public inline virtual override float ReadNextSample ()
|
Returns the next sample in the BGCEnvelopeStream |
public override float
SamplingRate
public inline
SigmoidEnvelope
(double duration,double tanhLimit)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override bool
HasMoreSamples
()
Returns if the BGCEnvelopeStream has more samples
public inline virtual override float
ReadNextSample
()
Returns the next sample in the BGCEnvelopeStream
The next sample
Members | Descriptions |
---|---|
class BGC::Audio::Extensions::AudioExtensions
|
Members | Descriptions |
---|
Members | Descriptions |
---|---|
class BGC::Audio::Filters::AllPassFilter
|
|
class BGC::Audio::Filters::BGCFilter
|
Filters represent transformations of the BGCAudioStreams. Like Spatialization, windowing, and Carlile-Filtering |
class BGC::Audio::Filters::BiQuadFilter
|
This implementation is based on the one found in CSCore, which in turn was based on http://www.earlevel.com/main/2011/01/02/biquad-formulas/ |
class BGC::Audio::Filters::CarlileShuffler
|
A Decorator class for BGCAudioClips that applies the Carlile noise-generation technique |
class BGC::Audio::Filters::ChannelIsolaterFilter
|
Extracts the channel with the specified index as an independent stream. |
class BGC::Audio::Filters::ContinuousFilter
|
This implementation is based on a naive adaptation of the BiQuad filter in this pacakge, which is based on the one found in CSCore, which in turn was based on http://www.earlevel.com/main/2011/01/02/biquad-formulas/ |
class BGC::Audio::Filters::ConvolutionFilter
|
Performs a convolution on the underlying stream, using Overlap-And-Add |
class BGC::Audio::Filters::FramedPhaseReencoder
|
Applies an ITD by adjusting the phase in the frequency domain, frame-based |
class BGC::Audio::Filters::FrequencyModulationFilter
|
Applies FrequencyModulation to the underlying stream, in the frequency domain. Initial Analytic signal generation based on "An Efficient Analytic Signal Generator" by Clay S. Turner http://www.claysturner.com/dsp/asg.pdf |
class BGC::Audio::Filters::MultiConvolutionFilter
|
Performs a convolution on the underlying stream, generating one independent channel for each supplied filter. |
class BGC::Audio::Filters::NormalizerFilter
|
Scales an underlying stream to the desired level (dB SPL) |
class BGC::Audio::Filters::NormalizerMonoFilter
|
Upchannels and scales an underlying single-channel stream to the specified level (dB SPL) |
class BGC::Audio::Filters::ParallelInitializer
|
Runs the initialization methods of the underlying streams in a parallel process. |
class BGC::Audio::Filters::PhaseVocoder
|
Slows the playback speed by a factor between 1x and 0.5x without changing pitch |
class BGC::Audio::Filters::SimpleBGCFilter
|
|
class BGC::Audio::Filters::SinglePassPhaseReencoder
|
A Decorator class for BGCAudioClips that applies the a SinglePass Phase reencoding for introducing an effective ITD |
class BGC::Audio::Filters::SlowRangeFitterFilter
|
This slow filter scans the whole sample and scales it between +1 and -1 so there is no clipping but maximum volume. Primarily intended for saving audio to files. |
class BGC::Audio::Filters::SpecializedFilterExtensions
|
|
class BGC::Audio::Filters::StreamAdder
|
Additive Synthesis - Output samples are equal to the linear sum of input samples. |
class BGC::Audio::Filters::StreamCacher
|
Caches the underlying stream as samples are read |
class BGC::Audio::Filters::StreamCenterer
|
Centers the underlying stream, temporally, in a window of specified duration, or appends specified number of silent samples to the beginning and end of the stream. |
class BGC::Audio::Filters::StreamChannelSplitter
|
Splits a 2 channel stream into separate streams for each channel |
class BGC::Audio::Filters::StreamConcatenator
|
Appends multiple streams, end-to-end. Expects each stream to have the same number of channels and sampling rate. |
class BGC::Audio::Filters::StreamEnveloper
|
Applies the specified envelope to the underlying stream. |
class BGC::Audio::Filters::StreamFork
|
Splits the underlying stream into two identical copies, caching only samples in between their respective read locations. Not ideal for stream reads that will be significantly disperate. |
class BGC::Audio::Filters::StreamMergeFilter
|
Takes multiple streams and applies each to a different channel in the output |
class BGC::Audio::Filters::StreamRepeater
|
Loops underling stream indefinitely. |
class BGC::Audio::Filters::StreamRMSStandardizer
|
Scales the underlying stream to a fixed RMS |
class BGC::Audio::Filters::StreamSelectiveUpChanneler
|
Upchannels the stream, including only the indicated channels |
class BGC::Audio::Filters::StreamTimeShiftFilter
|
Shifts time forward or backwards (integer samples) of the underlying stream |
class BGC::Audio::Filters::StreamTruncator
|
Truncates underlying stream |
class BGC::Audio::Filters::StreamWindower
|
Windows and truncates underlying stream |
class BGC::Audio::Filters::UpChannelMonoFilter
|
Upchannels an underlying stream |
class BGC::Audio::Filters::AllPassFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline AllPassFilter ( IBGCStream stream,in Complex64 coeff,int delay)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
AllPassFilter
(
IBGCStream
stream,in
Complex64
coeff,int delay)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::BGCFilter
: public BGC.Audio.IBGCStream
Filters represent transformations of the BGCAudioStreams. Like Spatialization, windowing, and Carlile-Filtering
Members | Descriptions |
---|---|
public abstract int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public abstract void Reset ()
|
Sets this internal state of this stream to the initial state |
public abstract void Seek (int position)
|
Seek to the indicated position in the stream |
public abstract IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline virtual void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
protected bool initialized
|
|
protected inline virtual void _Initialize ()
|
public abstract int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public abstract void
Reset
()
Sets this internal state of this stream to the initial state
public abstract void
Seek
(int position)
Seek to the indicated position in the stream
public abstract
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline virtual void
Initialize
()
Perform any calculations necessary to prepare the Stream
protected bool
initialized
protected inline virtual void
_Initialize
()
class BGC::Audio::Filters::BiQuadFilter
: public BGC.Audio.Filters.SimpleBGCFilter
This implementation is based on the one found in CSCore, which in turn was based on http://www.earlevel.com/main/2011/01/02/biquad-formulas/
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline float ProcessSample (float sample)
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline float
ProcessSample
(float sample)
class BGC::Audio::Filters::CarlileShuffler
: public BGC.Audio.Filters.SimpleBGCFilter
A Decorator class for BGCAudioClips that applies the Carlile noise-generation technique
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline CarlileShuffler ( IBGCStream stream,double freqLowerBound,double freqUpperBound,int bandCount,bool recalculateRMS,System.Random randomizer)
|
|
public inline CarlileShuffler ( IBGCStream stream, IEnumerable < double > frequencyDistribution,bool recalculateRMS,System.Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
CarlileShuffler
(
IBGCStream
stream,double freqLowerBound,double freqUpperBound,int bandCount,bool recalculateRMS,System.Random randomizer)
public inline
CarlileShuffler
(
IBGCStream
stream,
IEnumerable
< double > frequencyDistribution,bool recalculateRMS,System.Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::ChannelIsolaterFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Extracts the channel with the specified index as an independent stream.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline ChannelIsolaterFilter ( IBGCStream stream,int channelIndex)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
ChannelIsolaterFilter
(
IBGCStream
stream,int channelIndex)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::ContinuousFilter
: public BGC.Audio.Filters.SimpleBGCFilter
This implementation is based on a naive adaptation of the BiQuad filter in this pacakge, which is based on the one found in CSCore, which in turn was based on http://www.earlevel.com/main/2011/01/02/biquad-formulas/
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline ContinuousFilter ( IBGCStream stream, IBGCEnvelopeStream filterEnvelope, FilterType filterType,double freqLB,double freqUB,double qFactor)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline
ContinuousFilter
(
IBGCStream
stream,
IBGCEnvelopeStream
filterEnvelope,
FilterType
filterType,double freqLB,double freqUB,double qFactor)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
class BGC::Audio::Filters::ConvolutionFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Performs a convolution on the underlying stream, using Overlap-And-Add
Members | Descriptions |
---|---|
public override int Channels
|
|
public inline ConvolutionFilter ( IBGCStream stream,float [] filter,bool recalculateRMS)
|
|
public inline ConvolutionFilter ( IBGCStream stream, IBGCStream filter,bool recalculateRMS)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public inline
ConvolutionFilter
(
IBGCStream
stream,float [] filter,bool recalculateRMS)
public inline
ConvolutionFilter
(
IBGCStream
stream,
IBGCStream
filter,bool recalculateRMS)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::FramedPhaseReencoder
: public BGC.Audio.Filters.SimpleBGCFilter
Applies an ITD by adjusting the phase in the frequency domain, frame-based
Members | Descriptions |
---|---|
public override int ChannelSamples
|
|
public inline FramedPhaseReencoder ( IBGCStream stream,double timeShift,int frameSize,int overlapFactor)
|
|
public inline FramedPhaseReencoder ( IBGCStream stream,double leftTimeShift,double rightTimeShift,int frameSize,int overlapFactor)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
ChannelSamples
public inline
FramedPhaseReencoder
(
IBGCStream
stream,double timeShift,int frameSize,int overlapFactor)
public inline
FramedPhaseReencoder
(
IBGCStream
stream,double leftTimeShift,double rightTimeShift,int frameSize,int overlapFactor)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::FrequencyModulationFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Applies FrequencyModulation to the underlying stream, in the frequency domain. Initial Analytic signal generation based on "An Efficient Analytic Signal Generator" by Clay S. Turner http://www.claysturner.com/dsp/asg.pdf
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline FrequencyModulationFilter ( IBGCStream stream,double modRate,double modDepth)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
FrequencyModulationFilter
(
IBGCStream
stream,double modRate,double modDepth)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::MultiConvolutionFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Performs a convolution on the underlying stream, generating one independent channel for each supplied filter.
Members | Descriptions |
---|---|
public inline MultiConvolutionFilter ( IBGCStream stream,float [] filterL,float [] filterR,bool recalculateRMS)
|
|
public inline MultiConvolutionFilter ( IBGCStream stream,double [] filterL,double [] filterR,bool recalculateRMS)
|
|
public inline MultiConvolutionFilter ( IBGCStream stream, IBGCStream filter,bool recalculateRMS)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public inline
MultiConvolutionFilter
(
IBGCStream
stream,float [] filterL,float [] filterR,bool recalculateRMS)
public inline
MultiConvolutionFilter
(
IBGCStream
stream,double [] filterL,double [] filterR,bool recalculateRMS)
public inline
MultiConvolutionFilter
(
IBGCStream
stream,
IBGCStream
filter,bool recalculateRMS)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::NormalizerFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Scales an underlying stream to the desired level (dB SPL)
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline NormalizerFilter ( IBGCStream stream,double leftFactor,double rightFactor)
|
|
public inline NormalizerFilter ( IBGCStream stream,double presentationLevel)
|
|
public inline NormalizerFilter ( IBGCStream stream,(double levelL, double levelR) presentationLevel)
|
|
public inline NormalizerFilter ( IBGCStream stream,double presentationLevel, Calibration.Source source)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
NormalizerFilter
(
IBGCStream
stream,double leftFactor,double rightFactor)
public inline
NormalizerFilter
(
IBGCStream
stream,double presentationLevel)
public inline
NormalizerFilter
(
IBGCStream
stream,(double levelL, double levelR) presentationLevel)
public inline
NormalizerFilter
(
IBGCStream
stream,double presentationLevel,
Calibration.Source
source)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::NormalizerMonoFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Upchannels and scales an underlying single-channel stream to the specified level (dB SPL)
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline NormalizerMonoFilter ( IBGCStream stream,double leftFactor,double rightFactor)
|
|
public inline NormalizerMonoFilter ( IBGCStream stream,double presentationLevel)
|
|
public inline NormalizerMonoFilter ( IBGCStream stream,(double levelL, double levelR) levels)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
NormalizerMonoFilter
(
IBGCStream
stream,double leftFactor,double rightFactor)
public inline
NormalizerMonoFilter
(
IBGCStream
stream,double presentationLevel)
public inline
NormalizerMonoFilter
(
IBGCStream
stream,(double levelL, double levelR) levels)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::ParallelInitializer
: public BGC.Audio.IBGCStream
Runs the initialization methods of the underlying streams in a parallel process.
Members | Descriptions |
---|---|
public int Channels
|
|
public int TotalSamples
|
|
public int ChannelSamples
|
|
public float SamplingRate
|
|
public inline ParallelInitializer ( IBGCStream stream)
|
|
public void Seek (int position)
|
Seek to the indicated position in the stream |
public void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
public inline void InitializeNow ()
|
public int
Channels
public int
TotalSamples
public int
ChannelSamples
public float
SamplingRate
public inline
ParallelInitializer
(
IBGCStream
stream)
public void
Seek
(int position)
Seek to the indicated position in the stream
public void
Reset
()
Sets this internal state of this stream to the initial state
public inline int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline void
Initialize
()
Perform any calculations necessary to prepare the Stream
public inline void
InitializeNow
()
class BGC::Audio::Filters::PhaseVocoder
: public BGC.Audio.Filters.SimpleBGCFilter
Slows the playback speed by a factor between 1x and 0.5x without changing pitch
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public inline PhaseVocoder ( IBGCStream stream,double speed)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public inline
PhaseVocoder
(
IBGCStream
stream,double speed)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::SimpleBGCFilter
: public BGC.Audio.Filters.BGCFilter
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public inline SimpleBGCFilter ( IBGCStream stream)
|
|
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Initialize ()
|
Perform any calculations necessary to prepare the Stream |
protected readonly IBGCStream stream
|
public override float
SamplingRate
public inline
SimpleBGCFilter
(
IBGCStream
stream)
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Initialize
()
Perform any calculations necessary to prepare the Stream
protected readonly
IBGCStream
stream
class BGC::Audio::Filters::SinglePassPhaseReencoder
: public BGC.Audio.Filters.SimpleBGCFilter
A Decorator class for BGCAudioClips that applies the a SinglePass Phase reencoding for introducing an effective ITD
This class is a bit wordy in its implementation, but I really wanted to make the Initialize method have certain work-skipping optimizations
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline SinglePassPhaseReencoder ( IBGCStream stream,double timeShift)
|
|
public inline SinglePassPhaseReencoder ( IBGCStream stream,double leftTimeShift,double rightTimeShift)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
SinglePassPhaseReencoder
(
IBGCStream
stream,double timeShift)
public inline
SinglePassPhaseReencoder
(
IBGCStream
stream,double leftTimeShift,double rightTimeShift)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::SlowRangeFitterFilter
: public BGC.Audio.Filters.SimpleBGCFilter
This slow filter scans the whole sample and scales it between +1 and -1 so there is no clipping but maximum volume. Primarily intended for saving audio to files.
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline SlowRangeFitterFilter ( IBGCStream stream)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
SlowRangeFitterFilter
(
IBGCStream
stream)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
Members | Descriptions |
---|
class BGC::Audio::Filters::StreamAdder
: public BGC.Audio.Filters.BGCFilter
Additive Synthesis - Output samples are equal to the linear sum of input samples.
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IBGCStream > InternalStreams
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline StreamAdder ()
|
|
public inline StreamAdder (params IBGCStream [] streams)
|
|
public inline StreamAdder ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline void AddStream ( IBGCStream stream)
|
|
public inline void AddStreams ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline bool RemoveStream ( IBGCStream stream)
|
|
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override
IEnumerable](#class_i_enumerable)< [IBGCStream
>
InternalStreams
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
StreamAdder
()
public inline
StreamAdder
(params
IBGCStream
[] streams)
public inline
StreamAdder
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline void
AddStream
(
IBGCStream
stream)
public inline void
AddStreams
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline bool
RemoveStream
(
IBGCStream
stream)
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamCacher
: public BGC.Audio.Filters.SimpleBGCFilter
Caches the underlying stream as samples are read
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline StreamCacher ( IBGCStream stream)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
StreamCacher
(
IBGCStream
stream)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamCenterer
: public BGC.Audio.Filters.SimpleBGCFilter
Centers the underlying stream, temporally, in a window of specified duration, or appends specified number of silent samples to the beginning and end of the stream.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline StreamCenterer ( IBGCStream stream,double totalDuration)
|
|
public inline StreamCenterer ( IBGCStream stream,int preDelaySamples,int postDelaySamples)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
StreamCenterer
(
IBGCStream
stream,double totalDuration)
public inline
StreamCenterer
(
IBGCStream
stream,int preDelaySamples,int postDelaySamples)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamChannelSplitter
: public BGC.Audio.Filters.SimpleBGCFilter
Splits a 2 channel stream into separate streams for each channel
Members | Descriptions |
---|---|
public readonly InternalStreamSplit splitStream
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public int position
|
|
public int splitPosition
|
|
public inline StreamChannelSplitter ( IBGCStream stream)
|
|
public inline StreamChannelSplitter ( IBGCStream stream,out IBGCStream splitStream)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public readonly
InternalStreamSplit
splitStream
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public int
position
public int
splitPosition
public inline
StreamChannelSplitter
(
IBGCStream
stream)
public inline
StreamChannelSplitter
(
IBGCStream
stream,out
IBGCStream
splitStream)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamConcatenator
: public BGC.Audio.Filters.BGCFilter
Appends multiple streams, end-to-end. Expects each stream to have the same number of channels and sampling rate.
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IBGCStream > InternalStreams
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline StreamConcatenator ()
|
|
public inline StreamConcatenator (params IBGCStream [] streams)
|
|
public inline StreamConcatenator ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline void AddStream ( IBGCStream stream)
|
|
public inline void AddStreams ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override
IEnumerable](#class_i_enumerable)< [IBGCStream
>
InternalStreams
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
StreamConcatenator
()
public inline
StreamConcatenator
(params
IBGCStream
[] streams)
public inline
StreamConcatenator
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline void
AddStream
(
IBGCStream
stream)
public inline void
AddStreams
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamEnveloper
: public BGC.Audio.Filters.SimpleBGCFilter
Applies the specified envelope to the underlying stream.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public inline StreamEnveloper ( IBGCStream stream, IBGCEnvelopeStream envelopeStream,bool recalculateRMS)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public inline
StreamEnveloper
(
IBGCStream
stream,
IBGCEnvelopeStream
envelopeStream,bool recalculateRMS)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamFork
: public BGC.Audio.Filters.SimpleBGCFilter
Splits the underlying stream into two identical copies, caching only samples in between their respective read locations. Not ideal for stream reads that will be significantly disperate.
Members | Descriptions |
---|---|
public readonly InternalStreamFork forkedStream
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public int position
|
|
public int forkPosition
|
|
public inline StreamFork ( IBGCStream stream)
|
|
public inline StreamFork ( IBGCStream stream,out IBGCStream forkedStream)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public readonly
InternalStreamFork
forkedStream
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public int
position
public int
forkPosition
public inline
StreamFork
(
IBGCStream
stream)
public inline
StreamFork
(
IBGCStream
stream,out
IBGCStream
forkedStream)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamMergeFilter
: public BGC.Audio.Filters.BGCFilter
Takes multiple streams and applies each to a different channel in the output
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IBGCStream > InternalStreams
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline StreamMergeFilter ()
|
|
public inline StreamMergeFilter (params IBGCStream [] streams)
|
|
public inline StreamMergeFilter ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline void AddStream ( IBGCStream stream)
|
|
public inline void AddStreams ( IEnumerable](#class_i_enumerable)< [IBGCStream > streams)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override
IEnumerable](#class_i_enumerable)< [IBGCStream
>
InternalStreams
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
StreamMergeFilter
()
public inline
StreamMergeFilter
(params
IBGCStream
[] streams)
public inline
StreamMergeFilter
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline void
AddStream
(
IBGCStream
stream)
public inline void
AddStreams
(
IEnumerable](#class_i_enumerable)< [IBGCStream
> streams)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamRepeater
: public BGC.Audio.Filters.SimpleBGCFilter
Loops underling stream indefinitely.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline StreamRepeater ( IBGCStream stream)
|
|
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
StreamRepeater
(
IBGCStream
stream)
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamRMSStandardizer
: public BGC.Audio.Filters.SimpleBGCFilter
Scales the underlying stream to a fixed RMS
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline StreamRMSStandardizer ( IBGCStream stream,double rms)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
StreamRMSStandardizer
(
IBGCStream
stream,double rms)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Filters::StreamSelectiveUpChanneler
: public BGC.Audio.Filters.SimpleBGCFilter
Upchannels the stream, including only the indicated channels
Members | Descriptions |
---|---|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override int Channels
|
|
public inline StreamSelectiveUpChanneler ( IBGCStream stream, AudioChannel channels)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
TotalSamples
public override int
ChannelSamples
public override int
Channels
public inline
StreamSelectiveUpChanneler
(
IBGCStream
stream,
AudioChannel
channels)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamTimeShiftFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Shifts time forward or backwards (integer samples) of the underlying stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public inline StreamTimeShiftFilter ( IBGCStream stream,double timeShift)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public inline
StreamTimeShiftFilter
(
IBGCStream
stream,double timeShift)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamTruncator
: public BGC.Audio.Filters.SimpleBGCFilter
Truncates underlying stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public inline StreamTruncator ( IBGCStream stream,int totalChannelSamples,int sampleShift,bool recalculateRMS)
|
|
public inline StreamTruncator ( IBGCStream stream,double totalDuration,int sampleShift,bool recalculateRMS)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public inline
StreamTruncator
(
IBGCStream
stream,int totalChannelSamples,int sampleShift,bool recalculateRMS)
public inline
StreamTruncator
(
IBGCStream
stream,double totalDuration,int sampleShift,bool recalculateRMS)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::StreamWindower
: public BGC.Audio.Filters.SimpleBGCFilter
Windows and truncates underlying stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public inline StreamWindower ( IBGCStream stream, Windowing.Function function,double totalDuration,int smoothingSamples,int sampleShift,bool recalculateRMS)
|
|
public inline StreamWindower ( IBGCStream stream, Windowing.Function openingFunction, Windowing.Function closingFunction,int openingSmoothingSamples,int closingSmoothingSamples,int sampleShift,int totalChannelSamples,bool recalculateRMS)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public inline
StreamWindower
(
IBGCStream
stream,
Windowing.Function
function,double totalDuration,int smoothingSamples,int sampleShift,bool recalculateRMS)
public inline
StreamWindower
(
IBGCStream
stream,
Windowing.Function
openingFunction,
Windowing.Function
closingFunction,int openingSmoothingSamples,int closingSmoothingSamples,int sampleShift,int totalChannelSamples,bool recalculateRMS)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Filters::UpChannelMonoFilter
: public BGC.Audio.Filters.SimpleBGCFilter
Upchannels an underlying stream
Members | Descriptions |
---|---|
public override int ChannelSamples
|
|
public inline UpChannelMonoFilter ( IBGCStream stream,int channelCount)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
ChannelSamples
public inline
UpChannelMonoFilter
(
IBGCStream
stream,int channelCount)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
Members | Descriptions |
---|---|
enum ReservedChannels
|
Offset to be 0-indexed |
enum ReservedSoundSet
|
Offset to be 0-indexed Source: Complete MIDI Specs General MIDI System Level 1 - Pg 5 - Table 2 |
enum PercussionMap
|
Already correctly maps to Frequency Source: Complete MIDI Specs General MIDI System Level 1 - Pg 6 - Table 3 |
class BGC::Audio::Midi::MidiEncoding
|
|
class BGC::Audio::Midi::MidiFile
|
|
class BGC::Audio::Midi::MidiFileStream
|
Renders an underlying MidiFile |
class BGC::Audio::Midi::MidiParsingException
|
|
class BGC::Audio::Midi::MidiStreamExtensions
|
|
class BGC::Audio::Midi::MidiTrack
|
enum
ReservedChannels
Values | Descriptions |
---|---|
Percussion |
Offset to be 0-indexed
enum
ReservedSoundSet
Values | Descriptions |
---|---|
AcousticGrandPiano | |
BrightAcousticPiano | |
ElectricGrandPiano | |
HonkyTonkPiano | |
ElectricPiano1 | |
ElectricPiano2 | |
Harpsichord | |
Clavi | |
Celesta | |
Glockenspiel | |
MusicBox | |
Vibraphone | |
Marimba | |
Xylophone | |
TubularBells | |
Dulcimer | |
DrawbarOrgan | |
PercussiveOrgan | |
RockOrgan | |
CrutchOrgan | |
ReedOrgan | |
Accordion | |
Harmonica | |
TangoAccordion | |
AcousticGuitar_Nylon | |
AcousticGuitar_Steel | |
ElectricGuitar_Jazz | |
ElectricGuitar_Clean | |
ElectricGuitar_Muted | |
OverdrivenGuitar | |
DistortionGuitar | |
GuitarHarmonics | |
AcousticBass | |
ElectricBass_Finger | |
ElectricBasS_Pick | |
FretlessBass | |
SlapBass1 | |
SlapBass2 | |
SynthBass1 | |
SynthBass2 | |
Violin | |
Viola | |
Cello | |
Contrabass | |
TremoloStrings | |
PizzicatoStrings | |
OrchestralHarp | |
Timpani | |
StringEnsemble1 | |
StringEnsemble2 | |
SynthStrings1 | |
SynthStrings2 | |
ChoirAahs | |
VoiceOohs | |
SynthVoice | |
OrchestraHit | |
Trumpet | |
Trombone | |
Tuba | |
MutedTrumped | |
FrenchHorn | |
BrassSection | |
SynthBrass1 | |
SynthBrass2 | |
SopranoSax | |
AltoSax | |
TenorSax | |
BaritoneSax | |
Oboe | |
EnglishHorn | |
Bassoon | |
Clarinet | |
Piccolo | |
Flute | |
Recorder | |
PanFlute | |
BlownBottle | |
Shakuhachi | |
Whistle | |
Ocarina | |
Lead1_Square | |
Lead2_Sawtooth | |
Lead3_Calliope | |
Lead4_Chiff | |
Lead5_Charang | |
Lead6_Voice | |
Lead7_Fifths | |
Lead8_BassAndLead | |
Pad1_NewAge | |
Pad2_Warm | |
Pad3_Polysynth | |
Pad4_Choir | |
Pad5_Bowed | |
Pad6_Metallic | |
Pad7_Halo | |
Pad8_Sweep | |
FX1_Rain | |
FX2_Soundtrack | |
FX3_Crystal | |
FX4_Atmosphere | |
FX5_Brightness | |
FX6_Goblins | |
FX7_Echoes | |
FX8_Scifi | |
Sitar | |
Banjo | |
Shamisen | |
Koto | |
Kalimba | |
BagPipe | |
Fiddle | |
Shanai | |
TinkleBell | |
Agogo | |
SteelDrums | |
Woodblock | |
TaikoDrum | |
MelodicTom | |
SynthDrum | |
ReverseCymbal | |
GuitarFretNoise | |
BreathNoise | |
Seashore | |
BirdTweet | |
TelephoneRing | |
Helicopter | |
Applause | |
Gunshot |
Offset to be 0-indexed Source: Complete MIDI Specs General MIDI System Level 1 - Pg 5 - Table 2
enum
PercussionMap
Values | Descriptions |
---|---|
AcousticBassDrum | |
BassDrum1 | |
SideStick | |
AcousticSnare | |
HandClap | |
ElectricSnare | |
LowFloorTom | |
ClosedHiHat | |
HighFloorTom | |
PedalHiHat | |
LowTom | |
OpenHiHat | |
LowMidTom | |
HiMidTom | |
CrashCymbal1 | |
HighTom | |
RideCymbal1 | |
ChineseCymbal | |
RideBell | |
Tambourine | |
SplashCymbal | |
Cowbell | |
CrashCymbal2 | |
Vibraslap | |
RideCymbal2 | |
HiBongo | |
LowBongo | |
MuteHiConga | |
OpenHiConga | |
LowConga | |
HighTimbale | |
LowTimbale | |
HighAgogo | |
LowAgogo | |
Cabasa | |
Maracas | |
ShortWhistle | |
LongWhistle | |
ShortGuiro | |
LongGuiro | |
Claves | |
HiWoodBlock | |
LowWoodBlock | |
MuteCuica | |
OpenCuica | |
MuteTriangle | |
OpenTriangle |
Already correctly maps to Frequency Source: Complete MIDI Specs General MIDI System Level 1 - Pg 6 - Table 3
Members | Descriptions |
---|
Members | Descriptions |
---|---|
public const string HEADER_CHUNK_NAME
|
|
public readonly List< MidiTrack > tracks
|
|
public readonly HeaderInfo headerInfo
|
|
public inline MidiFile (in HeaderInfo headerInfo,bool retainAll)
|
|
public inline MidiFile (Stream headerStream,bool retainAll)
|
Deserialization Constructor |
public inline void Add ( MidiTrack track)
|
|
public inline void AddRange ( IEnumerable](#class_i_enumerable)< [MidiTrack > tracks)
|
|
public void ReadTrack (Stream trackStream)
|
|
public inline void Serialize (Stream outputStream)
|
public const string
HEADER_CHUNK_NAME
public readonly
HeaderInfo
headerInfo
public inline
MidiFile
(in
HeaderInfo
headerInfo,bool retainAll)
public inline
MidiFile
(Stream headerStream,bool retainAll)
Deserialization Constructor
public inline void
AddRange
(
IEnumerable](#class_i_enumerable)< [MidiTrack
> tracks)
public void
ReadTrack
(Stream trackStream)
public inline void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::MidiFileStream
: public BGC.Audio.SynthStream
Renders an underlying MidiFile
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public inline MidiFileStream ( MidiFile midiFile)
|
|
public inline void InsertTempoEvent ( SetTempoMetaMidiEvent tempoEvent)
|
|
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline void ExecuteRunningEvent ( ProgramMidiEvent programEvent)
|
|
public inline byte GetChannelProgram (byte channel)
|
|
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public inline
MidiFileStream
(
MidiFile
midiFile)
public inline void
InsertTempoEvent
(
SetTempoMetaMidiEvent
tempoEvent)
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline void
ExecuteRunningEvent
(
ProgramMidiEvent
programEvent)
public inline byte
GetChannelProgram
(byte channel)
protected inline virtual override void
_Initialize
()
class BGC::Audio::Midi::MidiParsingException
: public Exception
Members | Descriptions |
---|---|
public inline MidiParsingException (string message)
|
|
public inline MidiParsingException (string message, Exception innerException)
|
public inline
MidiParsingException
(string message)
public inline
MidiParsingException
(string message,
Exception
innerException)
Members | Descriptions |
---|
Members | Descriptions |
---|---|
public const string TRACK_CHUNK_NAME
|
|
public readonly List< MidiEvent > events
|
|
public float SamplingRate
|
|
public inline MidiTrack (in HeaderInfo headerInfo,short sequenceNumber,bool retainAll)
|
|
public inline MidiTrack (in HeaderInfo headerInfo,short sequenceNumber, IEnumerable](#class_i_enumerable)< [MidiEvent > events,bool retainAll)
|
|
public inline MidiTrack (in HeaderInfo headerInfo,short sequenceNumber,Stream trackStream,bool retainAll)
|
Deserialization Constructor |
public inline void Add ( MidiEvent midiEvent)
|
|
public inline void Insert ( MidiEvent midiEvent,int time)
|
|
public inline void AddRange ( IEnumerable](#class_i_enumerable)< [MidiEvent > midiEvents)
|
|
public inline MidiEvent ParseEvent (Stream inputStream)
|
|
public void Deserialize (Stream trackStream)
|
|
public inline void Serialize (Stream outputStream)
|
|
public inline void Initialize ( MidiFileStream midiStream)
|
|
public inline void SetTempo (int tempo)
|
|
public inline int SampleEstimate ()
|
|
public inline void ExecuteRunningEvent ( PitchBendMidiEvent pitchBendEvent)
|
|
public inline void ExecuteRunningEvent ( ChannelPressureMidiEvent channelPressureEvent)
|
|
public inline void ExecuteRunningEvent ( ProgramMidiEvent programEvent)
|
|
public inline void ExecuteRunningEvent ( NoteMidiEvent noteEvent)
|
|
public inline void ExecuteRunningEvent ( ControllerMidiEvent controllerEvent)
|
|
public inline int Read (float [] data,int offset,int count)
|
|
public inline int ReadBuffered (float [] data,int offset,int count)
|
|
public inline void Reset ()
|
|
public void Seek (int position)
|
public const string
TRACK_CHUNK_NAME
public float
SamplingRate
public inline
MidiTrack
(in
HeaderInfo
headerInfo,short sequenceNumber,bool retainAll)
public inline
MidiTrack
(in
HeaderInfo
headerInfo,short sequenceNumber,
IEnumerable](#class_i_enumerable)< [MidiEvent
> events,bool retainAll)
public inline
MidiTrack
(in
HeaderInfo
headerInfo,short sequenceNumber,Stream trackStream,bool retainAll)
Deserialization Constructor
public inline void
AddRange
(
IEnumerable](#class_i_enumerable)< [MidiEvent
> midiEvents)
public inline
MidiEvent
ParseEvent
(Stream inputStream)
public void
Deserialize
(Stream trackStream)
public inline void
Serialize
(Stream outputStream)
public inline void
Initialize
(
MidiFileStream
midiStream)
public inline void
SetTempo
(int tempo)
public inline int
SampleEstimate
()
public inline void
ExecuteRunningEvent
(
PitchBendMidiEvent
pitchBendEvent)
public inline void
ExecuteRunningEvent
(
ChannelPressureMidiEvent
channelPressureEvent)
public inline void
ExecuteRunningEvent
(
ProgramMidiEvent
programEvent)
public inline void
ExecuteRunningEvent
(
NoteMidiEvent
noteEvent)
public inline void
ExecuteRunningEvent
(
ControllerMidiEvent
controllerEvent)
public inline int
Read
(float [] data,int offset,int count)
public inline int
ReadBuffered
(float [] data,int offset,int count)
public inline void
Reset
()
public void
Seek
(int position)
class BGC::Audio::Midi::Events::ChannelMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override MidiMessageClass MessageClass
|
|
public inline ChannelMidiEvent (int deltaTime,byte eventCode)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override
MidiMessageClass
MessageClass
public inline
ChannelMidiEvent
(int deltaTime,byte eventCode)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::ChannelPrefixMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public readonly byte channel
|
|
public inline ChannelPrefixMetaMidiEvent (int deltaTime,byte channel)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public readonly byte
channel
public inline
ChannelPrefixMetaMidiEvent
(int deltaTime,byte channel)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::ChannelPressureMidiEvent
: public BGC.Audio.Midi.Events.ChannelMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override ChannelEventType EventType
|
|
public override int Length
|
|
public readonly byte channel
|
|
public readonly byte value
|
|
public inline ChannelPressureMidiEvent (int deltaTime,byte channel,byte value)
|
|
public override string ToString ()
|
|
public virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
ChannelEventType
EventType
public override int
Length
public readonly byte
channel
public readonly byte
value
public inline
ChannelPressureMidiEvent
(int deltaTime,byte channel,byte value)
public override string
ToString
()
public virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::ControllerMidiEvent
: public BGC.Audio.Midi.Events.ChannelMidiEvent
A Midi event that is sent when a controller other than a key (e.g. a pedal, wheel, etc) is moved in order to modify the sound of a note (e.g. modulation, sustain, etc) Midi 1.0 Detailed Specification 4.2 - p.11
Members | Descriptions |
---|---|
public override string EventName
|
|
public override ChannelEventType EventType
|
|
public override int Length
|
|
public readonly byte channel
|
|
public readonly byte dataA
|
|
public readonly byte dataB
|
|
public ChannelModeMessageTypes ModeMessageType
|
|
public inline ControllerMidiEvent (int deltaTime,byte channel,byte controllerNumber,byte controllerValue)
|
|
public inline ControllerMidiEvent (int deltaTime, ChannelModeMessageTypes channelModeMessageType,byte channel,byte value)
|
|
public override string ToString ()
|
|
public virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
ChannelEventType
EventType
public override int
Length
public readonly byte
channel
public readonly byte
dataA
public readonly byte
dataB
public inline
ControllerMidiEvent
(int deltaTime,byte channel,byte controllerNumber,byte controllerValue)
public inline
ControllerMidiEvent
(int deltaTime,
ChannelModeMessageTypes
channelModeMessageType,byte channel,byte value)
public override string
ToString
()
public virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::EndOfTrackMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public inline EndOfTrackMetaMidiEvent (int deltaTime)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public inline
EndOfTrackMetaMidiEvent
(int deltaTime)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::KeySignatureMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public sbyte SharpFlatCount
|
|
public bool MajorKey
|
|
public inline KeySignatureMetaMidiEvent (int deltaTime,byte [] signature)
|
|
public inline KeySignatureMetaMidiEvent (int deltaTime,sbyte sharpFlatCount,bool majorKey)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public sbyte
SharpFlatCount
public bool
MajorKey
public inline
KeySignatureMetaMidiEvent
(int deltaTime,byte [] signature)
public inline
KeySignatureMetaMidiEvent
(int deltaTime,sbyte sharpFlatCount,bool majorKey)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::MetaMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override MidiMessageClass MessageClass
|
|
public readonly byte metaTypeCode
|
|
public MidiMetaType MetaType
|
|
public override int Length
|
|
public inline MetaMidiEvent (int deltaTime,byte metaTypeCode)
|
|
public override string ToString ()
|
|
public abstract void Integrate ( MidiTrack track)
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override
MidiMessageClass
MessageClass
public readonly byte
metaTypeCode
public
MidiMetaType
MetaType
public override int
Length
public inline
MetaMidiEvent
(int deltaTime,byte metaTypeCode)
public override string
ToString
()
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
Members | Descriptions |
---|---|
public int time
|
|
public int deltaTime
|
|
public readonly byte eventCode
|
|
public bool Essential
|
|
public int Length
|
|
public inline MidiEvent (int deltaTime,byte eventCode)
|
|
public inline void Serialize (Stream outputStream,bool running)
|
|
public abstract void ExecuteEvent ( MidiTrack track)
|
|
public override string ToString ()
|
|
protected abstract void Serialize (Stream outputStream)
|
public int
time
public int
deltaTime
public readonly byte
eventCode
public bool
Essential
public int
Length
public inline
MidiEvent
(int deltaTime,byte eventCode)
public inline void
Serialize
(Stream outputStream,bool running)
public abstract void
ExecuteEvent
(
MidiTrack
track)
public override string
ToString
()
protected abstract void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::NoteMidiEvent
: public BGC.Audio.Midi.Events.ChannelMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override ChannelEventType EventType
|
|
public override int Length
|
|
public readonly NoteEventType noteEventType
|
|
public readonly byte channel
|
|
public readonly byte note
|
|
public readonly byte param
|
|
public inline NoteMidiEvent (int deltaTime, NoteEventType noteEventType,byte channel,byte note,byte param)
|
|
public inline NoteMidiEvent (int deltaTime,byte typeCode,byte note,byte param)
|
|
public override string ToString ()
|
|
public virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
ChannelEventType
EventType
public override int
Length
public readonly
NoteEventType
noteEventType
public readonly byte
channel
public readonly byte
note
public readonly byte
param
public inline
NoteMidiEvent
(int deltaTime,
NoteEventType
noteEventType,byte channel,byte note,byte param)
public inline
NoteMidiEvent
(int deltaTime,byte typeCode,byte note,byte param)
public override string
ToString
()
public virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::PitchBendMidiEvent
: public BGC.Audio.Midi.Events.ChannelMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override ChannelEventType EventType
|
|
public override int Length
|
|
public readonly byte channel
|
|
public readonly short value
|
|
public inline PitchBendMidiEvent (int deltaTime,byte channel,short value)
|
|
public override string ToString ()
|
|
public virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
ChannelEventType
EventType
public override int
Length
public readonly byte
channel
public readonly short
value
public inline
PitchBendMidiEvent
(int deltaTime,byte channel,short value)
public override string
ToString
()
public virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::ProgramMidiEvent
: public BGC.Audio.Midi.Events.ChannelMidiEvent
Used to specify the type of instrument on the channel
Members | Descriptions |
---|---|
public override string EventName
|
|
public override ChannelEventType EventType
|
|
public override int Length
|
|
public readonly byte channel
|
|
public readonly byte value
|
|
public inline ProgramMidiEvent (int deltaTime,byte channel,byte value)
|
|
public override string ToString ()
|
|
public virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
ChannelEventType
EventType
public override int
Length
public readonly byte
channel
public readonly byte
value
public inline
ProgramMidiEvent
(int deltaTime,byte channel,byte value)
public override string
ToString
()
public virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SequenceNumberMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public readonly short sequenceNumber
|
|
public inline SequenceNumberMetaMidiEvent (int deltaTime,short sequenceNumber)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public readonly short
sequenceNumber
public inline
SequenceNumberMetaMidiEvent
(int deltaTime,short sequenceNumber)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SequencerSpecificMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override bool Essential
|
|
public override int Length
|
|
public readonly byte [] data
|
|
public inline SequencerSpecificMetaMidiEvent (int deltaTime,byte [] data)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override bool
Essential
public override int
Length
public readonly byte []
data
public inline
SequencerSpecificMetaMidiEvent
(int deltaTime,byte [] data)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SetTempoMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public readonly int tempo
|
|
public inline SetTempoMetaMidiEvent (int deltaTime,int tempo)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public readonly int
tempo
public inline
SetTempoMetaMidiEvent
(int deltaTime,int tempo)
public override string
ToString
()
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SMTPEOffsetMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public byte Hours
|
|
public byte Minutes
|
|
public byte Seconds
|
|
public byte Frames
|
|
public byte Fractions
|
|
public inline SMTPEOffsetMetaMidiEvent (int deltaTime,byte [] time)
|
|
public inline SMTPEOffsetMetaMidiEvent (int deltaTime,byte hours,byte minutes,byte seconds,byte frames,byte fractions)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public byte
Hours
public byte
Minutes
public byte
Seconds
public byte
Frames
public byte
Fractions
public inline
SMTPEOffsetMetaMidiEvent
(int deltaTime,byte [] time)
public inline
SMTPEOffsetMetaMidiEvent
(int deltaTime,byte hours,byte minutes,byte seconds,byte frames,byte fractions)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SysexMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override MidiMessageClass MessageClass
|
|
public SysexType sysexType
|
|
public readonly byte [] data
|
|
public override int Length
|
|
public inline SysexMidiEvent (int deltaTime,byte eventCode,byte [] data)
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
public override string ToString ()
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
MidiMessageClass
MessageClass
public readonly byte []
data
public override int
Length
public inline
SysexMidiEvent
(int deltaTime,byte eventCode,byte [] data)
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SystemCommonMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override MidiMessageClass MessageClass
|
|
public SystemCommonType systemCommonType
|
|
public readonly byte dataA
|
|
public readonly byte dataB
|
|
public override int Length
|
|
public inline SystemCommonMidiEvent (int deltaTime,byte eventCode,byte dataA,byte dataB)
|
|
public override string ToString ()
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
MidiMessageClass
MessageClass
public
SystemCommonType
systemCommonType
public readonly byte
dataA
public readonly byte
dataB
public override int
Length
public inline
SystemCommonMidiEvent
(int deltaTime,byte eventCode,byte dataA,byte dataB)
public override string
ToString
()
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::SystemRealTimeMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override MidiMessageClass MessageClass
|
|
public SystemRealTimeType systemRealTimeType
|
|
public override int Length
|
|
public inline SystemRealTimeMidiEvent (int deltaTime,byte eventCode)
|
|
public override string ToString ()
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override
MidiMessageClass
MessageClass
public override int
Length
public inline
SystemRealTimeMidiEvent
(int deltaTime,byte eventCode)
public override string
ToString
()
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::TextMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override bool Essential
|
|
public override int Length
|
|
public readonly string text
|
|
public inline TextMetaMidiEvent (int deltaTime,byte metaTypeCode,string text)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override bool
Essential
public override int
Length
public readonly string
text
public inline
TextMetaMidiEvent
(int deltaTime,byte metaTypeCode,string text)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::TimeSignatureMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override int Length
|
|
public int Numerator
|
|
public byte DenominatorPower
|
|
public int Denominator
|
|
public int ClockTicks
|
MIDI Clocks per metronome tick |
public int NoteRate
|
The number of 1/32 notes per 24 Midi clock ticks (8 is standard) |
public inline TimeSignatureMetaMidiEvent (int deltaTime,byte [] signature)
|
|
public inline TimeSignatureMetaMidiEvent (int deltaTime,byte numerator,byte denominatorPower,byte clockTicks,byte noteRate)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override int
Length
public int
Numerator
public byte
DenominatorPower
public int
Denominator
public int
ClockTicks
MIDI Clocks per metronome tick
public int
NoteRate
The number of 1/32 notes per 24 Midi clock ticks (8 is standard)
public inline
TimeSignatureMetaMidiEvent
(int deltaTime,byte [] signature)
public inline
TimeSignatureMetaMidiEvent
(int deltaTime,byte numerator,byte denominatorPower,byte clockTicks,byte noteRate)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::UnknownMetaMidiEvent
: public BGC.Audio.Midi.Events.MetaMidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override bool Essential
|
|
public override int Length
|
|
public readonly byte [] data
|
|
public inline UnknownMetaMidiEvent (int deltaTime,byte metaTypeCode,byte [] data)
|
|
public override string ToString ()
|
|
public inline virtual override void Integrate ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override bool
Essential
public override int
Length
public readonly byte []
data
public inline
UnknownMetaMidiEvent
(int deltaTime,byte metaTypeCode,byte [] data)
public override string
ToString
()
protected inline virtual override void
Serialize
(Stream outputStream)
class BGC::Audio::Midi::Events::UnknownMidiEvent
: public BGC.Audio.Midi.Events.MidiEvent
Members | Descriptions |
---|---|
public override string EventName
|
|
public override bool Essential
|
|
public override MidiMessageClass MessageClass
|
|
public readonly byte data
|
|
public inline UnknownMidiEvent (int deltaTime,byte eventCode,byte data)
|
|
public override string ToString ()
|
|
public inline virtual override void ExecuteEvent ( MidiTrack track)
|
|
protected inline virtual override void Serialize (Stream outputStream)
|
public override string
EventName
public override bool
Essential
public override
MidiMessageClass
MessageClass
public readonly byte
data
public inline
UnknownMidiEvent
(int deltaTime,byte eventCode,byte data)
public override string
ToString
()
public inline virtual override void
ExecuteEvent
(
MidiTrack
track)
protected inline virtual override void
Serialize
(Stream outputStream)
Members | Descriptions |
---|---|
enum Key
|
|
class BGC::Audio::Midi::Synth::InstrumentLookup
|
enum
Key
Values | Descriptions |
---|---|
C | |
CSharp | |
D | |
DSharp | |
E | |
F | |
FSharp | |
G | |
GSharp | |
A | |
ASharp | |
B | |
MAX |
Members | Descriptions |
---|
Members | Descriptions |
---|---|
class BGC::Audio::Spatialization::ImpulseExtraction
|
Extracts the packaged HRTF files, generously provided by Nirmal Srinivasan, Asst Professor of the Deptartment of Speech-Language Pathology & Audiology at Towson University |
class BGC::Audio::Spatialization::ImpulseExtraction
: public BGC.MonoUtility.AsyncInitTask
Extracts the packaged HRTF files, generously provided by Nirmal Srinivasan, Asst Professor of the Deptartment of Speech-Language Pathology & Audiology at Towson University
Members | Descriptions |
---|---|
protected inline virtual override bool PrepareRun ()
|
|
protected inline virtual override void FinishedRunning (bool runSuccessful)
|
|
protected virtual override Task< bool > ExecuteTask ()
|
protected inline virtual override bool
PrepareRun
()
protected inline virtual override void
FinishedRunning
(bool runSuccessful)
protected virtual override Task< bool >
ExecuteTask
()
Members | Descriptions |
---|---|
class BGC::Audio::Stimuli::ClickStimulus
|
Members | Descriptions |
---|
Members | Descriptions |
---|---|
class BGC::Audio::Synthesis::ActiveNoteStream
|
Stores and renders a set of active notes. Generally meant to interact with Active ADSR Envelopes. |
class BGC::Audio::Synthesis::ADSREnvelope
|
An Attack-Decay-Sustain-Release envelope with a triggerable release. |
class BGC::Audio::Synthesis::ContinuousWhiteNoiseStream
|
True Continuous White-Noise stream |
class BGC::Audio::Synthesis::FrequencyDomainToneComposer
|
Suboptimal attempt to do frame-based rendering of a set of carrier tones. |
class BGC::Audio::Synthesis::NoiseAudioClip
|
Limited duration noise stream |
class BGC::Audio::Synthesis::PerpetualSilence
|
Stream representing silence. Useful for concatenation or as a building-block for some stimuli. |
class BGC::Audio::Synthesis::SawtoothWave
|
Sawtooth stream with specified frequency and amplitude |
class BGC::Audio::Synthesis::SilenceStream
|
Stream representing silence. Useful for concatenation or as a building-block for some stimuli. |
class BGC::Audio::Synthesis::SineWave
|
Sine wave stream with specified amplitude, frequency, and initialPhase. One period is cached and the phase offset is tracked and applied as a complex number. |
class BGC::Audio::Synthesis::SquareWave
|
Square wave stream. |
class BGC::Audio::Synthesis::STMAudioClip
|
Spectrotemporally modulated noise with the specified duration. AKA Ripples. |
class BGC::Audio::Synthesis::SweepAudioClip
|
Continuous, linear tone sweep from starting to ending frequency over specified duration. |
class BGC::Audio::Synthesis::TriangleWave
|
Triangle wave stream with specified amplitude, frequency, and duty-cycle. |
class BGC::Audio::Synthesis::WhiteNoiseStream
|
True White-Noise stream |
class BGC::Audio::Synthesis::ActiveNoteStream
: public BGC.Audio.Filters.BGCFilter
Stores and renders a set of active notes. Generally meant to interact with Active ADSR Envelopes.
Members | Descriptions |
---|---|
public override IEnumerable](#class_i_enumerable)< [IBGCStream > InternalStreams
|
|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public override float SamplingRate
|
|
public inline ActiveNoteStream ()
|
|
public inline void AddStream (int key, IBGCStream stream)
|
|
public inline bool RemoveStream ( IBGCStream stream)
|
|
public inline bool RemoveStream (int key)
|
|
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline void Clear ()
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline bool Release (int key,bool immediate)
|
|
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override
IEnumerable](#class_i_enumerable)< [IBGCStream
>
InternalStreams
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public override float
SamplingRate
public inline
ActiveNoteStream
()
public inline void
AddStream
(int key,
IBGCStream
stream)
public inline bool
RemoveStream
(
IBGCStream
stream)
public inline bool
RemoveStream
(int key)
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline void
Clear
()
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline bool
Release
(int key,bool immediate)
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::ADSREnvelope
: public BGC.Audio.Filters.SimpleBGCFilter
: public BGC.Audio.Synthesis.IADSR
An Attack-Decay-Sustain-Release envelope with a triggerable release.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public inline ADSREnvelope ( IBGCStream stream,double timeToPeak,double timeToSustain,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
|
|
public inline ADSREnvelope ( IBGCStream stream,double timeToPeak,double timeToSustain,double timeToRelease,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
|
|
public inline void TriggerRelease (bool immediate)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public inline
ADSREnvelope
(
IBGCStream
stream,double timeToPeak,double timeToSustain,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
public inline
ADSREnvelope
(
IBGCStream
stream,double timeToPeak,double timeToSustain,double timeToRelease,double sustainAmplitude,double sustainDecayTime,double releaseDecayTime)
public inline void
TriggerRelease
(bool immediate)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::ContinuousWhiteNoiseStream
: public BGC.Audio.BGCAudioClip
True Continuous White-Noise stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline ContinuousWhiteNoiseStream (Random randomizer)
|
|
public inline ContinuousWhiteNoiseStream (double rms,Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
ContinuousWhiteNoiseStream
(Random randomizer)
public inline
ContinuousWhiteNoiseStream
(double rms,Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::FrequencyDomainToneComposer
: public BGC.Audio.BGCStream
Suboptimal attempt to do frame-based rendering of a set of carrier tones.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline FrequencyDomainToneComposer ( IEnumerable](#class_i_enumerable)< [ComplexCarrierTone > carrierTones,int frameSize,int overlapFactor)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
FrequencyDomainToneComposer
(
IEnumerable](#class_i_enumerable)< [ComplexCarrierTone
> carrierTones,int frameSize,int overlapFactor)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::NoiseAudioClip
: public BGC.Audio.BGCAudioClip
Limited duration noise stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline NoiseAudioClip (double duration,double rms,double freqLB,double freqUB,int frequencyCount, AmplitudeDistribution distribution,Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
NoiseAudioClip
(double duration,double rms,double freqLB,double freqUB,int frequencyCount,
AmplitudeDistribution
distribution,Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Synthesis::PerpetualSilence
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
: public BGC.Audio.IBGCStream
Stream representing silence. Useful for concatenation or as a building-block for some stimuli.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline PerpetualSilence ()
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
PerpetualSilence
()
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::SawtoothWave
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Sawtooth stream with specified frequency and amplitude
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline SawtoothWave (double amplitude,double frequency)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
SawtoothWave
(double amplitude,double frequency)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::SilenceStream
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
: public BGC.Audio.IBGCStream
Stream representing silence. Useful for concatenation or as a building-block for some stimuli.
Members | Descriptions |
---|---|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public inline SilenceStream (int channels,int channelSamples)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override float
SamplingRate
public override int
TotalSamples
public inline
SilenceStream
(int channels,int channelSamples)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::SineWave
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Sine wave stream with specified amplitude, frequency, and initialPhase. One period is cached and the phase offset is tracked and applied as a complex number.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline SineWave (double amplitude,double frequency,double initialPhase)
|
|
public inline SineWave ( Complex64 amplitude,double frequency)
|
|
public inline SineWave ( ComplexCarrierTone carrier)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
SineWave
(double amplitude,double frequency,double initialPhase)
public inline
SineWave
(
ComplexCarrierTone
carrier)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::SquareWave
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Square wave stream.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline SquareWave (double amplitude,double frequency,double phase,double dutyCycle)
|
|
public inline SquareWave (double firstAmplitude,double secondAmplitude,double frequency,double phase,double dutyCycle)
|
|
public inline SquareWave (double firstAmplitude,double secondAmplitude, ComplexCarrierTone carrier,double dutyCycle)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
SquareWave
(double amplitude,double frequency,double phase,double dutyCycle)
public inline
SquareWave
(double firstAmplitude,double secondAmplitude,double frequency,double phase,double dutyCycle)
public inline
SquareWave
(double firstAmplitude,double secondAmplitude,
ComplexCarrierTone
carrier,double dutyCycle)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::STMAudioClip
: public BGC.Audio.BGCAudioClip
Spectrotemporally modulated noise with the specified duration. AKA Ripples.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public delegate IEnumerable](#class_i_enumerable)< [ComplexCarrierTone > SideBandGenerator (double modulationDepth, ComplexCarrierTone carrierTone,Dictionary< int, double > sidebandAmplitudeCache,double modulationRate,double spectralPhase)
|
|
public inline STMAudioClip (double duration,double freqLB,double freqUB,int frequencyCount,double modulationDepth,double spectralModulationRate,double temporalModulationRate, RippleDirection rippleDirection, AmplitudeDistribution distribution,Random randomizer)
|
|
public inline STMAudioClip (double duration, IEnumerable](#class_i_enumerable)< [ComplexCarrierTone > carrierTones,double modulationDepth,double spectralModulationRate,double temporalModulationRate, SideBandGenerator sideBandGenerator,Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public delegate
IEnumerable](#class_i_enumerable)< [ComplexCarrierTone
>
SideBandGenerator
(double modulationDepth,
ComplexCarrierTone
carrierTone,Dictionary< int, double > sidebandAmplitudeCache,double modulationRate,double spectralPhase)
public inline
STMAudioClip
(double duration,double freqLB,double freqUB,int frequencyCount,double modulationDepth,double spectralModulationRate,double temporalModulationRate,
RippleDirection
rippleDirection,
AmplitudeDistribution
distribution,Random randomizer)
public inline
STMAudioClip
(double duration,
IEnumerable](#class_i_enumerable)< [ComplexCarrierTone
> carrierTones,double modulationDepth,double spectralModulationRate,double temporalModulationRate,
SideBandGenerator
sideBandGenerator,Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Synthesis::SweepAudioClip
: public BGC.Audio.BGCAudioClip
Continuous, linear tone sweep from starting to ending frequency over specified duration.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public readonly SweepDirection sweepDirection
|
|
public inline SweepAudioClip (double duration,double freqLB,double freqUB, SweepDirection sweepDirection,Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public readonly
SweepDirection
sweepDirection
public inline
SweepAudioClip
(double duration,double freqLB,double freqUB,
SweepDirection
sweepDirection,Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Synthesis::TriangleWave
: public BGC.Audio.BGCStream
: public BGC.Audio.Envelopes.IBGCEnvelopeStream
Triangle wave stream with specified amplitude, frequency, and duty-cycle.
Members | Descriptions |
---|---|
public override int Channels
|
|
public override float SamplingRate
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline TriangleWave (double amplitude,double frequency,double phase,double dutyCycle)
|
|
public inline TriangleWave ( ComplexCarrierTone carrierTone,double dutyCycle)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public inline virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public inline virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
public override int
Channels
public override float
SamplingRate
public override int
TotalSamples
public override int
ChannelSamples
public inline
TriangleWave
(double amplitude,double frequency,double phase,double dutyCycle)
public inline
TriangleWave
(
ComplexCarrierTone
carrierTone,double dutyCycle)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public inline virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public inline virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
class BGC::Audio::Synthesis::WhiteNoiseStream
: public BGC.Audio.BGCAudioClip
True White-Noise stream
Members | Descriptions |
---|---|
public override int Channels
|
|
public override int TotalSamples
|
|
public override int ChannelSamples
|
|
public inline WhiteNoiseStream (double duration,double rms,Random randomizer)
|
|
public inline virtual override int Read (float [] data,int offset,int count)
|
Copy count samples into the Data buffer, starting at offset. |
public virtual override void Reset ()
|
Sets this internal state of this stream to the initial state |
public virtual override void Seek (int position)
|
Seek to the indicated position in the stream |
public inline virtual override IEnumerable < double > GetChannelRMS ()
|
The RMS amplitude of each channel |
protected inline virtual override void _Initialize ()
|
public override int
Channels
public override int
TotalSamples
public override int
ChannelSamples
public inline
WhiteNoiseStream
(double duration,double rms,Random randomizer)
public inline virtual override int
Read
(float [] data,int offset,int count)
Copy count samples into the Data buffer, starting at offset.
The number of samples copied
public virtual override void
Reset
()
Sets this internal state of this stream to the initial state
public virtual override void
Seek
(int position)
Seek to the indicated position in the stream
public inline virtual override
IEnumerable
< double >
GetChannelRMS
()
The RMS amplitude of each channel
protected inline virtual override void
_Initialize
()
class BGC::Audio::Visualization::EmptyPlotData
: public BGC.Audio.Visualization.PlotData
Members | Descriptions |
---|---|
public inline virtual override void PopulateWidget (GameObject parent)
|
public inline virtual override void
PopulateWidget
(GameObject parent)
Members | Descriptions |
---|---|
public Texture2D plot
|
|
public Vector2 xBounds
|
|
public Vector2 yBounds
|
|
public abstract void PopulateWidget (GameObject parent)
|
|
protected inline GameObject CreateTextureWidget (string name,GameObject parent,Texture2D tex,Vector2 anchorMin,Vector2 anchorMax,bool fixAspectRatio,Vector2 offsetMin,Vector2 offsetMax)
|
public Texture2D
plot
public Vector2
xBounds
public Vector2
yBounds
public abstract void
PopulateWidget
(GameObject parent)
protected inline GameObject
CreateTextureWidget
(string name,GameObject parent,Texture2D tex,Vector2 anchorMin,Vector2 anchorMax,bool fixAspectRatio,Vector2 offsetMin,Vector2 offsetMax)
Members | Descriptions |
---|
class BGC::Audio::Visualization::SimplePlotData
: public BGC.Audio.Visualization.PlotData
Members | Descriptions |
---|---|
public inline virtual override void PopulateWidget (GameObject parent)
|
|
protected inline GameObject CreateLabelWidget (string text,GameObject parent, LabelPosition position)
|
public inline virtual override void
PopulateWidget
(GameObject parent)
protected inline GameObject
CreateLabelWidget
(string text,GameObject parent,
LabelPosition
position)
Members | Descriptions |
---|---|
public double MinFreq
|
|
public double MaxFreq
|
|
public double [,] spectralValues
|
|
public double [] freqs
|
|
public double minAmplitude
|
|
public double maxAmplitude
|
|
public inline SpectralDecomp (double minFreq,double maxFreq,int windowSize,int windowCount)
|
|
public inline void Add (int window, Complex64 [] fftBuffer)
|
|
public inline double Linterp (int window,double frequency)
|
public double
MinFreq
public double
MaxFreq
public double [,]
spectralValues
public double []
freqs
public double
minAmplitude
public double
maxAmplitude
public inline
SpectralDecomp
(double minFreq,double maxFreq,int windowSize,int windowCount)
public inline double
Linterp
(int window,double frequency)
Members | Descriptions |
---|
class BGC::Audio::Visualization::SpectrogramData
: public BGC.Audio.Visualization.PlotData
Members | Descriptions |
---|---|
public Texture2D legendTex
|
|
public Vector2 legendBounds
|
|
public inline virtual override void PopulateWidget (GameObject parent)
|
|
protected inline GameObject CreateLabelWidget (string text,GameObject parent, LabelPosition position)
|
public Texture2D
legendTex
public Vector2
legendBounds
public inline virtual override void
PopulateWidget
(GameObject parent)
protected inline GameObject
CreateLabelWidget
(string text,GameObject parent,
LabelPosition
position)
Members | Descriptions |
---|---|
public float parameterValue
|
|
public bool responseCorrect
|
|
public inline PlotPoint (float parameterValue,bool responseCorrect)
|
public float
parameterValue
public bool
responseCorrect
public inline
PlotPoint
(float parameterValue,bool responseCorrect)
Members | Descriptions |
---|---|
class BGC::DataStructures::EnumListContainer
|
A Serializeable List for 2D lists |
class BGC::DataStructures::IntListContainer
|
A Serializeable List for lists of lists |
class BGC::DataStructures::EnumListContainer
: public BGC.DataStructures.IntListContainer
A Serializeable List for 2D lists
TEnum
Members | Descriptions |
---|---|
public new EnumListContainer < TEnum > Clone
|
|
public new TEnum RandomValue
|
|
public inline EnumListContainer (List< int > list)
|
Constructor from raw int enum values |
public inline EnumListContainer (List< TEnum > list)
|
Constructor from List of enum values |
public inline EnumListContainer ( JsonArray json)
|
Construct from a JsonArray of Ints |
public inline EnumListContainer ( JsonArray json, EnumSerialization serialization)
|
Constructor from a JsonArray of EnumStrings |
public inline EnumListContainer ()
|
Default constructor |
public inline void Add (TEnum element)
|
Adds an element of type TEnum to a list |
public inline bool Remove (TEnum element)
|
Removes an element of type TEnum from a list |
public inline bool Remove ( EnumListContainer < TEnum > elc)
|
Remove all elements in another EnumListContainer Returns false if failed to remove one element |
public inline void Set (List< TEnum > list)
|
Set contained list |
public inline override bool Equals (object obj)
|
Check if two EnumListContainers are equal |
public inline override int GetHashCode ()
|
Returns HashCode |
public inline bool Contains (TEnum item)
|
Check if the list contains an item |
public inline Type GetEnumType ()
|
Returns the enum type |
public new
EnumListContainer
< TEnum >
Clone
public new TEnum
RandomValue
public inline
EnumListContainer
(List< int > list)
Constructor from raw int enum values
list
public inline
EnumListContainer
(List< TEnum > list)
Constructor from List of enum values
list
public inline
EnumListContainer
(
JsonArray
json)
Construct from a JsonArray of Ints
json
public inline
EnumListContainer
(
JsonArray
json,
EnumSerialization
serialization)
Constructor from a JsonArray of EnumStrings
json
serialization
public inline
EnumListContainer
()
Default constructor
public inline void
Add
(TEnum element)
Adds an element of type TEnum to a list
element
public inline bool
Remove
(TEnum element)
Removes an element of type TEnum from a list
element
public inline bool
Remove
(
EnumListContainer
< TEnum > elc)
Remove all elements in another EnumListContainer Returns false if failed to remove one element
elc
public inline void
Set
(List< TEnum > list)
Set contained list
list
public inline override bool
Equals
(object obj)
Check if two EnumListContainers are equal
obj
public inline override int
GetHashCode
()
Returns HashCode
public inline bool
Contains
(TEnum item)
Check if the list contains an item
item
public inline Type
GetEnumType
()
Returns the enum type
A Serializeable List for lists of lists
Members | Descriptions |
---|---|
public List< int > list
|
|
public JsonArray JsonArray
|
Get json array representation of the list |
public IntListContainer Clone
|
Get a clean clone of this as a new int list container |
public int RandomValue
|
Get a random value in the list |
public int Count
|
Get the number of elements in the list |
public inline IntListContainer (List< int > list)
|
Constructor from a List |
public inline IntListContainer (params int [] list)
|
Constructor from paramater list |
public inline IntListContainer ( JsonArray json)
|
Constructor from a JsonArray |
public inline IntListContainer ()
|
Default empty constructor |
public inline void Add (int element)
|
Adds an element to a list |
public inline void RemoveAt (int index)
|
Removes an element at specified index |
public inline bool Remove (int element)
|
Remove an element from a list |
public inline bool Remove ( IntListContainer lw)
|
Remove all elements in another IntListContainer Returns false if failed to remove one element |
public inline override bool Equals (object obj)
|
Check if two IntListContainers are equal |
public inline override int GetHashCode ()
|
Returns HashCode |
public inline void PrintSelf ()
|
Debug.Log to print out all values of the list |
public inline bool Contains (int item)
|
Check if the list Contains an item |
protected inline void Deserialize ( JsonArray array)
|
Sets the list to a deserialized JsonArray |
public List< int >
list
Get json array representation of the list
public
IntListContainer
Clone
Get a clean clone of this as a new int list container
public int
RandomValue
Get a random value in the list
public int
Count
Get the number of elements in the list
public inline
IntListContainer
(List< int > list)
Constructor from a List
list
public inline
IntListContainer
(params int [] list)
Constructor from paramater list
list
public inline
IntListContainer
(
JsonArray
json)
Constructor from a JsonArray
json
public inline
IntListContainer
()
Default empty constructor
public inline void
Add
(int element)
Adds an element to a list
element
public inline void
RemoveAt
(int index)
Removes an element at specified index
index
public inline bool
Remove
(int element)
Remove an element from a list
element
public inline bool
Remove
(
IntListContainer
lw)
Remove all elements in another IntListContainer Returns false if failed to remove one element
lw
public inline override bool
Equals
(object obj)
Check if two IntListContainers are equal
obj
public inline override int
GetHashCode
()
Returns HashCode
public inline void
PrintSelf
()
Debug.Log to print out all values of the list
public inline bool
Contains
(int item)
Check if the list Contains an item
item
protected inline void
Deserialize
(
JsonArray
array)
Sets the list to a deserialized JsonArray
array
Members | Descriptions |
---|---|
class BGC::DataStructures::Generic::ConstructingPool
|
|
class BGC::DataStructures::Generic::DepletableBag
|
An unstable-sort set structure that acts as a select-without-replace bag. |
class BGC::DataStructures::Generic::DepletableList
|
A depletable/refillable set with an underlying list and defined order. |
class BGC::DataStructures::Generic::MetaPool
|
A class to manage a set of parameterized pools. Ex: A pool of float[] buffers pooled by length. |
class BGC::DataStructures::Generic::RingBuffer
|
Statically-sized ring buffer container. |
class BGC::DataStructures::Generic::RingBufferEnum
|
RingBuffer Enumerator class to enable proper list navigation. |
struct BGC::DataStructures::Generic::Node
|
GenericNode for generating tree structure |
class BGC::DataStructures::Generic::ConstructingPool
: public BGC::DataStructures::Generic::IPool< T >
Members | Descriptions |
---|---|
public ItemModifier onCreate
|
|
public ItemModifier onCheckOut
|
|
public ItemModifier onCheckIn
|
|
public int TotalCount
|
|
public IEnumerable < T > Available
|
|
public IEnumerable < T > CheckedOut
|
|
public int Count
|
|
public delegate void ItemModifier (T item)
|
|
public inline ConstructingPool (Func< T > itemConstructor)
|
|
public inline ConstructingPool ( IEnumerable < T > values,Func< T > itemConstructor)
|
|
public inline void Populate (int itemCount)
|
|
public inline T CheckOut ()
|
Checks Out the next value in the IPool, constructing if necessary |
public inline T CheckOut (Func< T, bool > predicate)
|
Checks Out the next value in the IPool meeting the constraint, constructing if necessary |
public inline bool TryCheckOut (out T value)
|
Tries to CheckOut the next value in the IPool already available, returns success. |
public inline bool TryCheckOut (Func< T, bool > predicate,out T value)
|
Tries to CheckOut the next value in the IPool already available and meeting the constraint, returns success. |
public inline void CheckIn (T value)
|
Add (or re-add) a value to the available list. |
public bool ContainsAnywhere (T value)
|
Seaches active and CheckedOut items for value |
public inline void CopyAllTo (T [] array,int arrayIndex)
|
Copies active and CheckedOut values |
public IEnumerable < T > GetAvailable (Func< T, bool > predicate)
|
Returns an enumeration of available items meeting the constraint |
public IEnumerable < T > GetCheckedOut (Func< T, bool > predicate)
|
Returns an enumeration of checked-out items meeting the constraint |
public bool AvailableContains (T value)
|
Does the available pool contain the argument? |
public bool CheckedOutContains (T value)
|
Does the checked-out pool contain the argument? |
public inline void MarkedCheckedIn (T value)
|
This does not call the check out/check in delegates. |
public inline void MarkedCheckedOut (T value)
|
This does not call the check out/check in delegates. |
public IEnumerator< T > GetEnumerator ()
|
public
ItemModifier
onCreate
public
ItemModifier
onCheckOut
public
ItemModifier
onCheckIn
public int
TotalCount
public
IEnumerable
< T >
Available
public
IEnumerable
< T >
CheckedOut
public int
Count
public delegate void
ItemModifier
(T item)
public inline
ConstructingPool
(Func< T > itemConstructor)
public inline
ConstructingPool
(
IEnumerable
< T > values,Func< T > itemConstructor)
public inline void
Populate
(int itemCount)
public inline T
CheckOut
()
Checks Out the next value in the IPool, constructing if necessary
public inline T
CheckOut
(Func< T, bool > predicate)
Checks Out the next value in the IPool meeting the constraint, constructing if necessary
public inline bool
TryCheckOut
(out T value)
Tries to CheckOut the next value in the IPool already available, returns success.
public inline bool
TryCheckOut
(Func< T, bool > predicate,out T value)
Tries to CheckOut the next value in the IPool already available and meeting the constraint, returns success.
public inline void
CheckIn
(T value)
Add (or re-add) a value to the available list.
public bool
ContainsAnywhere
(T value)
Seaches active and CheckedOut items for value
public inline void
CopyAllTo
(T [] array,int arrayIndex)
Copies active and CheckedOut values
public
IEnumerable
< T >
GetAvailable
(Func< T, bool > predicate)
Returns an enumeration of available items meeting the constraint
public
IEnumerable
< T >
GetCheckedOut
(Func< T, bool > predicate)
Returns an enumeration of checked-out items meeting the constraint
public bool
AvailableContains
(T value)
Does the available pool contain the argument?
public bool
CheckedOutContains
(T value)
Does the checked-out pool contain the argument?
public inline void
MarkedCheckedIn
(T value)
This does not call the check out/check in delegates.
public inline void
MarkedCheckedOut
(T value)
This does not call the check out/check in delegates.
public IEnumerator< T >
GetEnumerator
()
class BGC::DataStructures::Generic::DepletableBag
: public BGC::DataStructures::Generic::IDepletable< T >
An unstable-sort set structure that acts as a select-without-replace bag.
Members | Descriptions |
---|---|
public int TotalCount
|
|
public int Count
|
|
public inline DepletableBag (System.Random randomizer)
|
|
public inline DepletableBag ( IEnumerable < T > values,bool autoRefill,System.Random randomizer)
|
|
public inline T PopNext ()
|
Removes and returns the next value in the IDepletable |
public inline bool TryPopNext (out T value)
|
Tries to remove the next value in the IDepletable and returns success |
public inline void Reset ()
|
Fills the bag back up. |
public inline bool DepleteValue (T value)
|
Mark the first instance of value as depleted |
public inline bool DepleteAllValue (T value)
|
Mark all instances of value as depleted |
public inline bool ReplenishValue (T value)
|
Mark the first depleted instance of the value as available |
public inline bool ReplenishAllValue (T value)
|
Mark all instances of the value as available |
public bool ContainsAnywhere (T value)
|
Seaches active and depleted items for value |
public IList< T > GetAvailable ()
|
Returns a list of available items |
public inline void CopyAllTo (T [] array,int arrayIndex)
|
Copies active and depleted values |
public inline void Add (T value)
|
|
public inline void Clear ()
|
|
public inline bool Contains (T value)
|
|
public inline void CopyTo (T [] dest,int destIndex)
|
|
public inline bool Remove (T item)
|
|
public IEnumerator< T > GetEnumerator ()
|
|
protected List< T > values
|
|
protected int availableCount
|
public int
TotalCount
public int
Count
public inline
DepletableBag
(System.Random randomizer)
public inline
DepletableBag
(
IEnumerable
< T > values,bool autoRefill,System.Random randomizer)
public inline T
PopNext
()
Removes and returns the next value in the IDepletable
public inline bool
TryPopNext
(out T value)
Tries to remove the next value in the IDepletable and returns success
public inline void
Reset
()
Fills the bag back up.
public inline bool
DepleteValue
(T value)
Mark the first instance of value as depleted
public inline bool
DepleteAllValue
(T value)
Mark all instances of value as depleted
public inline bool
ReplenishValue
(T value)
Mark the first depleted instance of the value as available
public inline bool
ReplenishAllValue
(T value)
Mark all instances of the value as available
public bool
ContainsAnywhere
(T value)
Seaches active and depleted items for value
public IList< T >
GetAvailable
()
Returns a list of available items
public inline void
CopyAllTo
(T [] array,int arrayIndex)
Copies active and depleted values
public inline void
Add
(T value)
public inline void
Clear
()
public inline bool
Contains
(T value)
public inline void
CopyTo
(T [] dest,int destIndex)
public inline bool
Remove
(T item)
public IEnumerator< T >
GetEnumerator
()
protected List< T >
values
protected int
availableCount
class BGC::DataStructures::Generic::DepletableList
: public BGC::DataStructures::Generic::IDepletable< T >
A depletable/refillable set with an underlying list and defined order.
Members | Descriptions |
---|---|
public int TotalCount
|
|
public int Count
|
|
public inline DepletableList ()
|
|
public inline DepletableList ( IEnumerable < T > values,bool autoRefill)
|
|
public inline T PopNext ()
|
Removes and returns the next value in the IDepletable |
public inline bool TryPopNext (out T value)
|
Tries to remove the next value in the IDepletable and returns success |
public inline void Reset ()
|
Fills the bag back up. |
public inline bool DepleteValue (T value)
|
Mark the first instance of value as depleted |
public inline bool DepleteAllValue (T value)
|
Mark all instances of value as depleted |
public inline bool ReplenishValue (T value)
|
Mark the first depleted instance of the value as available |
public inline bool ReplenishAllValue (T value)
|
Mark all instances of the value as available |
public bool ContainsAnywhere (T value)
|
Seaches active and depleted items for value |
public inline IList< T > GetAvailable ()
|
Returns a list of available items |
public inline void CopyAllTo (T [] array,int arrayIndex)
|
Copies active and depleted values |
public inline void Add (T value)
|
|
public inline void Clear ()
|
|
public inline bool Contains (T value)
|
|
public inline void CopyTo (T [] dest,int destIndex)
|
|
public inline bool Remove (T item)
|
|
public IEnumerator< T > GetEnumerator ()
|
|
protected List< T > values
|
|
protected List< bool > valueDepleted
|
|
protected int currentIndex
|
public int
TotalCount
public int
Count
public inline
DepletableList
()
public inline
DepletableList
(
IEnumerable
< T > values,bool autoRefill)
public inline T
PopNext
()
Removes and returns the next value in the IDepletable
public inline bool
TryPopNext
(out T value)
Tries to remove the next value in the IDepletable and returns success
public inline void
Reset
()
Fills the bag back up.
public inline bool
DepleteValue
(T value)
Mark the first instance of value as depleted
public inline bool
DepleteAllValue
(T value)
Mark all instances of value as depleted
public inline bool
ReplenishValue
(T value)
Mark the first depleted instance of the value as available
public inline bool
ReplenishAllValue
(T value)
Mark all instances of the value as available
public bool
ContainsAnywhere
(T value)
Seaches active and depleted items for value
public inline IList< T >
GetAvailable
()
Returns a list of available items
public inline void
CopyAllTo
(T [] array,int arrayIndex)
Copies active and depleted values
public inline void
Add
(T value)
public inline void
Clear
()
public inline bool
Contains
(T value)
public inline void
CopyTo
(T [] dest,int destIndex)
public inline bool
Remove
(T item)
public IEnumerator< T >
GetEnumerator
()
protected List< T >
values
protected List< bool >
valueDepleted
protected int
currentIndex
A class to manage a set of parameterized pools. Ex: A pool of float[] buffers pooled by length.
-
T
The underlying pooled object type. Ex: float[] for simple buffer. -
TArg
The type on which the pools are parameterized. Ex: int for array length.
Members | Descriptions |
---|---|
public PoolModifier onPoolCreate
|
|
public delegate void PoolModifier ( ConstructingPool < T > pool)
|
|
public inline MetaPool (Func< TArg, T > itemConstructor)
|
|
public inline T CheckOut (TArg poolArgument)
|
|
public inline IPoolRelease < T > GetPoolRelease (TArg poolArgument)
|
|
public inline void CheckIn (T value)
|
|
public inline void CheckIn (T value,TArg poolArgument)
|
public
PoolModifier
onPoolCreate
public delegate void
PoolModifier
(
ConstructingPool
< T > pool)
public inline
MetaPool
(Func< TArg, T > itemConstructor)
public inline T
CheckOut
(TArg poolArgument)
public inline
IPoolRelease
< T >
GetPoolRelease
(TArg poolArgument)
public inline void
CheckIn
(T value)
public inline void
CheckIn
(T value,TArg poolArgument)
class BGC::DataStructures::Generic::RingBuffer
: public IEnumerable< T >
: public ICollection< T >
Statically-sized ring buffer container.
Members | Descriptions |
---|---|
public int Size
|
|
public int Count
|
|
public T Head
|
Returns the element at the head (the most recent). |
public T Tail
|
Returns the element at the Tail (the oldest). |
public inline RingBuffer (int bufferSize)
|
Construct an empty ring buffer supporting bufferSize elements |
public inline RingBuffer ( IEnumerable < T > values,int bufferSize)
|
Copy the list into a new buffer, optionally specify size. Size defaults to the Count of values |
public inline void Push (T newValue)
|
Add newValue to the end of the ringbuffer. Replaces the oldest element if at capacity. |
public inline void Add (T newValue)
|
Add newValue to the end of the ringbuffer. Replaces the oldest element if at capacity. |
public inline void AddRange ( IEnumerable < T > newValues)
|
Add newValues to the end of the ringbuffer. Replaces the oldest members if at capacity. |
public inline void ZeroOut (int count)
|
Clears the RingBuffer and fills it with optional count default elements. If count is -1, then the RingBuffer is completely filled. |
public inline void Clear ()
|
Clear the current items in the ring buffer. Doesn't resize or release buffer memory. Does release item handles. |
public inline bool Contains (T value)
|
Query the list for the argument value. |
public inline int GetIndex (T value)
|
Get the index of the argument value if it's present. Otherwise returns -1. |
public inline bool Remove (T value)
|
Removes the first element matching the argument value, if present, returns whether a value was removed. |
public inline void RemoveAt (int index)
|
Removes the element at index. |
public inline T Pop ()
|
Removes and returns the element at the head (the newest). |
public inline T PopBack ()
|
Removes and returns the element at the tail (the oldest). |
public T PeekHead ()
|
Returns the element at the head (the newest). |
public T PeekTail ()
|
Returns the element at the tail (the oldest). |
public inline int CountElement (T value)
|
Returns the number of elements whose value match the argument. |
public inline void CopyTo (T [] dest,int destIndex)
|
Copy the list to the dest array, using the destIndex as an offset to the destination. |
public inline void Resize (int bufferSize)
|
Resize the buffer of this list to support bufferSize elements. |
public RingBufferEnum < T > GetRingEnumerator ()
|
|
public IEnumerator< T > GetEnumerator ()
|
public int
Size
public int
Count
public T
Head
Returns the element at the head (the most recent).
public T
Tail
Returns the element at the Tail (the oldest).
public inline
RingBuffer
(int bufferSize)
Construct an empty ring buffer supporting bufferSize elements
-
bufferSize
The RingBuffer size
public inline
RingBuffer
(
IEnumerable
< T > values,int bufferSize)
Copy the list into a new buffer, optionally specify size. Size defaults to the Count of values
-
bufferSize
Optional RingBuffer size. -1 uses the Count of values instead
public inline void
Push
(T newValue)
Add newValue to the end of the ringbuffer. Replaces the oldest element if at capacity.
public inline void
Add
(T newValue)
Add newValue to the end of the ringbuffer. Replaces the oldest element if at capacity.
public inline void
AddRange
(
IEnumerable
< T > newValues)
Add newValues to the end of the ringbuffer. Replaces the oldest members if at capacity.
public inline void
ZeroOut
(int count)
Clears the RingBuffer and fills it with optional count default elements. If count is -1, then the RingBuffer is completely filled.
-
count
The number of default elements to provide. If this is -1, the buffer is filled
public inline void
Clear
()
Clear the current items in the ring buffer. Doesn't resize or release buffer memory. Does release item handles.
public inline bool
Contains
(T value)
Query the list for the argument value.
True if the available range contains value
public inline int
GetIndex
(T value)
Get the index of the argument value if it's present. Otherwise returns -1.
-
value
The value to search for
Index if the available range contains value, otherwise -1
public inline bool
Remove
(T value)
Removes the first element matching the argument value, if present, returns whether a value was removed.
-
value
The value to remove
Returns success