From c1b10d55375dd8ecdf7b223d1f12541983422764 Mon Sep 17 00:00:00 2001 From: Miller Puckette Date: Sat, 18 Aug 2007 23:32:44 +0000 Subject: Download and adjust sources for new portaudio, portmidi. Add experimental callback scheduling. svn path=/trunk/; revision=8657 --- pd/src/s_stuff.h | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'pd/src/s_stuff.h') diff --git a/pd/src/s_stuff.h b/pd/src/s_stuff.h index 17974833..4cde9c42 100644 --- a/pd/src/s_stuff.h +++ b/pd/src/s_stuff.h @@ -71,10 +71,10 @@ extern int sys_blocksize; /* audio I/O block size in sample frames */ extern float sys_dacsr; extern int sys_schedadvance; extern int sys_sleepgrain; -void sys_open_audio(int naudioindev, int *audioindev, +void sys_set_audio_settings(int naudioindev, int *audioindev, int nchindev, int *chindev, int naudiooutdev, int *audiooutdev, int nchoutdev, int *choutdev, - int srate, int advance, int enable); + int srate, int advance, int callback); void sys_reopen_audio( void); void sys_close_audio(void); @@ -139,7 +139,11 @@ EXTERN void sys_log_error(int type); #define ERR_DACSLEPT 2 #define ERR_RESYNC 3 #define ERR_DATALATE 4 -void sched_set_using_dacs(int flag); + +#define SCHED_AUDIO_NONE 0 +#define SCHED_AUDIO_POLL 1 +#define SCHED_AUDIO_CALLBACK 2 +void sched_set_using_audio(int flag); /* s_inter.c */ @@ -205,9 +209,11 @@ void sys_setvirtualalarm( void); #define DEFAULTADVANCE 50 #endif +typedef void (*t_audiocallback)(void); + int pa_open_audio(int inchans, int outchans, int rate, t_sample *soundin, t_sample *soundout, int framesperbuf, int nbuffers, - int indeviceno, int outdeviceno); + int indeviceno, int outdeviceno, t_audiocallback callback); void pa_close_audio(void); int pa_send_dacs(void); void sys_reportidle(void); @@ -245,7 +251,7 @@ void jack_getdevs(char *indevlist, int *nindevs, int maxndev, int devdescsize); void jack_listdevs(void); -void mmio_open_audio(int naudioindev, int *audioindev, +int mmio_open_audio(int naudioindev, int *audioindev, int nchindev, int *chindev, int naudiooutdev, int *audiooutdev, int nchoutdev, int *choutdev, int rate); void mmio_close_audio( void); @@ -269,11 +275,11 @@ void linux_alsa_devname(char *devname); void sys_get_audio_params( int *pnaudioindev, int *paudioindev, int *chindev, int *pnaudiooutdev, int *paudiooutdev, int *choutdev, - int *prate, int *padvance); + int *prate, int *padvance, int *callback); void sys_save_audio_params( int naudioindev, int *audioindev, int *chindev, int naudiooutdev, int *audiooutdev, int *choutdev, - int rate, int advance); + int rate, int advance, int callback); /* s_file.c */ -- cgit v1.2.1