• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

doc/H03-May-2022-

img/H03-May-2022-

pugl/H23-Jan-2019-2,2291,641

textures/H23-Jan-2019-12,00411,968

COPYINGH A D23-Jan-201917.7 KiB340281

MakefileH A D03-May-20227 KiB232183

README.mdH A D23-Jan-20194.1 KiB10579

balance.cH A D23-Jan-201924.5 KiB874707

balance.ttl.inH A D23-Jan-20195.3 KiB187184

balance.ui.ttl.inH A D23-Jan-2019372 1814

git2lv2.mkH A D23-Jan-20191.4 KiB4429

manifest.ttl.inH A D23-Jan-2019282 97

manifest.ui.ttl.inH A D23-Jan-2019124 64

ui.cH A D23-Jan-201953 KiB1,8981,533

ui_model.hH A D23-Jan-2019153.7 KiB1,3561,325

uris.hH A D23-Jan-20194.2 KiB153110

README.md

1balance.lv2 - LV2 stereo balance
2================================
3
4balance.lv2 is an audio-plugin for stereo balance control with
5optional per channel delay.
6
7balance.lv2 facilitates adjusting stereo-microphone recordings (X-Y, A-B, ORTF).
8But it also generally useful as "Input Channel Conditioner".
9It allows for attenuating the signal on one of the channels as well as
10delaying the signals (move away from the microphone).
11To round off the feature-set channels can be swapped or the signal can be
12downmixed to mono after the delay.
13
14It features a Phase-Correlation meter as well as peak programme meters
15according to IEC 60268-18 (5ms integration, 20dB/1.5 sec fall-off)
16for input and output signals.
17
18Install
19-------
20
21Compiling this plugin requires LV2 SDK (lv2 lv2core), gnu-make and a c-compiler.
22The optional UI depends on libftgl-dev, libglu-dev, libx11-dev and the
23fonts-freefont-ttf (or any other .ttf font).
24
25```bash
26  git clone git://github.com/x42/balance.lv2.git
27  cd balance.lv2
28  make
29  sudo make install PREFIX=/usr
30
31  # test run
32  jalv.gtk http://gareus.org/oss/lv2/balance
33```
34
35Note to packagers: The Makefile honors `PREFIX` and `DESTDIR` variables as well
36as `CFLAGS`, `LDFLAGS` and `OPTIMIZATIONS` (additions to `CFLAGS`).
37
38Signal Flow & Controls
39----------------------
40
41![signal flow](https://raw.github.com/x42/balance.lv2/master/doc/signal_flow.png "Signal Flow")
42
43The plugin has six control inputs, all of which are interpolated and can
44be automated or changed dynamically without introducing clicks.
45
46### Trim
47
48Simple gain stage to amplify or attenuate the signal by at most 20dB.
49This knob equally affects both channels.
50
51This stage also allows to individually invert the phase of each channel.
52
53### Balance
54
55Left/Right signal level balance control.
56*Gain Mode* defines the behaviour of the *Balance* knob.
57
58* classic "Balance" mode.
59  * Attenuate one channels at a time; no positive gain.
60  * 100% left: mute the right channel, left channel is untouched.
61  *  50% left: attenuate the right channel by -6dB (signal * 0.5), left channel is untouched.
62  *  29% left: attenuate the right channel by -3dB (signal * 0.71), left channel is untouched.
63  *  50% right: attenuate the left channel by -6dB (signal * 0.5), right channel is untouched.
64  * ...
65* "Unity Gain - Equal Amplitude" mode
66  * behaviour of the attenuated channel is identical to "Balance" mode.
67    Gain of the previously untouched channel is raised so that the mono sum of both retains equal amplitude.
68  * 100% right: -inf dB on left channel (signal * 0.0), +6dB on right channel (signal * 2.0).
69  *  50% left: attenuate the right channel by -6dB (signal * 0.5), left channel is amplified by +3.5dB (signal * 1.5)
70  *  29% left: -3.0 dB (signal * .71) on left channel,  +2.2dB (signal * 1.29) on right channel.
71  * ...
72* "Seesaw - Equal Power" mode
73  * -6dB .. +6dB range, equal power distribution
74  * The signal is at full-level in center position and becomes progressively louder as it is panned to the right or left.
75  * The overall slider range is identical to the other modes.
76    Values > 50%..100% in either direction are fixed to +-6dB.
77  * 100% right: -6dB on left channel and +6dB on right channel.
78  *  50% right: -6dB on left channel and +6dB on right channel (!).
79  *  29% right: -3dB on left channel and +3dB on right channel.
80
81Regardless of the Gain Mode, at center position the signal remains unmodified.
82
83### Delay
84
85Allow to delay the signal of either channel to correct the stereo field (signal runtime) or correct phase alignment.
86
87### Channel Map
88
89The "Downmix to Mono" option will attenuate the output by -6dB. Other options will simply copy
90the result to selected channel(s).
91
92Screenshots
93-----------
94The plugin comes with a built-in optional user interface.
95
96![screenshot](https://raw.github.com/x42/balance.lv2/master/doc/screenshot_ui.png "Built-in openGL GUI")
97![screenshot](https://raw.github.com/x42/balance.lv2/master/doc/screenshot_ardour.png "Basic controls in Ardour")
98
99Thanks
100------
101Many thanks to all who contributed ideas and feedback. In particular
102Chris 'oofus' Goddard, who inspired the current signal flow, provided
103the diagram and beta-tested the plugin. As well as tom^_ for feedback
104on the GUI in general.
105