Csound Csound-dev Csound-tekno Search About

[Cs-dev] Problems with the Subinstruments feature

Date2007-12-14 03:44
From"Steven Yi"
Subject[Cs-dev] Problems with the Subinstruments feature
AttachmentsNone  

Date2007-12-14 08:23
Frommatt ingalls
SubjectRe: [Cs-dev] Problems with the Subinstruments feature
AttachmentsNone  None  
hey steven,

Second, and the much more serious issue to me, is that subinstruments
return audio to the calling instrument using a bit of a trick, using a
temporary spout.  It swaps the csound->spout with the temp one, runs
the instrument, then collects the output from the temp spout, then
return the original spout back to the csound->spout pointer.  The big
problem with this is that this will not work at all for multi-core
implementations of Csound.  I can not see any way possible to get
around this issue as of yet and would venture to even suggest removing
the subinstr and subinstrinit opcodes if we are seriously going to do
work on making csound capable of running multi-core.


doesn't  'setksmps' use the same technique?  


Politics aside (as the whole subinstruments/UDO's has a bit of a
touchy history) and focusing only on the technical features and
balancing that with future needs, if we can not find a solution to
this that is less drastic, what does everyone think about removing
subinstrument calling or at least making them deprecated?

but what about backwards compatibility? :)

anyway,
i would say just put it in it with a warning in the code and manual
and deal with multiprocessor issues if it ever gets to that point.
however it is a little used feature (especially since istvan removed
it!) and i could live without it..


matt ingalls




Date2007-12-15 04:26
From"Steven Yi"
SubjectRe: [Cs-dev] Problems with the Subinstruments feature
AttachmentsNone  

Date2007-12-17 06:10
Frommatt ingalls
SubjectRe: [Cs-dev] Problems with the Subinstruments feature
> Ugh! I took a look and setksmps and UDO's use a similar thing going on
> but I think modify things like onekr and ksmps but not spout.  I have
> to do more looking into this.  Either way, UDO's too will need to be
> reworked.  I actually have to check what happens if you use an output
> opcode like outc when using UDO's as I've always used xout.

i think there are some warning in 'setksms' manual entry about that  
kind of thing


> leave things where they are.  It might be worth rethinking how output
> is done altogether and instead of writing directly to spout, to have

i'd be happy to brainstorm with you.


-m
___________________
matt ingalls
development@gvox.com




-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net