Re: [Bluemusic-devel] Flow Chart Instrument
Brought to you by:
kunstmusik
From: sokratesla <ugu...@gm...> - 2006-02-01 11:36:20
|
On 2/1/06, Steven Yi <ste...@gm...> wrote: > Cabel makes every module (box) into a > user-defined opcode, and the instrument then is hooking up the > generated UDO's. This has some good features and allows for creating > modules with "setksmps 1", which can be very useful. # Does making an UDO for every unit effect the performance? If yes, we should prepare an option to select either to create an UDO (if necessary, eg. to set setksmps 1) or create embedded code. > In terms of the UI, I think we can make it a bit simpler by removing > the left pane with the code tree and making the main edit pane be one > where you right-click and add a module from a popup menu. It'd open > up some screen real-estate which might be necessary. # I used a left pane there in order to learn about how to use JTree's. After implementation of the pop-up menu the tree will get unnecessary. > I think too we need to make the modules not have its contents be > editable. I am thinking it would be best to have a program-wide > library of modules which you can manage in a separate dialog. If you > need a new module you would first add it in the libary, then go and > add it your patch from the popup menu. # OK. Then the responsibility of creating a Unit from existing code pieces belongs to that interface which adds new Units to the library (call it "UnitLibraryEditor") # But, I think, the name of a Unit should be editable. One can use oscil opcode for different purposes like as an sound generator or as an envelope etc. The usage depends to its context and can be revealed by its title. # And, what about different shapes or icons for units of different purposes? (an ADSR shape for envelopes etc.) (may be in next versions) > Modules could work by having all ports which are inputs not only be > able to be hooked into, but also have default values so that if a port > isn't connected to from an output from another module, then it can > still generate with the default instead. # Can we make something like this: The Units come with default values assigned to their input ports. Then, by right-clicking on a port, user can choose 1) to assign another constant value to that variable, 2) to set a p-field 3) to connect a blue object (like LineObject) 4) to connect another avaible port (pop-up menu should list all possible ports with same rate) # Another matter: The variables can be added, multiplied etc. in Csound. aout oscil 10000, klfo+kfreq, 1 Because the Unit code cannot be edited, this type of operations can't be done easily as writing code. We have to make special Unit's for arithmetic (or orther kind of) operations. (perhaps these may placed in "Math" sub-menu) -ugur- |