cannam@126: /* cannam@126: ** Copyright (c) 1999-2016, Erik de Castro Lopo cannam@126: ** All rights reserved. cannam@126: ** cannam@126: ** This code is released under 2-clause BSD license. Please see the cannam@126: ** file at : https://github.com/erikd/libsamplerate/blob/master/COPYING cannam@126: */ cannam@126: cannam@126: typedef struct AUDIO_OUT_s AUDIO_OUT ; cannam@126: cannam@126: typedef int (*get_audio_callback_t) (void *callback_data, float *samples, int frames) ; cannam@126: cannam@126: /* A general audio output function (Linux/ALSA, Linux/OSS, Win32, MacOSX, cannam@126: ** Solaris) which retrieves data using the callback function in the above cannam@126: ** struct. cannam@126: ** cannam@126: ** audio_open - opens the device and returns an anonymous pointer to its cannam@126: ** own private data. cannam@126: */ cannam@126: cannam@126: AUDIO_OUT *audio_open (int channels, int samplerate) ; cannam@126: cannam@126: void audio_play (get_audio_callback_t callback, AUDIO_OUT *audio_out, void *callback_data) ; cannam@126: cannam@126: void audio_close (AUDIO_OUT *audio_data) ;