Cryville.Audio Audio client that manages connection to a . Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. The device of the client. The default buffer duration of the client in milliseconds. The minimum buffer duration of the client in milliseconds. The default wave format of the device. The current wave format of the connection. The buffer size in bytes. The maximum latency of the connection in milliseconds. Whether the client is playing. The current position of the device stream in seconds. The current position of the buffer in seconds. The audio source. Gets whether is supported by the device. The specified wave format. A wave format suggested by the device. if it is supported. if no format is supported. The share mode. Whether is supported. Initialize the client. The wave format. The buffer duration of the connection in milliseconds. The share mode of the connection. Different operations may occur with different API being used. Please also see the documentations of the implementing classes. Starts the wave data transmission. If is while playing, the output will be silence. Pauses the wave data transmission. This method does not reset and . The share mode of an audio connection. The device is shared with other connections, at the cost of a higher latency than . The output data is mixed by the audio service. The device is exclusive to the current connection, providing a low latency. To initialize an exclusive connection, the device must allow exclusive mode and must not be being used in either modes at the moment. The data-flow direction of an audio connection. Data flows from software to hardware. Data flows from hardware to software. Any data-flow direction. The recommended entry for Cryville.Audio that creates an . The list of available engines. Creates a recommended . A recommended . if no engine is supported. Audio device. The friendly name of the device. The data-flow direction of the device. Connects to the device. An for interaction with the device. Audio device manager that manages . If the is not supported, an exception is thrown when trying to create an instance. Gets all audio devices for the specified . The data-flow direction. Gets the default audio device for the specified . The data-flow direction. An that interacts with OpenSL ES. Creates an instance of the class. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. An that interacts with OpenSL ES. See if AOT is used. The buffer queue callback function. In the case where AOT is used, override this so it points to a proper function, which calls , as the following code snippet: [MonoPInvokeCallback(typeof(slBufferQueueCallback))] static void AOTCallback(IntPtr caller, IntPtr context) { OutputClient.Callback(caller, context); } You should not override this function in other cases. See . An that interacts with OpenSL ES. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. Audio source that provides wave data. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. Whether the audio source is muted. The output wave format. The buffer size in bytes. Whether if the source has reached the end of data. Called when the wave format is set and the buffer size is determined. Gets whether is supported by the audio source. The wave format. Fills the buffer with wave data requested by . The buffer to be filled. The offset in bytes from the start of the to start filling. The length in bytes to be filled. To optimize performance, the caller must ensure is not and is not greater than the length of . Fills the buffer with silence. The buffer to be filled. The offset in bytes from the start of the to start filling. The length in bytes to be filled. To optimize performance, the caller must ensure is not and is not greater than the length of . Fills the buffer with silence. The wave format. The buffer to be filled. The offset in bytes from the start of the to start filling. The length in bytes to be filled. To optimize performance, the caller must ensure is not and is not greater than the length of . An that caches data for reuse. Creates an instance of the class. The to be cached. The duration of the cache in seconds. Gets a clone of this with the timestamp reset. A clone of this with the timestamp reset. Use with object pool is recommended. Resets the timestamp to reuse the instance. Use with object pool is recommended. An that generates sound by a given function. The channel count of the output format. The function used to generate wave. The time position. The channel index. An that uses Libav to demux and decode audio files. You must select a stream using or before playback. Creates an instance of the class and loads the specified . The audio file. The index to the best audio stream. The collection of indices to all audio streams. Selects the best stream as the source. Selects a stream as the source. The index of the stream. Gets the duration of a stream or the file. The stream index. The duration of the file is retrieved if -1 is specified. The duration in seconds. A simple that mixes sequenced audio sources. To use this class, take the following steps: Create an instance of . Attach the to an by setting . Create a new by calling . Start playback by calling and setting to . You can sequence s to the both before and after playback starts. See . If is set to , the output will become silence. Creates an instance of the class. Max polyphony of the source. Must be greater than 0. See . Whether if the current session is playing. There is a tiny delay before the playback state actually toggles, which is approximately substracted by . The number of sources currently playing. Max polyphony, the number of sources that can be played at the same time. The currently playing. Stops the current session and creates a new to replace it. An must be attached to this source first. A session for . Sequences a at the specified . The time in seconds. The audio source. If is less than the current time, the will be played immediately. If the number of audio sources currently playing exceeds , the will be discarded. An that generates single tone. The tone type. The frequency of the wave. The amplitude of the wave. Tone type. Sine wave. Triangle wave. Square wave. An that interact with Wasapi. Initialize the client. The wave format. The buffer duration of the connection. The value is clamped to if too small. If is set to , the buffer duration will be determined automatically despite this parameter. The share mode of the connection. An that interacts with Wasapi. The properties of the device. An that interact with Wasapi. Cryville.Audio.WasapiWrapper.dll is required. Creates an instance of the class. The wave format. The channel count. The sample rate (samples per second.) The sample format. Bit count per sample. Bytes per second. The default wave format. Gets the aligned buffer size. The prefered buffer size in bytes. The aligned buffer size in bytes. Sample format. Unsigned 8-bit integer sample format. Signed 16-bit integer sample format. Signed 24-bit integer sample format. Signed 32-bit integer sample format. IEEE 754 single precision floating-point sample format. IEEE 754 double precision floating-point sample format. An that interacts with WinMM. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. An that interacts with WinMM. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user. The friendly name of the device. Due to technical reason, this field is truncated if it has more than 31 characters. An that interacts with WinMM. Creates an instance of the class. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Whether the method is being called by user.