Am Sonntag, 16. Juli 2017, 04:14:49 CEST schrieb Yassin Philip: > On 16/07/17 02:04, Marc Joliet wrote: > > Am Sonntag, 16. Juli 2017, 01:01:07 CEST schrieb Yassin Philip: > > > I guess what I'm trying to say (in my poor English) is that I > > > > > > misunderstood the function of "," (comma) ; I was under the impression > > > > > that it mixed sources in parallel, but look: > > I assume this is your non-native English showing itself here, but to > > be clear: "," does not mix anything, it is simply the parallel > > composition operator, i.e., it places two signal paths in parallel > > (note that bus() can be used for more than two signal paths). > > ...But... How do you define mixing if not by "putting signals in > parallel"? :) I guess it /is/ my bad English at work... I don't know > about bus() I'll have to look it up, it sounds important :/
Ah, I was misunderstanding you, sorry, you're talking about a mixer! The entire time I was thinking of mixing (summing) signals, sorry! (Also, my comment about bus() isn't quite right: bus(N) generalises "_", but par() is more what I meant.) > I solved my mixing problem my studying the official mixer.dsp Faust > example, exept in the case of the additiveDrum > <http://faust.grame.fr/library.html#additivedrum> voice, that > effectively kills the 2 other voices. > > I have 3 voices kick, noise, and drum (this third one is just there as > an example/help) ; If I leave the kick out, I can hear and mix my noise > and drum. But if I put it back in, then it's just the kick :( > > Last commit, here is my process statement: > > process = kick,drum:hgroup("mixer", par(i, 2, voice(i)) :> stereo ); Yeah, that looks good, I think, and generalizes well to more than 2 voices due to how the ":>" operator works. > Eventually it will be more like > > process = kick,noise,drum:hgroup("mixer", par(i, 3, voice(i)) :> stereo ); > > Once I'll figure out why the kick is muting its neighbours. > > And of course, each one (kick,noise,drum) works on its own. So I guess > this additiveDrum <http://faust.grame.fr/library.html#additivedrum> > Faust instrument is somewhat special (it behaves differently than osc on > the matter of gate/trigger, apparently) and I could not find ONE single > implementation on the web (!) can you believe that? I guess I can > re-create it with a couple of properly tuned oscillators (maybe even > just one, by the sound of it) and surely I will, but I'd really like to > get to the bottom of it before. Can you guess why it mutes the other voices? > > Anyway, > > process = noise,drum:hgroup("mixer", par(i, 2, voice(i)) :> stereo ); > > Works, so that's that. Great :) . > > > if process = a; and process = b; work, then how in heaven can process = > > > > > > a,b; produce a (quite literally) "Error in sequential composition > > > > (A:B)?! > > > > > yPhil > > > > I'll have to have a look tomorrow, because I should be going to bed > > now, but I'll grant you that the error messages of FAUST are not the > > best. You kind of have to have a good picture of the flow diagram in > > your head, at least that was my experience (but that is somewhat > > compensated by the way you can layer things nicely in FAUST, so you > > can usually work through the various sub-graphs separately, at least > > that's my debugging strategy). > > By subgraph you mean the graphical representations in FaustWorks? I'd > love to dig deeper into each of them, is there a way? Yes, I mean the block diagram that is described by the FAUST code. And yeah, there should be a way to see all of the graphs. I don't know about FAUSTWorks, but the FAUST compiler itself generates one SVG for each sub-graph, and IIRC you can control their size (and thus their number). Actually, the SVGs are more of a hierarchy: you get a high-level graph, and then each element gets its own SVG, and so on down to the lowest level. That reminds me: I think your supposed to be able to click on an element to see its sub- graph in FAUSTWorks, can that be? *tries it out* Yes, it does in fact work that way :) . > > This is why I find that being able to see the full source code is > > somewhat more important in FAUST than in other languages, because a > > change in a sub-graph can break the rest of the graph, and then FAUST > > "helps" you by dumping the fully expanded graph (kind of like what C++ > > compilers used to do with template errors), making it somewhat > > difficult to figure out where exactly the error originated. (Again, > > that reflects my experience from a few years ago, maybe things have > > gotten better. I'll have to check out your code tomorrow, er, later > > today ;) .) > > Have a good night, I'm gonna sail away too, it's nearly 3AM here in > North Africa :) I committed the FaustWorks "scene" too along with all > the components, let me know if I can do more in the way of... Accessibility? > > Thanks a lot for your help and patience anyway. > > Phil [...]
signature.asc
Description: This is a digitally signed message part.
------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________ Faudiostream-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/faudiostream-users
