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

[...]

Attachment: 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

Reply via email to