8ed33f1bc7
remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead
2018-10-14 22:06:11 -04:00
cf652331ad
Adapt our remaining MSVC projects for 'boost::atomic' (in case it later gets extended to the other libs)
...
Stage 3 of 3
2018-09-30 09:19:28 +01:00
79f01bc889
Initial changes needed for building Mixbus (with MSVC) as version 5
...
(Mixbus itself will probably need extra changes)
2018-09-10 07:14:59 +01:00
Johannes Mueller
18511f851e
Put duplicate code of a-comp and a-expander into one file ...
...
... for better maintainability
consolidated duplicate code:
* drawing the dB-grid of a-comp's and a-expander's full display
* drawing the gain reduction bar of a-comp's and a-expander's full display
* the entire only-bars display
2018-06-20 22:57:41 +02:00
Johannes Mueller
0c64eacef5
Consolidated a-comp/a-exp run_mono() and run_stereo() to one run()
...
Up to now we had in a-comp and a-exp one run_mono() and one run_stero()
function which where almost identical except that run_stereo() treated two
in/outs and run_mono() only one. Now we store the number of channels
acomp->n_channels according to the URI and in run() we loop over an array of
pointers to the in/out buffers.
2018-06-20 22:23:54 +02:00
Johannes Mueller
65fed2fa89
Make makeup_gain smoothening of a-expander same as in a-comp
2018-06-20 22:10:54 +02:00
Johannes Mueller
1ad66cfb3c
a-comp: makeup_gain needs to be smoothened after every sample ...
...
... not only once in every run
2018-06-20 21:06:16 +02:00
Johannes Mueller
a0a4db47a7
Add a control port to a-comp select which mode to display inline
2018-06-20 21:06:16 +02:00
Johannes Mueller
869d48c9a6
Make a-comp's meter show numerical values in "4.1f"
...
according to discussion in irc.
2018-06-20 21:06:16 +02:00
Johannes Mueller
89aa17fe00
Put input level meter before output level meter in the generic gui
...
This is done by relying on the fact that the generic gui orders the meters
according to their port indices.
2018-06-20 21:06:16 +02:00
Johannes Mueller
6da18b32b5
Visualize the peak of the compressor state in a-comp
2018-06-20 21:06:16 +02:00
Johannes Mueller
619ba94f51
Drop LPF of input level visualization in a-comp
2018-06-20 21:06:16 +02:00
Johannes Mueller
c9bbb01d98
Show the input level in acomp's inline display rather than output level
2018-06-20 21:06:16 +02:00
Johannes Mueller
ef978d1b35
Inlevel output port to visualize the input level in the generic GUI
2018-06-20 21:06:16 +02:00
Johannes Mueller
87ea757a5d
Improve level vizualisation in a-comp
...
* LPF in the signal visialization
* Lower minimum values
2018-06-20 21:06:16 +02:00
Johannes Mueller
3e124704b0
GR-based visualization in a-comp
2018-06-20 21:06:16 +02:00
Johannes Mueller
d29880da89
New attack and release behavior for a-comp
...
Details in http://tracker.ardour.org/view.php?id=7439
2018-06-20 21:06:16 +02:00
Johannes Mueller
112ac13b90
Don't use acomp->v_gainr outside LV2_EXTENDED ifdefs
2018-06-20 21:06:16 +02:00
Johannes Mueller
9a9df5a10b
Make the peak indication in the graph of a-expander green ...
...
... so that it has a different color than the expander curve
2018-05-12 19:49:18 +02:00
Johannes Mueller
46aa204eb8
Limit gain reduction of a-expander to 160 dB in order to ...
...
improve release behavior.
This slows down the release after events like single snare hits as, the gain
reduction only releases to 160 dB rather than to inf.
2018-05-12 19:49:18 +02:00
Johannes Mueller
40f12e1205
Visualize peak input in a-expander
2018-05-12 19:49:18 +02:00
Johannes Mueller
2dc96027d6
Add output control port to a-exp for input level
2018-05-12 19:49:18 +02:00
Johannes Mueller
8be06e6e63
Indicate input level in a-exp's inline display rather than output
2018-05-12 19:49:18 +02:00
Johannes Mueller
0eaf7b1e18
Increase the range of a-exp's ratio to make it usable like a gate
2018-05-12 19:49:18 +02:00
Johannes Mueller
0bc5a6f8e9
Make a-expander react probably on being disabled and enabled.
2018-05-12 19:49:18 +02:00
Johannes Mueller
2a5d56215c
New visualization of the compressor state in graph view
...
To properly visualize attack and release we calculate the input level out of
the gain reduction the output level threshold and ratio.
if (output_level >= threshold) { // no expansion
input_level = output_level
} else {
input_level = (gain_reduction - threshold * (1-ratio)) / ratio
}
2018-05-12 19:49:18 +02:00
Johannes Mueller
48c568187d
Fixed wrong initialization.
2018-05-12 19:49:18 +02:00
Johannes Mueller
37d2a7bc95
Adjust default parameters of a-expander
2018-05-12 19:49:18 +02:00
Johannes Mueller
bce3497d2a
Changed attack and release behavior
2018-05-12 19:49:18 +02:00
Johannes Mueller
3620122ad0
First draft of a-expander
2018-05-12 19:49:18 +02:00
b9c9777b9a
When building with MSVC, allow for the fact that Mixbus and Ardour can be using different versions of the SESSION_FILE format
2018-02-15 09:03:32 +00:00
6f019faaa0
Accommodate the change from libtimecode to libtemporal
2018-02-14 10:02:11 +00:00
52aa9bf848
a-comp: Fix typo with previous patch
2017-11-12 00:16:44 +11:00
f3efff4c7e
a-comp: Fix noise floor - asymptotics
2017-11-11 14:26:50 +11:00
4c58ada24b
Fix a-reverb bypass/enable
2017-11-08 01:38:17 +01:00
30b087ab3d
globally change all use of "frame" to refer to audio into "sample".
...
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
019f664356
Fix a-fluidsynth bank/program restore (during session load)
...
* set program in work-response, synchronous to run()
* properly store bank per channel (for replay)
2017-09-11 16:48:54 +02:00
fdbe22d005
a-fluidsynth: query current bank/program after loading .sf2
2017-09-10 16:06:16 +02:00
b7227415ad
a-fluidsynth mark session as modified if .sf2 changes
2017-09-08 23:35:00 +02:00
ba7bbd1d51
a-fluidsynth: implement LV2_BANKPATCH__notify
2017-09-08 23:35:00 +02:00
Johannes Mueller
6663a26755
Signal wish to show inline display in gui by lv2:optionalFeature
...
... in .ttl file rather than by extension_data() in code. That's more in the
spirit of LV2.
2017-07-31 21:31:23 +02:00
Johannes Mueller
e75db87bf6
Tweaking the a-comp inline display a bit. Make it more skinny.
2017-07-31 21:31:23 +02:00
Johannes Mueller
2716ce41e0
Indicate whether to show plugin's inline display in GUI
...
This is currently done by an extension data similarly to
LV2_INLINEDISPLAY__interface.
2017-07-31 21:31:23 +02:00
Johannes Mueller
59775df9be
Simplified inline display if the channel strip is not wide enough
...
If the width of the display area is below 200 px, we switch from the graph
display to displaying only two bars, one for output level and one for gain
reduction. In the bar mode we also visualize threshold and ratio.
2017-07-31 21:31:22 +02:00
Johannes Mueller
24cbb1b153
Honor attack and release parameters in a-comp's inline graph
2017-07-31 21:31:22 +02:00
Johannes Mueller
ccab32654b
Indicate gain reduction in a-comp
2017-07-31 21:31:22 +02:00
e65ff3fb4a
Show range -60 .. +10 dBFS in acomp's inline display
2017-07-31 21:31:22 +02:00
Johannes Mueller
85106d81a0
Set makeup to 0.f when bypassed also in stereo version
2017-07-31 21:31:22 +02:00
Johannes Mueller
29df879edd
Adjust the indication of the treshold value by the makup gain.
...
When lifting the compressor curve by the makeup gain value the actual
treshold (the level when the curve kinks in) is also lifted. Therefore we need
to adjust the dashed line indicating the threshold as well as the level when
the color gradient to show compression kicks in.
2017-07-31 21:31:22 +02:00
Johannes Mueller
dff4153024
Also the stereo version needs to set need_expose
2017-07-31 21:31:22 +02:00
Johannes Mueller
f68754b19d
Show a-comp's makeup grain in inline rendering
2017-07-31 21:31:22 +02:00
b42dbe9e4e
Sanitize printing of a-eq gain parameters
2017-07-22 17:41:35 +02:00
Johannes Mueller
0109042e7b
Increase range of a-comp#stereo release time
...
Like for the mono version in f52443e17e
2017-07-21 16:11:17 +02:00
Jelle van der Waa
b1cf27bed4
Fix duplicate ‘const’ declaration specifier
2017-07-12 12:09:59 +02:00
d08b81d33d
a-EQ: Revert one of the previous changes
...
One of the previous changes was not a typo, revert it.
2017-06-09 23:09:36 +10:00
ca815acd61
a-EQ: DSP bugfix
...
Previously there were large spurious spikes in the signal when
the bandwidth parameter was adjusted on a pure sine tone
for the peaking circuits. This has been *greatly* reduced if not
eliminated by fixing a typo in two of the equations.
2017-06-08 02:04:12 +10:00
Nil Geisweiller
a07ca8fa3e
Fix a-EQ when parameter changes are very slow
...
If the parameters change too slowly the filter may never get updated. Indeed,
in spite of v_f0, v_g or v_bw being updated, set_params may never be called,
thus v_filter never updated.
2017-06-06 14:44:19 +02:00
0b6e2d1e46
Improve a-delay to follow tempo-ramps & BPM changes
...
This is a bit of a hotfix, not a proper solution
2017-03-11 23:10:44 +01:00
8f2a5c01dd
fix a-reverb, cut tail on deactivate, plug memory-leak
2017-03-08 23:04:16 +01:00
2a7ad06e79
fix a-fluidsynth bank select (use MMA style, 14 bit MSB/LSB)
2017-01-31 10:44:07 +01:00
9a13a563d0
fix a-fluidsynth midnam bank select
2017-01-31 00:43:43 +01:00
9a46d593cb
a-fluidsynth process events even when no sf2 is loaded.
...
Keep track of program-changes, re-apply Bank/PGM once the
soundfont is loaded. fluidsynth itself keeps track of CCs.
2016-12-07 19:48:52 +01:00
2d37392f1a
a-fluid synth: label Reverb & Chorus sends.
...
Also globally enable Reverb + Chorus FX (so that sends work by default)
2016-12-06 22:56:04 +01:00
f26ed23fd9
a-fluid synth: list all bank/programs
2016-12-06 17:00:12 +01:00
9c20892c27
Turn a-fluidsynth into C++
2016-12-06 17:00:12 +01:00
8d8132aa3c
rough-in a-fluid synth midnam support
2016-12-06 17:00:12 +01:00
5f1d94a7b2
Protect a-comp's display/state against NaN/Inf.
2016-11-29 09:04:13 +01:00
0fe62a34da
protect a-delay again Inf, NaN, HUGE and stuff.
2016-11-29 08:41:10 +01:00
7b687d08a1
properly handle FS pitch-bend - closes #7140
2016-11-28 12:53:20 +01:00
c5d4900ea4
a-fluidsynth: fix off-by one. Assign all MIDI channels if possible
2016-10-29 19:57:43 +02:00
f52443e17e
Increase range of a-comp release time.
...
This facilitates ducking music for voice-overs w/o hold-time.
2016-10-15 21:27:29 +02:00
f6570bb507
Revert "add debug info to a-fluidsynth"
...
This reverts commit 6821f54817
.
2016-10-05 16:07:10 +02:00
6821f54817
add debug info to a-fluidsynth
2016-10-05 15:01:12 +02:00
7e09dc1aa6
fix LV2 State Flags for Atom:Path
...
state-restore does not set the same flag, so lilv_state_equals()
returns false even for identical states and a new state is saved regardless
actual fix also depends on http://dev.drobilla.net/ticket/1145
2016-09-21 03:34:43 +02:00
aca6e667a8
update a-plugins to use official lv2plug.in URI
2016-09-18 19:07:49 +02:00
0ff233d234
Update our MSVC project files to generate the most recent Ardour session file format (ver 5) rather than the older v3 format
2016-08-30 07:15:00 +01:00
ffb3e9bb21
fix lv2 ttl
2016-08-28 13:18:48 +02:00
c6ef3a75d3
backwards compatible a-comp stereo sidechain ports
2016-08-27 18:08:46 +02:00
f814e68e30
Prepare a-comp for click-free bypass/enable
2016-08-27 17:14:49 +02:00
d6952445ce
click-free a-delay bypass/enable
2016-08-27 16:59:15 +02:00
0fa1123f82
NO-OP clean up plugin ttl
2016-08-27 16:01:16 +02:00
62de4d0c31
add NaN/Inf protection now that bypass no longer de/activates
2016-08-27 14:10:51 +02:00
36776bafcd
click-free a-reverb bypass
2016-08-27 14:09:47 +02:00
935fd3b32f
Add automatable click-free bypass/enable feature to a-eq
2016-08-27 13:23:25 +02:00
aee5d24cfa
a reverb is a reverb is a reverb
2016-08-24 23:45:02 +02:00
427d9f888a
reduce initial fluidsynth load
2016-08-24 17:51:15 +02:00
953b8ac99f
prevent a unlikely race: concurrent restore() + work_response ()
2016-08-24 15:38:36 +02:00
f5602adfe8
tweak a-fluidsynth reinit strategy.
...
reset synth in offline thread, queue panic on deactivate to be
called in run() after first re-activate.
Initial activation does not warrant a panic.
2016-08-24 13:05:47 +02:00
aa349d3f8c
add support for reverb & chorus in a-fluidsynth
2016-08-24 05:33:18 +02:00
870cb19737
a-fluidsynth
2016-08-24 03:18:14 +02:00
6bf40e3a44
a-Reverb: Fixed bug with the reverb all pass filters causing bad sound
2016-08-18 00:41:43 +10:00
613ae0c110
Nobody expects the LV2 inquisition!
2016-08-13 14:51:57 +02:00
2b7a89ecff
prefix blessed scripted DSP plugins with a-*
2016-08-10 03:11:49 +02:00
dd88461942
clean up plugin ttls - always add semicolon for compatibility
2016-08-09 22:00:38 +02:00
8419c7b79c
initialize uninitialized variable
2016-07-28 13:28:38 +02:00
b648ad9cc7
a-Delay: Smooth transition on LPF changes and set max feedback 100
2016-07-20 21:17:51 +10:00
62cd4d43bf
a-Comp: Fix bug with DSP in the knee processing region
2016-07-20 20:10:46 +10:00
f8207524e9
a-Delay: Add feedback control 0 to 90 percent
2016-07-19 14:43:43 +10:00
f71fdd4143
clean up a-comp, remove old prototype UI
2016-07-14 21:41:16 +02:00
2b262dbfdd
fix a-eq interpolation
2016-07-14 20:44:47 +02:00