On Tue, 14 Mar 2000, James McCartney wrote:
> I'm not a Linux developer yet. But Linux is one of the first OSes to which I
> am interested in a port of SuperCollider from the Mac, the other being BeOS.

Linux version planned and no "PC (Windows) version planned ?"
at least looking at the audiosynth site you can read this:
---
SuperCollider is for Macintosh only. There is not currently a PC version. 
Do not send email asking about a PC version. 
---

things are starting to look good  :-))

Back to the realtime problem:

What do you mean with "instantiable in realtime" ?

1) that there is no disruption in the audio stream while adding/removing
plugins from the processing chain, but the instantiation may take some time
( 0.1 - 1 sec)

OR

2)   condition 1) must be meed AND the plugin must start up immediately
after the insertion , with virtually NO delay at all.

can you explain this s bit more precisely ?

My thoughts:

1)  not hard to implement: just fire up a lower priority thread and let perform
all the instantiations inside this thread.
As soon the plug is ready it can get added to the processing chain without
any pop and crackles in the audio stream.

2) much harder, and I think the  zero delay startup very probably has to be 
implemented in the plugin itself, especially when you use dynamic 
memory allocation/deallocation. In this case you need to reserve some
chuck of mem in advance and do all your hard-realtime memory management 
inside this memory area.

Maybe LADSPA/MuCos will provide this hard-realtime memory allocator,
but it will be a waste of memory, since the mem has to be grabbed before
any plug attempts to perform "hard-realtime" memory management.

Benno.

 > 
> One of SuperCollider's requirements for unit generator plug ins is that they
> must also be instantiable in real time. SuperCollider constantly builds and
> destroys patches dynamically at run time. A unit generator must take only as
> much time to instantiate as is proportional to its run time. So doing things
> like taking time to zero out a long delay line are illegal as they may
> glitch. This does not appear to be a requirement of the proposed plug in
> standard. It does add a burden to the developer, but it is possible to write
> delay lines and such without zeroing out the buffers first. Plug-ins like
> VST or MAX/MSP plug ins that can take an unbounded amount of time to
> instantiate are unusable in SuperCollider. If there is not to be such a
> requirement, SC would have to restrict such plug ins to a static area.
> 
> --- james mccartney   [EMAIL PROTECTED]   <http://www.audiosynth.com>
> SuperCollider - a real time synthesis programming language for the PowerMac.
> <ftp://www.audiosynth.com/pub/updates/SC2.2.7.sea.hqx>

Reply via email to