You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+15-11
Original file line number
Diff line number
Diff line change
@@ -5,13 +5,13 @@ TD-Faust is an integration of [FAUST](https://faust.grame.fr) (Functional Audio
5
5
6
6
* FAUST code can be compiled "just-in-time" and run inside TouchDesigner.
7
7
* Tested on Windows and macOS.
8
+
* Automatically generated user interfaces of native TouchDesigner elements based on the FAUST code.
8
9
* Up to 256 channels of input and 256 channels of output.
9
10
* Pick your own sample rate.
10
11
* Support for all of the standard [FAUST libraries](https://faustlibraries.grame.fr/) including
11
12
** High-order ambisonics
12
13
** WAV-file playback
13
14
** Oscillators, noises, filters, and more
14
-
* Automatically generated user interfaces of native TouchDesigner elements based on the FAUST code.
15
15
* MIDI data can be passed to FAUST via TouchDesigner CHOPs or hardware.
16
16
* Support for [polyphonic MIDI](https://faustdoc.grame.fr/manual/midi/).
17
17
** You can address parameters of individual voices (like [MPE](https://en.wikipedia.org/wiki/MIDI#MIDI_Polyphonic_Expression)) or group them together.
@@ -32,15 +32,17 @@ Demo:
32
32
33
33
### Windows
34
34
35
-
Run the latest `win64.exe` installer from FAUST's [releases](https://github.com/grame-cncm/faust/releases). After installing, copy `C:/Program Files/Faust/share/faust/` to `C:/Program Files/Derivative/TouchDesigner/share/faust/`. If you're using a TouchDesigner executable in a different location, the destination path in this step would be different such as `C:\Program Files\Derivative\TouchDesigner.2021.38110\share\faust`.
35
+
Run the latest `win64.exe` installer from FAUST's [releases](https://github.com/grame-cncm/faust/releases). After installing, copy `C:/Program Files/Faust/share/faust/` to `C:/Program Files/Derivative/TouchDesigner/share/faust/`. If you're using a TouchDesigner executable in a different location, the destination path in this step would be different such as `C:\Program Files\Derivative\TouchDesigner.2021.38110\share\faust`. If you want the absolute latest version of Faust, you can create this `share/faust` folder by copying from [Faust Libraries](https://github.com/grame-cncm/faustlibraries).
36
36
37
-
Visit TD-Faust's [Releases](https://github.com/DBraun/TD-Faust/releases) page. Download and unzip the latest Windows version. Copy `faust.dll`, `TD-Faust.dll`, and `sndfile.dll` to this repository's `Plugins` folder.
37
+
Visit TD-Faust's [Releases](https://github.com/DBraun/TD-Faust/releases) page. Download and unzip the latest Windows version. Copy `faust.dll`, `TD-Faust.dll`, and `sndfile.dll` to this repository's `Plugins` folder. Open `TD-Faust.toe` and compile a few examples.
38
38
39
39
### macOS
40
40
41
-
Run the latest `.dmg` installer from FAUST's [releases](https://github.com/grame-cncm/faust/releases). If you have an M1 ("Apple Silicon"), choose `*arm64.dmg`, otherwise choose `*x64.dmg`. After installing, copy `Faust-2.X/share/faust/` to `/usr/local/share/faust`.
41
+
Run the latest `.dmg` installer from FAUST's [releases](https://github.com/grame-cncm/faust/releases). If you have an M1 ("Apple Silicon"), choose `*arm64.dmg`, otherwise choose `*x64.dmg`. After installing, copy `Faust-2.X/share/faust/` to `/usr/local/share/faust`. If you want the absolute latest version of Faust, you can create this `share/faust` folder by copying from [Faust Libraries](https://github.com/grame-cncm/faustlibraries).
42
+
43
+
Visit TD-Faust's [Releases](https://github.com/DBraun/TD-Faust/releases) page. Download and unzip the latest macOS version. Copy `libfaust.2.dylib` and `TD-Faust.plugin` to this repository's `Plugins` folder. Open `TD-Faust.toe` and compile a few examples.
42
44
43
-
Due to some difficulties with codesigning, for the moment you must compile TD-Faust on your own computer.
45
+
If there's a warning about the codesigning certificate, you may need to compile TD-Faust on your own computer.
44
46
45
47
1. Clone this repository with git. Then update all submodules in the root of the repository with `git submodule update --init --recursive`
46
48
2. Install Xcode.
@@ -49,8 +51,6 @@ Due to some difficulties with codesigning, for the moment you must compile TD-Fa
49
51
5. In the same Terminal window, navigate to the root of this repository and run `sh build_macos.sh`
50
52
6. Open `TD-Faust.toe`
51
53
52
-
<!-- Visit TD-Faust's [Releases](https://github.com/DBraun/TD-Faust/releases) page. Download and unzip the latest macOS version. Copy `libfaust.2.dylib` and `TD-Faust.plugin` to this repository's `Plugins` folder. -->
53
-
54
54
## Tutorial
55
55
56
56
### Writing Code
@@ -78,11 +78,15 @@ You don't need to `import("stdfaust.lib");` in the FAUST dsp code. This line is
78
78
79
79
### Setup UI
80
80
81
-
After compiling, press the `Setup UI` button to build a UI in the `Viewer COMP`. This step will save an XML file inside a directory called `dsp_output`. It will also print out information inside the TouchDesigner console. On your operating system, you should set the environment variable `TOUCH_TEXT_CONSOLE` to 1. Then restart TouchDesigner and you'll start seeing the text console window.
81
+
One great feature of TD-Faust is that user interfaces that appear in the Faust code can become [Custom Parameters](https://docs.derivative.ca/Custom_Parameters) by pressing the "Setup UI" button. Take a look at the simple Faust code below:
82
82
83
-
After "Setup UI" is pressed, the Faust base will create a secondary page of custom parameters titled "Control".
In a *non-polyphonic example*, this is an example of the important printout section:
89
+
After compiling this code, press the `Setup UI` button to build a UI in the `Viewer COMP`. The Faust base will create a secondary page of custom parameters titled "Control", and because of the code we've written there will be one custom Float parameter named "Volume". Setting up the UI like this works by saving an XML file inside a directory called `dsp_output`. It will also print out information inside the TouchDesigner console. On your operating system, you should set the environment variable `TOUCH_TEXT_CONSOLE` to 1. Then restart TouchDesigner and you'll start seeing the text console window. In a *non-polyphonic example*, this is an example of the important printout section:
86
90
87
91
<details>
88
92
<summary>non-polyphonic example</summary>
@@ -186,7 +190,7 @@ Note how there is a set of parameters for each voice. All parameters can be addr
186
190
187
191
### Group Voices and Dynamic Voices
188
192
189
-
*The `Group Voices` and `Dynamic Voices` toggles matter when using [polyphony](https://faustdoc.grame.fr/manual/midi/). You should also read the `Setup UI` section above.
193
+
The `Group Voices` and `Dynamic Voices` toggles matter when using [polyphony](https://faustdoc.grame.fr/manual/midi/). You should also read the `Setup UI` section above.
190
194
191
195
If you enable `Group Voices`, one set of parameters will control all voices at once. Otherwise, you will need to address a set of parameters for each voice.
0 commit comments