Check and Windows preview / check (anvil) (push) Canceled after 0s
Check and Windows preview / check (ballast) (push) Canceled after 0s
Check and Windows preview / check (braze) (push) Canceled after 0s
Check and Windows preview / check (crucible) (push) Canceled after 0s
Check and Windows preview / check (forge) (push) Canceled after 0s
Check and Windows preview / check (knurl) (push) Canceled after 0s
Check and Windows preview / check (lathe) (push) Canceled after 0s
Check and Windows preview / check (patina) (push) Canceled after 0s
Check and Windows preview / check (planish) (push) Canceled after 0s
Check and Windows preview / check (quench) (push) Canceled after 0s
Check and Windows preview / check (rivet) (push) Canceled after 0s
Check and Windows preview / check (temper) (push) Canceled after 0s
Check and Windows preview / check (weld) (push) Canceled after 0s
Check and Windows preview / previews (push) Canceled after 0s
Check and Windows preview / windows (push) Canceled after 0s
Independent plugin release / plan (push) Successful in 8s
Independent plugin release / build (push) Successful in 3m18s
Independent plugin release / publish (push) Successful in 10s
- Forge 0.1.0: first release. - Mark Forge released in docs/ideas.md and add it to the release table.
64 lines
3.0 KiB
Markdown
64 lines
3.0 KiB
Markdown
# Forge
|
|
|
|
Forge is one tracked channel strip: Lathe, Temper and Knurl run behind a single
|
|
note tracker, in the order you choose. Current version **0.1.0**.
|
|
|
|
Each of the three plugins detects the played note itself. In a row, their
|
|
lookaheads add up (Lathe 67 ms, Temper 68 ms, Knurl 71 ms: more than 200 ms),
|
|
and a tracker after Knurl hears Knurl's sub-octave and follows a note an octave
|
|
low. Forge reads the note once, from its input, and every module follows that
|
|
one tracker. In a test with Knurl's sub-octave pattern in front of Lathe, a
|
|
standalone Lathe after Knurl followed the note an octave low in every frame;
|
|
Lathe inside Forge followed the played note in every frame.
|
|
|
|

|
|
|
|
## Install on Windows
|
|
|
|
Copy `Forge.clap` into `C:\Program Files\Common Files\CLAP\`. In FL Studio
|
|
2024.1 or newer, open Options → Manage plugins, enable Verify plugins, and Find
|
|
installed plugins. Load Forge in the mixer slot of the bass, right after the
|
|
synth. Keep the font license with redistributed packages.
|
|
|
|
## Work with it
|
|
|
|
1. Choose **Pitch from** in the header: **AUDIO** detects the note from the
|
|
input; **MIDI** follows MIDI notes sent to the effect. All modules use it.
|
|
2. The **Chain** row shows the modules in processing order. Click a module's
|
|
name to edit it below; **ON** switches it on or off. The button between two
|
|
modules swaps them. The default order is Lathe, Temper, Knurl, as in the
|
|
standalone chain.
|
|
3. Each module's page is its standalone editor: [Lathe](../lathe/README.md),
|
|
[Temper](../temper/README.md) and [Knurl](../knurl/README.md) explain the
|
|
controls. Temper's **AUTO GAIN** sits in the Chain row while its page is
|
|
open.
|
|
4. The **Gate** knob on every page is the one shared tracker gate: turning it on
|
|
one page turns it on all.
|
|
|
|
**Bypass** in the header crossfades the whole strip to the delayed input.
|
|
|
|
## How it works
|
|
|
|
The tracker reads the strip's input, and the audio is delayed by its lookahead
|
|
once. Every module gets the note events delayed by the latency of the modules
|
|
in front of it, so each module sees a note start exactly on the attack of the
|
|
audio it receives. A single module on its own in Forge gives the same output,
|
|
sample for sample, as its standalone plugin, in every position of the chain.
|
|
|
|
Temper's **Normalize** measures each note's level one lookahead ahead. In Forge
|
|
it measures the strip's input, not the output of the modules in front of it.
|
|
Lathe and Knurl change the level about equally on every note, so the notes
|
|
still reach the shaper at one level.
|
|
|
|
## Timing and limits
|
|
|
|
Latency is the tracker's lookahead (about 67 ms), Temper's oversampling filters
|
|
(under 1 ms) and Knurl's room for timing jitter (about 4 ms): about 72 ms in
|
|
all, reported to the host. A module that is off still delays its audio by its
|
|
own latency, so the latency stays the same in every order and with any module
|
|
off.
|
|
|
|
Changing the order while audio plays switches the routing at once and can
|
|
click. The standalone plugins stay: use them when you need only one module, or
|
|
when another plugin must sit between two of them.
|