1
0
Fork 0
Commit graph

402 commits

Author SHA1 Message Date
Robbert van der Helm
d027a6319f Add VoiceTerminated events
These need to be output by a plugin when using polyphonic
modulation (which is currently not yet supported by NIH-plug).
2022-07-04 19:31:40 +02:00
Robbert van der Helm
a2f8a9bebf Add voice ID fields for all non-MIDI note events
This will be useful when adding polyphonic modulation.
2022-07-04 18:31:59 +02:00
Robbert van der Helm
7cd7294b22 Make CLAP descriptions and special URLs optional
This closes #14.
2022-07-04 12:46:34 +02:00
Robbert van der Helm
5cbd8827e9 Update clap-sys with optional function pointers
None of these function pointers are allowed to be null, yet even the
official `clap-helpers` do this. This new `clap_call!()` macro asserts
that a pointer is non-null before calling it.
2022-07-04 00:07:06 +02:00
Robbert van der Helm
97baa9d55c Remove duplicate comment 2022-07-03 17:04:33 +02:00
Robbert van der Helm
c91b74355f Let rustfmt handle string wrapping 2022-07-03 16:52:38 +02:00
Robbert van der Helm
ed880f5297 Handle buffered CLAP stream reads and writes
`clap-validator` now tests this.
2022-07-03 16:51:15 +02:00
Robbert van der Helm
5e6e920418 Use BTreeMaps in the state
This ensures that the order is consistent when saving the same state
file multiple times.
2022-07-02 19:13:18 +02:00
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