3 things come to my mind spontaneously:
If you use [mapping/resample] I would suggest adding [change] afterwards to avoid constant data to be sent or use [speedlim] which does the same thing.
Ingo
[PD] realtime MIDI on Windows - best practices for efficiency?
I have a big patch I use for realtime manipulation of live sound inputs. Often when adjusting pots and sliders on a USB MIDI controller, I get audio dropouts. I've tried putting all of the MIDI objects in a separate patch running in another instance of PD, polling the inputs at intervals using [mapping/resample] to reduce the amount of data being sent, and sending the data over OSC to the main patch.
I've killed as many other processes as possible. And I still get dropouts. What could I be doing wrong? This is 0.43.4-extended on Windows 7. Thanks, Joe -- www.joenewlin.net www.twitter.com/joe_newlin
Just to refine Ingo's answer little bit:
On Fri, Nov 15, 2013 at 6:06 AM, Ingo ingo@miamiwave.com wrote:
3 things come to my mind spontaneously:
- use a good sound card with good asio drivers (if you don't do already)
- raise the latency a little bit
- eliminate graphical objects like number boxes, sliders, etc.
You don't have to absolutely eliminate graphical object but make sure you don't run data THRU them. It means that data shall flow tru non-graphical objects, and graphical objects shall be connected in Y "sideways". When you need to use a graphical object both for setting values and for being set, use a [set $1] message before them. Also avoid doing too many tricks to graphical objects (like dynamically setting their colors etc.)
If you use [mapping/resample] I would suggest adding [change] afterwards to avoid constant data to be sent or use [speedlim] which does the same thing.
IMHO you shall use [change] and [speedlim] regardless of using [mapping/resample] or not. You can use both of them: [change] will avoid constant data from being sent (be sure to convert floats to integers with [int] before!), while [speedlim] will limit data flow to a given frequency.
Also check that your USB devices are not connected thru USB hubs and they are on separate USB2 or USB3 connections.
András
Ingo
[PD] realtime MIDI on Windows - best practices for efficiency?
I have a big patch I use for realtime manipulation of live sound inputs. Often when adjusting pots and sliders on a USB MIDI controller, I get audio dropouts. I've tried putting all of the MIDI objects in a separate patch running in another instance of PD, polling the inputs at intervals using [mapping/resample] to reduce the amount of data being sent, and sending the data over OSC to the main patch.
I've killed as many other processes as possible. And I still get dropouts. What could I be doing wrong? This is 0.43.4-extended on Windows 7. Thanks, Joe -- www.joenewlin.net www.twitter.com/joe_newlin
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Thanks for all that. [speedlim] seems to have solved everything.
Joe
On Nov 15, 2013, at 4:21 AM, András Murányi muranyia@gmail.com wrote:
Just to refine Ingo's answer little bit:
On Fri, Nov 15, 2013 at 6:06 AM, Ingo ingo@miamiwave.com wrote: 3 things come to my mind spontaneously:
- use a good sound card with good asio drivers (if you don't do already)
- raise the latency a little bit
- eliminate graphical objects like number boxes, sliders, etc.
You don't have to absolutely eliminate graphical object but make sure you don't run data THRU them. It means that data shall flow tru non-graphical objects, and graphical objects shall be connected in Y "sideways". When you need to use a graphical object both for setting values and for being set, use a [set $1] message before them. Also avoid doing too many tricks to graphical objects (like dynamically setting their colors etc.)
If you use [mapping/resample] I would suggest adding [change] afterwards to avoid constant data to be sent or use [speedlim] which does the same thing.
IMHO you shall use [change] and [speedlim] regardless of using [mapping/resample] or not. You can use both of them: [change] will avoid constant data from being sent (be sure to convert floats to integers with [int] before!), while [speedlim] will limit data flow to a given frequency.
Also check that your USB devices are not connected thru USB hubs and they are on separate USB2 or USB3 connections.
András
Ingo
[PD] realtime MIDI on Windows - best practices for efficiency?
I have a big patch I use for realtime manipulation of live sound inputs. Often when adjusting pots and sliders on a USB MIDI controller, I get audio dropouts. I've tried putting all of the MIDI objects in a separate patch running in another instance of PD, polling the inputs at intervals using [mapping/resample] to reduce the amount of data being sent, and sending the data over OSC to the main patch.
I've killed as many other processes as possible. And I still get dropouts. What could I be doing wrong? This is 0.43.4-extended on Windows 7. Thanks, Joe -- www.joenewlin.net www.twitter.com/joe_newlin
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list