mirror of
https://codeberg.org/armin/horizont.git
synced 2026-09-01 04:10:46 +02:00
update README
This commit is contained in:
parent
2359bfd579
commit
bb24478a12
2 changed files with 18 additions and 5 deletions
10
README.md
10
README.md
|
|
@ -3,8 +3,8 @@
|
||||||
A stereo algorithmic reverb audio plugin (VST3 / AU) for macOS, built with
|
A stereo algorithmic reverb audio plugin (VST3 / AU) for macOS, built with
|
||||||
JUCE and C++17.
|
JUCE and C++17.
|
||||||
|
|
||||||
It pairs a Schroeder/Moorer-style reverb core — a diffusion allpass section and
|
It pairs a Schroeder/Moorer-style reverb core - a diffusion allpass section and
|
||||||
a bank of parallel damped combs whose gains are derived from an RT60 time — with
|
a bank of parallel damped combs whose gains are derived from an RT60 time - with
|
||||||
a **feedback pitch-shifting loop**: each pass through the reverb is recirculated
|
a **feedback pitch-shifting loop**: each pass through the reverb is recirculated
|
||||||
through a granular crossfade pitch shifter, so the tail climbs or descends in
|
through a granular crossfade pitch shifter, so the tail climbs or descends in
|
||||||
pitch on every echo. The UI is a dark teal hardware-rack style skin with
|
pitch on every echo. The UI is a dark teal hardware-rack style skin with
|
||||||
|
|
@ -15,7 +15,7 @@ skeuomorphic rotary knobs and a live wet-spectrum analyser.
|
||||||
- 9 fully automatable, host-saveable parameters in an `AudioProcessorValueTreeState`
|
- 9 fully automatable, host-saveable parameters in an `AudioProcessorValueTreeState`
|
||||||
- Stable, self-scaling reverb: comb gains are computed from RT60 so the loop
|
- Stable, self-scaling reverb: comb gains are computed from RT60 so the loop
|
||||||
never diverges, and every delay length / filter / window scales with sample rate
|
never diverges, and every delay length / filter / window scales with sample rate
|
||||||
- Per-sample parameter smoothing (`juce::SmoothedValue`) — no clicks, no allocation
|
- Per-sample parameter smoothing (`juce::SmoothedValue`) - no clicks, no allocation
|
||||||
in the audio callback
|
in the audio callback
|
||||||
- Granular pitch shifter with seamless crossfade; bypasses transparently at 0 semitones
|
- Granular pitch shifter with seamless crossfade; bypasses transparently at 0 semitones
|
||||||
- Feedback loop routing the wet signal back through the pitch shifter and diffusers
|
- Feedback loop routing the wet signal back through the pitch shifter and diffusers
|
||||||
|
|
@ -91,7 +91,7 @@ If you prefer to manage JUCE yourself, either check it out as `./JUCE` next to
|
||||||
this repo, or point CMake at it with `-DJUCE_ROOT=/path/to/JUCE`.
|
this repo, or point CMake at it with `-DJUCE_ROOT=/path/to/JUCE`.
|
||||||
|
|
||||||
> **Note:** JUCE 9 / `master` refactored the LookAndFeel API and is not yet
|
> **Note:** JUCE 9 / `master` refactored the LookAndFeel API and is not yet
|
||||||
> supported — a JUCE 8.0.x release tag is required.
|
> supported - a JUCE 8.0.x release tag is required.
|
||||||
|
|
||||||
After installing, ask your DAW / Audio Unit host to rescan plug-ins (or run
|
After installing, ask your DAW / Audio Unit host to rescan plug-ins (or run
|
||||||
`auval` to validate the component). Installed bundles are ad-hoc code-signed.
|
`auval` to validate the component). Installed bundles are ad-hoc code-signed.
|
||||||
|
|
@ -114,6 +114,6 @@ Source/
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
This project is released under the GPL v3 — the standard license for JUCE
|
This project is released under the GPL v3 - the standard license for JUCE
|
||||||
projects that use the open-source JUCE distribution. You may additionally use
|
projects that use the open-source JUCE distribution. You may additionally use
|
||||||
it under the terms of a JUCE commercial license if you hold one.
|
it under the terms of a JUCE commercial license if you hold one.
|
||||||
|
|
|
||||||
13
cmake/stamp_build_info.cmake
Normal file
13
cmake/stamp_build_info.cmake
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Generates HorizontBuildInfo.h with the current wall-clock timestamp.
|
||||||
|
# Run at build time (not configure time) so every build stamps a fresh date.
|
||||||
|
|
||||||
|
set(output "${GENERATED_DIR}/HorizontBuildInfo.h")
|
||||||
|
|
||||||
|
execute_process(
|
||||||
|
COMMAND date "+%Y-%m-%d__%H-%M-%S"
|
||||||
|
OUTPUT_VARIABLE timestamp
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
file(WRITE "${output}"
|
||||||
|
"#pragma once\n"
|
||||||
|
"#define HORIZONT_BUILD_TIMESTAMP \"${timestamp}\"\n")
|
||||||
Loading…
Add table
Add a link
Reference in a new issue