[Faudiostream-users] Faustworks "Binary build error"

2016-05-20 Thread Wayne Leeds
I get a "Binary build error" pop-up window that states "Script : output
file(s) /home/user/Desktop/Faust-matrix-mixer/Faust-matrix-mixer not
found." when I try to generate a jack-qt or alsa-qt executable. Other
flavors generate fine.

Any suggestions?
Wayne in Grand Rapids, Minnesota
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


Re: [Faudiostream-users] Incorrect argument order with recursive composition and named parameters

2016-05-20 Thread jimbo1qaz
Another bug related to handling named parameters:

func(x) = x^2 + x + 1;
process = func(_); // I didn't test "process=func"

When I compile this program, "process" has two inputs, not one. If I try to
call "func" in stereo, I end up with four inputs.

On Fri, May 20, 2016 at 8:57 PM, jimbo1qaz  wrote:

> I'm just starting out in Faust, and I believe I have discovered a bug.
>
> I was trying to write a feedback echo function with configurable strength.
> Here's the code:
>
> snes_delay(x, feedback) = (
> (x + volf(feedback*_)) ~ delay(131072, SR/10 - 1, _)
> ) @ 1;
>
> Unexpectedly, this function produced an immediate never-ending echo
> feedback. After running "faust -svg", I discovered that the recursive
> composition was actually fed into the "x" parameter instead of the "_"
> parameter, despite the function explicitly passing in an "x" parameter.
> Instead, the "x" parameter was fed into "_".
>
> Why does this occur? Is there a workaround?
>
> 
>
> Also, does FAUST have a native configurable recursive delay function?
> Combining delay() with "~" adds an unwanted sample of delay, which I had to
> manually work around by subtracting 1 from the ~RHS.
>
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


[Faudiostream-users] GUI element sorting order (alphabetical)?

2016-05-20 Thread jimbo1qaz
It seems like FaustLive sorts GUI elements in ASCII order, rather than the
order they're specified in code. Do manually declared hgroups maintain
sorting order within their individual elements?

Does sorting order have anything to do with "Element name [1]"?
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


[Faudiostream-users] Calling functions using arguments taken from lists?

2016-05-20 Thread jimbo1qaz
New user of Faust here. I'm trying to call a function using arguments taken
from a list.

So far, I've tried:

val1 = 0; val2 = 0;
geti = take(_, (val1, val2));

seq(i, 2, f(val%i));
seq(i, 2, f(geti(i));
seq(i, 2, f(geti(%i));

None of these work. Is list/array looping implemented in FAUST?

 PROPOSED SOLUTION 

Python has a "zip" function to pick the first element out of each argument,
then the second For example, zip((1,2), (a,b)) == ((1,a), (2,b)).

In Python, I'd implement such a thing as:
for value, vol, pan in zip(stereo, vols, pans): func(value, vol, pan)

This would "almost" works with the "<:" operator, but it doesn't really
work well when passing the same value into all function calls.

Workaround for this issue: You can declare this unchanging value in a with
statement, then use the variable name.
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


[Faudiostream-users] Incorrect argument order with recursive composition and named parameters

2016-05-20 Thread jimbo1qaz
I'm just starting out in Faust, and I believe I have discovered a bug.

I was trying to write a feedback echo function with configurable strength.
Here's the code:

snes_delay(x, feedback) = (
(x + volf(feedback*_)) ~ delay(131072, SR/10 - 1, _)
) @ 1;

Unexpectedly, this function produced an immediate never-ending echo
feedback. After running "faust -svg", I discovered that the recursive
composition was actually fed into the "x" parameter instead of the "_"
parameter, despite the function explicitly passing in an "x" parameter.
Instead, the "x" parameter was fed into "_".

Why does this occur? Is there a workaround?



Also, does FAUST have a native configurable recursive delay function?
Combining delay() with "~" adds an unwanted sample of delay, which I had to
manually work around by subtracting 1 from the ~RHS.
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


[Faudiostream-users] FOF in faust

2016-05-20 Thread Bart Brouns
Hi,

I'm porting Forme d'Onde Formantique (FOF) to faust. [1] [2]

It's based on [3], but can be used with dynamic parameters.
[3] creates a single enveloped sine, and feeds it into a delay with full 
feedback, so it never changes.

My version has everything synced to a master lf_rawsaw, so it 
continuously creates new enveloped sines.

It has multiple parallel sine-envelope pairs, so the envelopes can 
overlap without being cut off, and you get an octaviation coefficient 
parameter almost 'for free' [4].

A demo song: [5].

The synth making most of the above sounds has a few problems:
- It takes too much CPU when compiled with -scal, -vec or -omp.
- When compiling with -sch, cc1plus eats about 13Gb of RAM/swap, and 
  takes 7 hours. (faust 0.9.73 or faust 1 git)
- Faust 2 with -sch produces a silent program.

Granted, those are 256 sine-envelope pairs, so it's a miracle it runs at
all!

Steps to reproduce:

git clone https://github.com/magnetophon/VoiceOfFaust
cd VoiceOfFaust
git checkout a44c5784e55f48ef44b76bac2e628e7a941e2474
time /home/bart/.nix-profile/bin/faust2jack -t 9 -time -osc -sch 
FOFvocoder.dsp
./FOFvocoder & sleep 2 && jack_connect system:capture_1 FOFvocoder:in_0 
& jack_connect FOFvocoder:out_0 system:playback_1 & jack_connect 
FOFvocoder:out_1 system:playback_2

To use it as intended, you also have to run:
pd PureData/OscSendVoc.pd


Cheers,
Bart.


[1] 
https://github.com/magnetophon/VoiceOfFaust/blob/NewFOF/lib/Foflet.dsp
[2] 
http://anasynth.ircam.fr/home/english/media/singing-synthesis-chant-program
[3] https://ccrma.stanford.edu/~mjolsen/220a/fp/Foflet.dsp
[4] http://www.csounds.com/tootsother/fof/FOF.html
[5] http://magnetophon.nl/sounds/magnetophon/oldCombo-12.wav

--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j
___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users


[Faudiostream-users] How to customize Faustworks generated code?

2016-05-20 Thread Wayne Leeds
I've used a faust example program to make a simple 26x4 matrix-style mixer:

[CODE]
declare name "matrix";
declare version "1.0";
declare author "Grame";
declare license "BSD";
declare copyright "(c)GRAME 2006";

//---
// Audio Matrix : N inputs x M outputs
//---

import("music.lib");

Fader(in)= db2linear(vslider("Input %in", -10, -96, 4, 0.1));
Mixer(N,out) = hgroup("Monitor %out", par(in, N, *(Fader(in)) ) :> _ );
Matrix(N,M) = tgroup ("Matrix %N x %M", par(in, N, _) <: par(out, M,
Mixer(N, out)));

process = Matrix(26, 4);

[/CODE]

I would like to customize the auto-generated gui widget names (Input 0,
Input 1, ..., Output 0, Output 1, ...) to the names of the instruments on
the input sliders and the names of the output devices on the Output tabs.
I'd like to do that by modifying the generated C++ code, which I believe I
can manage, but I can't seem to successfully compile and link to an
executable file.  At this point, I've tried so many things that I can't
provide specific error messages, but they are generally along the lines of
not being able to find included files (for example "gui/GUI.h" and
).  Perhaps I've installed faust or faustworks or qt
incorrectly?

I'm running Ubuntu 15.10 with the xfce desktop and "qmake --version"  shows:
QMake version 3.0
Using Qt version 5.4.2 in /usr/lib/x86_64-linux-gnu

I wish to create a jack-compatible, qt gui executable.

I guess at this point I'm looking for a general approach along with any
detailed suggestions anyone might have.  If more info is needed, please be
as specific as possible in letting me know what to do to provide it.
Although I was a software engineer at one point in my life, I'm older and
wiser (but not as smart) now.  :)

Thanks,
Wayne in Grand Rapids, Minnesota
--
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j___
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users