Robbert van der Helm
0599780030
Remove unnecessary reborrows
2022-07-01 15:50:16 +02:00
Robbert van der Helm
1d7cbe4c4d
Suppress unused_unit more locally
2022-07-01 14:58:31 +02:00
Robbert van der Helm
f309f39982
More defensively check for >0 inputs and outputs
...
Noticed this through a bug in clapval.
2022-06-29 01:32:39 +02:00
Robbert van der Helm
4247c229ec
Fix in-place pairs for output-only plugins
...
https://github.com/robbert-vdh/clapval reminded me of this.
2022-06-29 01:32:39 +02:00
Robbert van der Helm
05fd7fa075
Revert "Fix audio port in-place pair indices"
...
This reverts commit 791dc44650
.
This was actually correct, this should use stable indices instead of
list indices.
2022-06-27 18:33:13 +02:00
Robbert van der Helm
791dc44650
Fix audio port in-place pair indices
2022-06-27 18:22:40 +02:00
Robbert van der Helm
9fa305206c
Fix compilation on Windows
2022-06-26 23:25:21 +02:00
Robbert van der Helm
4b2435a791
Allow allocations during most panics
...
The panic logger is allowed to allocate now. If a panic message uses
string formatting then that may still trigger `assert_no_alloc`.
2022-06-26 23:13:35 +02:00
Robbert van der Helm
2d2ff23cc4
Remove old TODO about only logging in debug builds
2022-06-19 15:28:18 +02:00
Robbert van der Helm
a291e0dfb6
Always request flush when setting params from GUI
2022-06-17 18:28:15 +02:00
Brian Anderson
23947ec0b5
Dummmy -> Dummy
2022-06-15 23:28:07 -06:00
Robbert van der Helm
e891e1fdb7
Use JACK transport data for JACK standalone
2022-06-15 00:48:34 +02:00
Robbert van der Helm
4219acaf83
Sort of allow GUI-less standalones
...
There's no way to interact with them, but they'll just keep running and
be at least somewhat useful.
2022-06-15 00:25:37 +02:00
Robbert van der Helm
a4fa7e8e78
Initialize smoothers in the standalone
2022-06-15 00:18:44 +02:00
Robbert van der Helm
0b6be4de1c
Fully implement MIDI support in standalone wrapper
2022-06-15 00:10:27 +02:00
Robbert van der Helm
54f4b8a026
Read and write MIDI events in JACK standalone
...
The standalone itself does not yet pass these to the plugin.
2022-06-14 23:43:13 +02:00
Robbert van der Helm
66f5a0e7de
Move MIDI parsing from CLAP wrapper to NoteEvent
2022-06-14 22:59:40 +02:00
Robbert van der Helm
4e021dd0bb
Add input and output events to Backend trait
2022-06-14 22:56:25 +02:00
Robbert van der Helm
e967e04856
Add auto connecting for JACK MIDI ports
2022-06-14 21:43:26 +02:00
Robbert van der Helm
5cd4bb8de0
Register JACK MIDI input and output ports
2022-06-14 21:32:29 +02:00
Robbert van der Helm
c7f6aa15f8
Add a standalone cli arg to connect JACK inputs
2022-06-14 20:08:36 +02:00
Robbert van der Helm
f30fe0dbc2
Fix macro name
2022-06-14 19:12:28 +02:00
Robbert van der Helm
73d3281816
Log which backend is used in auto mode
2022-06-14 19:03:36 +02:00
Robbert van der Helm
7e0caa4c8d
Add audio support to the JACK backend
2022-06-14 18:59:54 +02:00
Robbert van der Helm
7216627a01
Create and connect JACK ports
2022-06-14 17:59:34 +02:00
Robbert van der Helm
10a55e1f00
Move standalone backends to their own modules
2022-06-14 17:31:45 +02:00
Robbert van der Helm
191d5383bd
Add boilerplate for an actual JACK implementation
2022-06-14 17:27:59 +02:00
Robbert van der Helm
e2099ec16c
Introduce an nih_error!() macro for fatal errors
2022-06-14 16:31:46 +02:00
Robbert van der Helm
3d5f44764e
Add boilerplate for a JACK backend
2022-06-14 16:27:35 +02:00
Robbert van der Helm
99fdc8975f
Add a backend type option to the standalone cli
2022-06-14 16:04:39 +02:00
Robbert van der Helm
d97831649e
Move standalone WrapperConfig to its own module
2022-06-14 15:52:31 +02:00
Robbert van der Helm
49e683e396
Add a cli for controlling the standalone settings
2022-06-14 15:44:42 +02:00
Robbert van der Helm
34fa78a313
Update for CLAP 1.0
2022-06-10 00:36:16 +02:00
Robbert van der Helm
89afa8bf00
Use nih_trace!() for lesser important messages
...
Like the missing CLAP extensions.
2022-06-07 14:18:56 +02:00
Robbert van der Helm
449adb8bfc
Add stable IDs for enum parameters
2022-06-03 22:22:36 +02:00
Robbert van der Helm
bfc472e49b
Introduce a new enum for CLAP features
...
Based on the new CLAP 0.26 clap-features.h.
2022-06-02 01:16:30 +02:00
Robbert van der Helm
ce9142186e
Remove the win32-dpi-aware CLAP feature on Windows
...
I don't think this is correct, since none of the GUI adapters are able
to communicate the detected DPI back to NIH-plug.
2022-06-02 00:54:15 +02:00
Robbert van der Helm
19f4fdadc5
Update for CLAP 0.26
2022-06-02 00:50:36 +02:00
Robbert van der Helm
7a4e7b187a
Clear auxiliary output buffers at start of process
...
This prevents uninitialized data from lingering if the plugin doesn't
write to these buffers. Seen this happen in Bitwig.
2022-05-29 14:07:13 +02:00
Robbert van der Helm
c56e1eab14
Implement custom port names for CLAP
2022-05-28 00:39:16 +02:00
Robbert van der Helm
90ee514fe4
Implement custom port names for VST3
2022-05-28 00:34:44 +02:00
Robbert van der Helm
4b760d1c19
Move auxiliary IO handling down in process()
2022-05-28 00:11:14 +02:00
Robbert van der Helm
0242cc5235
Also implement auxiliary IO for VST3
2022-05-28 00:10:16 +02:00
Robbert van der Helm
ee900f74c2
Support auxiliary inputs and outputs for CLAP
...
This does not yet work for VST3. You'll always get empty slices there.
2022-05-27 02:30:57 +02:00
Robbert van der Helm
b2e6bd5515
Create a separate InitContext
...
Only a couple of these functions would be needed during initialization.
In the next couple commits ProcessContext will get a way to access
auxiliary IO, so this really had to be separated.
2022-05-27 01:17:15 +02:00
Robbert van der Helm
7eee0b032e
Report at least a channel output bus for VST3
...
Bitwig just doesn't call the process function if plugins have no audio
IO.
2022-05-26 12:37:31 +02:00
Robbert van der Helm
4c54716cc2
Remove unnecessary pub specifier
2022-05-24 14:26:13 +02:00
Robbert van der Helm
f4f54029eb
Add a deactivation callback
...
This is the equivalent of initialize()
2022-05-24 13:05:06 +02:00
Robbert van der Helm
596b04af0a
Add preliminary support for auxiliary IO
...
The missing parts are allocating buffers for these busses, copying data
to those buffers, and adding methods to the ProcessContext to interact
with these inputs and outputs.
2022-05-23 17:13:49 +02:00
Robbert van der Helm
ad661c857c
Expose CLAP note ports extension for output-only
2022-05-22 23:16:49 +02:00