C# (CSharp) GAudio Namespace

Nested Namespaces

GAudio.Attributes
GAudio.Editor
GAudio.Examples

Classes

Name Description
AGATAudioFile Base class for reading ogg and uncompressed wav files, from disk or memory streams. Use OpenAudioFileAtPath to retrieve an instance. GATPathsHelper provides handy methods for converting relative paths to absolute paths. Don't forget to call Dispose() to close the file and release resources!
AGATAudioFile.OggFile
AGATAudioFile.WavFile
AGATBiQuadPeak
AGATChunkCopyClientBehaviour Abstract implementation of IGATChunkCopyClient which provides overridable methods to handle from the main thread reception of audio data copied by the audio thread. Warning: this implementation only requests copies when necessary: not all mixed audio data chunks will be received!
AGATLoadingOperation Base class for asynchronous loading operations. Request a loading operation from the GATAudioLoader singleton, configure, and add to it's operation queue ( QueueOperation method ). One operation can load multiple files. Operation objects are one use only.
AGATPanInfo Base class for handling panning of mono samples to interlaced multi channel data.
AGATPulseClient You can extend this base class and override OnPulse for custom handling of pulse signals fired by MasterPulseModule and SubPulseModule. Inheriting from this class provides automatic subscription to a pulse and the option to subscribe to only specific step indexes.
AGATPulsedPattern
AGATStreamObserver Base class for components which need to subscribe to an IGATAudioThreadStream.
AGATWrappedSample Base class for playback of wrapped GATData and IGATProcessedSample objects
DrawAudioModule A simple component that draws the raw audio data ( -1 to 1 floats ) using UnityEngine's LineRenderer.
DrawFFTModule Simple component to draw FFT'ed data using UnityEngine's LineRenderer.
EnvelopeModule
FFTBinInfo
FFTModule A Monobehaviour component that enables inspecotr friendly configuration of FFT processing, including windowing of the original data and formatting of the output.
FloatFFT
FloatFFT.FFTElement
GATActiveSampleBank Adds processed samples caching functionnalities to GATSampleBank.
GATAsyncWavWriter Creates or overwrites a wav file. Writing to the file and finalizing the header is done on a seperate thread. Input is cached in a ring buffer, and written in chunks of size AudioSettings.dspBufferSize. Note: this class is lockless.
GATAudioBuffer
GATAudioClipExtensions Helper methods to extract audio data from AudioClips
GATAudioInit Inspector friendly Monobehaviour component for requesting a change to the specified platform's output sample rate and frame rate.
GATAudioInit.PlatformSettings
GATAudioLoader Singleton class for loading of ogg and wav files from disk. Both async and sync operations supported ( sync operations are in GATAudioLoaderSync.cs ). Use to load user files or files in the StreamingAssets folder.
GATAudioLoader.LoadingOperation
GATAudioLoader.ProgressInfo
GATAudioThreadStreamProxy
GATAudioThreadStreamSplitter Splits a multi channel input stream in as many mono output streams.
GATAudioThreadStreamToCache Caches an input stream in seperate mono GATData containers.
GATAudioThreadStreamToTrack Routes a mono stream to a player's track. Note that trying to route multiple streams to the same track will throw an exception.
GATChannelGain
GATData A wrapper for audio data, with a suite of audio processing methods. Used throughout G-Audio. Note: When requesting GATData instances from GATManager.GetDataContainer( int size ), you will in fact be handed an instance of a managed subclass ( GATDataAllocator.GATManagedData ) which responds to Retain() and Release() calls. See the example scenes that comes with G-Audio for examples of typical use.
GATDataAllocator Pre-allocates a large float[] to use as virtual memory and avoid any garbage collection. All calls to GATActiveSampleBank and GATReamplingSampleBank GetProcessedSample methods result in a virtual allocation from GATManager's default GATDataAllocator instance.
GATDataAllocator.GATFixedData
GATDataAllocator.GATManagedData
GATDataAllocator.InitializationSettings
GATDynamicChannelGain
GATEnvelope Handles pre-processing of samples and keeps track of update times of it's processing properties. Properties may be set at any time, all IGATProcessedSample objects that refer to the GATEnvelope will update their data accordingly. EnvelopeModule component wraps a GATEnvelope in an inspector friendly package if needed.
GATEnvelope.NullEnvelope
GATException
GATFilterParam Helper class to easily control filter parameters. Reflection only occurs in the constructor: overhead when getting / setting the parameter is minimal.
GATFixedMemDebugInfo Simple class which holds information on virtually allocated fixed chunks
GATFixedPanInfo Use this class when you do not need a sample's gains per channel to change during playback. If you do need live pan control, use GATDynamicPanInfo instead. Note: GATPanInfo objects are only required when not routing playback through a GATTrack. Note 2: a single instance may be used to pan multiple concurrent samples.
GATHighPassFilter
GATHighShelfFilter
GATLoopedSample A wrapper for GATData or IGATProcessedSample objects. Adds gapless looping and smooth stop behaviour.
GATLowPassFilter
GATLowShelfFilter
GATManager
GATMaths Static class which provides a few audio related methods and constants. Methods that handle the actual sample processing will be found in the GATData class or in AGATFilter derived classes.
GATMemDebugInfo Simple class which holds information on virtually allocated memory
GATMicInfo Convenience class for wrapping microphone information.
GATMidiHelper
GATNotchFilter
GATPathsHelper Paths and URL convenience methods
GATPeakFilter
GATProcessedSamplesCache Manages a cache of processed samples. Used by GATActiveSampleBank to serve IGATProcessedSample objects.
GATProcessedSamplesCache.ProcessedAudioChunk
GATRealTimeADSR Wrapper that adds realtime ADSR controls to IGATDataOwner objects( GATData or IGATProcessedSample ). In addition, zero crossings are automatically found for the sustain loop, and a sustain loop crossfade can be adjusted.
GATSampleBank
GATSampleInfo
GATSoundBank
GATStringExtensions
GATTrack
GATWavHelper Convenience helper methods and constants for reading and writing wav files.
LFOFilterParam Simple Monobehaviour component for LFOing filter parameters. Uses GATFilterParam to conveniently tweak the requested parameter of a track or master filter. Also demonstrates use of custom attributes to get the inspector to display properties instead of fields, and to display a property only if a toggle is true.
MasterPulseModule
MicrophoneModule
PatternSample
PulseModule Base class for pulse Monobehaviour components,
PulseModule.GATPulseInfo
PulsedPatternModule
RetainableObject
SourceToStreamModule This component broadcasts a G-Audio audio stream ( IGATAudioThreadStream ) from a Unity AudioSource. The stream will have as many interleaved channels as Unity outputs ( GATInfo.NbOfChannels ). The stream should be de-interleaved with a StreamSplitterModule before it can be routed through G-Audio tracks.
StreamSplitterModule Component for broadcasting as many mono streams as the source stream's number of channels.
StreamToCacheModule Component for caching a stream to memory. Multichannel streams will be cached in seperate mono caches. Supports sample accurate start and stop.
StreamToTrackModule Streams a mono stream to a GATPlayer Track.
StreamToWavModule Component for safe writing of wav files from audio streams. Writing occurs in a seperate thread so as not to burden the audio thread. Supports sample accurate start and duration.
SubPulseModule