Introducing wrapper function for buffer playback

This commit is contained in:
Mike H 2018-02-14 15:33:19 +00:00 committed by GitHub
parent f523371474
commit 0acaf0462f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -23,7 +23,7 @@ typedef enum {
AudioOutState_Stopped = 1,
} AudioOutState;
/// audio output buffer format
/// Audio output buffer format
typedef struct AudioOutBuffer AudioOutBuffer;
struct AudioOutBuffer
@ -48,6 +48,16 @@ Result audoutRegisterBufferEvent(Handle *BufferEvent);
Result audoutGetReleasedAudioOutBuffer(AudioOutBuffer *Buffer, u32 *ReleasedBuffersCount);
Result audoutContainsAudioOutBuffer(AudioOutBuffer *Buffer, bool *ContainsBuffer);
/**
* @brief Submits an audio sample data buffer for playing.
* @param event Handle obtained from audoutRegisterBufferEvent.
* @param source AudioOutBuffer containing the source sample data to be played.
* @param released AudioOutBuffer to receive the last played buffer.
* @param duration Playback duration in ticks.
* @return Whether a timeout occurred while waiting for data to be played.
*/
bool audoutPlayBuffer(Handle *event, AudioOutBuffer *source, AudioOutBuffer *released, u64 duration);
/// These return the state associated with the currently active audio output device.
u32 audoutGetSampleRate(void);
u32 audoutGetChannelCount(void);