Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32597
Modified Files: Tag: desiredata s_audio_portaudio.c Log Message: cleanup
Index: s_audio_portaudio.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/s_audio_portaudio.c,v retrieving revision 1.1.2.21.2.5 retrieving revision 1.1.2.21.2.6 diff -C2 -d -r1.1.2.21.2.5 -r1.1.2.21.2.6 *** s_audio_portaudio.c 9 Jul 2007 19:59:42 -0000 1.1.2.21.2.5 --- s_audio_portaudio.c 10 Jul 2007 16:52:22 -0000 1.1.2.21.2.6 *************** *** 48,61 ****
void pa_initialize() { ! // if (!pa_initialized) ! // { ! pa_status = Pa_Initialize(); ! if (pa_status!=paNoError) { ! fprintf(stderr, "Error number %d occured initializing portaudio\n", pa_status); ! fprintf(stderr, "Error message: %s\n", Pa_GetErrorText(pa_status)); ! return; ! } ! pa_initialized = 1; ! // } }
--- 48,59 ----
void pa_initialize() { ! // if (pa_initialized) return; ! pa_status = Pa_Initialize(); ! if (pa_status!=paNoError) { ! fprintf(stderr, "Error number %d occured initializing portaudio\n", pa_status); ! fprintf(stderr, "Error message: %s\n", Pa_GetErrorText(pa_status)); ! return; ! } ! pa_initialized = 1; }
*************** *** 91,96 **** if(pa_indev >= 0) { pdi = Pa_GetDeviceInfo(pa_indev); ! if(pdi->maxInputChannels < inchans) ! inchans = pdi->maxInputChannels; } } --- 89,93 ---- if(pa_indev >= 0) { pdi = Pa_GetDeviceInfo(pa_indev); ! if(pdi->maxInputChannels < inchans) inchans = pdi->maxInputChannels; } } *************** *** 100,105 **** if(pa_outdev >= 0) { pdo = Pa_GetDeviceInfo(pa_outdev); ! if(pdo->maxOutputChannels < outchans) ! outchans = pdo->maxOutputChannels; } } --- 97,101 ---- if(pa_outdev >= 0) { pdo = Pa_GetDeviceInfo(pa_outdev); ! if(pdo->maxOutputChannels < outchans) outchans = pdo->maxOutputChannels; } } *************** *** 111,127 **** if (inchans || outchans) { int blocksize; ! PaStreamParameters inputParameters, outputParameters; /* initialize input */ ! inputParameters.device = pa_indev; ! inputParameters.channelCount = inchans; ! inputParameters.sampleFormat = paFloat32 | paNonInterleaved; ! inputParameters.suggestedLatency = advance * 0.001; ! inputParameters.hostApiSpecificStreamInfo = NULL; /* initialize output */ ! outputParameters.device = pa_outdev; ! outputParameters.channelCount = outchans; ! outputParameters.sampleFormat = paFloat32 | paNonInterleaved; ! outputParameters.suggestedLatency = advance * 0.001; ! outputParameters.hostApiSpecificStreamInfo = NULL; /* set block size */ blocksize=64; --- 107,123 ---- if (inchans || outchans) { int blocksize; ! PaStreamParameters iparam,oparam; /* initialize input */ ! iparam.device = pa_indev; ! iparam.channelCount = inchans; ! iparam.sampleFormat = paFloat32 | paNonInterleaved; ! iparam.suggestedLatency = advance * 0.001; ! iparam.hostApiSpecificStreamInfo = NULL; /* initialize output */ ! oparam.device = pa_outdev; ! oparam.channelCount = outchans; ! oparam.sampleFormat = paFloat32 | paNonInterleaved; ! oparam.suggestedLatency = advance * 0.001; ! oparam.hostApiSpecificStreamInfo = NULL; /* set block size */ blocksize=64; *************** *** 138,149 **** /* report to portaudio */ err = Pa_OpenStream(&pa_stream, ! ( (pa_indev != -1) ? &inputParameters : 0), ! ( (pa_outdev != -1) ? &outputParameters : 0), ! rate, ! pa_blocksize, ! paClipOff, /* tb: we should be faster ;-) */ ! process ! /* patestCallback */, NULL); ! if (err == paNoError) { const PaStreamInfo *streaminfo = Pa_GetStreamInfo(pa_stream); --- 134,140 ---- /* report to portaudio */ err = Pa_OpenStream(&pa_stream, ! (( pa_indev!=-1) ? &iparam : 0), ! ((pa_outdev!=-1) ? &oparam : 0), ! rate, pa_blocksize, paClipOff, /* tb: we should be faster ;-) */ process /* patestCallback */, NULL); if (err == paNoError) { const PaStreamInfo *streaminfo = Pa_GetStreamInfo(pa_stream); *************** *** 210,219 **** for (int i=0; (unsigned)i < frameCount / sys_dacblocksize; ++i) { for (int j=0; j < sys_inchannels; j++) { ! t_sample * in = ((t_sample**)input)[j] + i * sys_dacblocksize; copyvec(sys_soundin + j * sys_dacblocksize, in, sys_dacblocksize); } sched_tick(sys_time + sys_time_per_dsp_tick); for (int j=0; j < sys_outchannels; j++) { ! t_sample * out = ((t_sample**)output)[j] + i * sys_dacblocksize; copyvec(out, sys_soundout + j * sys_dacblocksize, sys_dacblocksize); } --- 201,210 ---- for (int i=0; (unsigned)i < frameCount / sys_dacblocksize; ++i) { for (int j=0; j < sys_inchannels; j++) { ! t_sample *in = ((t_sample**)input)[j] + i * sys_dacblocksize; copyvec(sys_soundin + j * sys_dacblocksize, in, sys_dacblocksize); } sched_tick(sys_time + sys_time_per_dsp_tick); for (int j=0; j < sys_outchannels; j++) { ! t_sample *out = ((t_sample**)output)[j] + i * sys_dacblocksize; copyvec(out, sys_soundout + j * sys_dacblocksize, sys_dacblocksize); } *************** *** 288,293 **** if (pdi->maxInputChannels > 0 && nin < maxndev) { PaHostApiIndex api = pdi->hostApi; ! const PaHostApiInfo * info = Pa_GetHostApiInfo (api); ! const char * apiName = info->name; unsigned int apiNameLen = strlen(apiName); strcpy(indevlist + nin * devdescsize, apiName); --- 279,284 ---- if (pdi->maxInputChannels > 0 && nin < maxndev) { PaHostApiIndex api = pdi->hostApi; ! const PaHostApiInfo *info = Pa_GetHostApiInfo(api); ! const char *apiName = info->name; unsigned int apiNameLen = strlen(apiName); strcpy(indevlist + nin * devdescsize, apiName); *************** *** 298,303 **** if (pdi->maxOutputChannels > 0 && nout < maxndev) { PaHostApiIndex api = pdi->hostApi; ! const PaHostApiInfo * info = Pa_GetHostApiInfo (api); ! const char * apiName = info->name; unsigned int apiNameLen = strlen(apiName); strcpy(outdevlist + nout * devdescsize, apiName); --- 289,294 ---- if (pdi->maxOutputChannels > 0 && nout < maxndev) { PaHostApiIndex api = pdi->hostApi; ! const PaHostApiInfo *info = Pa_GetHostApiInfo(api); ! const char *apiName = info->name; unsigned int apiNameLen = strlen(apiName); strcpy(outdevlist + nout * devdescsize, apiName); *************** *** 369,384 **** if (pa_indev==-1 && pa_outdev==-1) { int ret; ! PaStreamParameters inputParameters, outputParameters; ! inputParameters.device = indev; ! inputParameters.channelCount = inchans; ! inputParameters.sampleFormat = paFloat32 | paNonInterleaved; ! inputParameters.suggestedLatency = advance * 0.001; ! inputParameters.hostApiSpecificStreamInfo = NULL; ! outputParameters.device = outdev; ! outputParameters.channelCount = outchans; ! outputParameters.sampleFormat = paFloat32 | paNonInterleaved; ! outputParameters.suggestedLatency = advance * 0.001; ! outputParameters.hostApiSpecificStreamInfo = NULL; ! ret = Pa_IsFormatSupported(&inputParameters, &outputParameters, samplerate); SETFLOAT(argv, ret == paNoError?1:0); typedmess(pd->s_thing, selector, 1, argv); --- 360,375 ---- if (pa_indev==-1 && pa_outdev==-1) { int ret; ! PaStreamParameters iparam, oparam; ! iparam.device = indev; ! iparam.channelCount = inchans; ! iparam.sampleFormat = paFloat32 | paNonInterleaved; ! iparam.suggestedLatency = advance * 0.001; ! iparam.hostApiSpecificStreamInfo = NULL; ! oparam.device = outdev; ! oparam.channelCount = outchans; ! oparam.sampleFormat = paFloat32 | paNonInterleaved; ! oparam.suggestedLatency = advance * 0.001; ! oparam.hostApiSpecificStreamInfo = NULL; ! ret = Pa_IsFormatSupported(&iparam, &oparam, samplerate); SETFLOAT(argv, ret == paNoError?1:0); typedmess(pd->s_thing, selector, 1, argv);