[PD] [PD-dev] portaudio callback problem [WAS:Re: PA_Terminate]

Colet Patrice colet.patrice at free.fr
Mon Aug 12 18:43:27 CEST 2013


Hello Miller,

When pd is started from msys console with asio flag after audioindev and 
audiooutdev, msys console show this:

///Assertion failed: //!bp->host(In|Out)__putIsInterleaved, //file 
src/common/pa_process.c, line 498/

I don't know implications of removing those 'assert()' lines from 
/pa_process.c/,
but it's the only solution I've found out to have asio devices working 
again with versions of PureData using the new portaudio interface.

Also, I forgot to mention that pd doesn't crash when selecting asio if 
callback toggle is enabled, but it's extremely slow.

I'll try to package a version with the code modification maybe this week 
to see what's happening on other computers,

cheers,

PatCo

Le 11/08/2013 07:38, Miller Puckette a écrit :
> Hi Patrice -
>
> I actually don't have any working ASIO devices which makes it hard for me
> to figure out what's wrong here.  I'll make another attemot to get something
> installed in the next week or so.  Meanwhile, am I reading this right that
> you get different results depending on whether you put the -asio flag
> before or after the " -audioindev 13 -audiooutdev 12" ?  I don't know
> why that would happen.
>
> cheers
> Miller
>
> On Sat, Jul 27, 2013 at 03:46:49AM +0200, Colet Patrice wrote:
>> Le 27/07/2013 00:39, Colet Patrice a écrit :
>>> Hello,
>>>
>>> I'm trying to find out why portaudio doesn't work with my windows
>>> machine.
>>>
>>> pd doesn't stuck anymore if I put Pa_Terminate() at the end of
>>> function "static void pa_init(void)" in s_audio_pa.c
>>>
>>> I don't understand why Pa_Terminate() is not used anymore, it's
>>> under comments in function int pa_open_audio()
>>>
>>> because by reading
>>> http://portaudio.com/docs/v19-doxydocs/initializing_portaudio.html,
>>> I see that this function must be used.
>> It doesn't matter anymore because I've partly resolved the problem,
>> and it partly comes from portaudio...
>>
>> If pa_process.c has been modified like explained in following link:
>>
>> http://music.columbia.edu/pipermail/portaudio/2012-December/014649.html
>>
>> audioindev audiooutdev can be forced before declaring asio like this:
>>
>> pd -audioindev 13 -audiooutdev 12 -asio
>>
>> Then It's possible to know which device to use with this command:
>>
>> pd -audioindev 0 -audiooutdev 0 -asio -listdev
>>
>> I hope someone can rewrite PaError pa_open_callback(...) in
>> s_audio_pa.c because all those problems mainly comes from this
>> function, and asio will certainly work better for everyone. My guess
>> would be about making sure that p_instreamparams and
>> p_outstreamparams aren't NULL before starting pa_stream.
>>
>> cheers,
>>
>> PatCo
>>
>> _______________________________________________
>> Pd-dev mailing list
>> Pd-dev at iem.at
>> http://lists.puredata.info/listinfo/pd-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20130812/60bb6e4f/attachment.htm>


More information about the Pd-list mailing list