Robbert van der Helm
866b7660de
Add a function to parse a CLAP event
2022-10-01 02:00:05 +02:00
Robbert van der Helm
5c714a87d2
Add serialization structs for CLAP events
2022-10-01 01:34:34 +02:00
Robbert van der Helm
9e62d9a447
Add editor_disable_host_scaling support for CLAP
2022-10-01 00:38:17 +02:00
Robbert van der Helm
1b875ad286
Rename vst3_no_scaling to editor_disable_host_scaling
...
This will also affect CLAP plugins.
2022-10-01 00:37:58 +02:00
Robbert van der Helm
82840ab6df
Properly resize the CLAP editor window
2022-09-29 20:11:41 +02:00
Robbert van der Helm
4836546d08
Fully implement the CLAP GUI extension
2022-09-29 20:11:30 +02:00
Robbert van der Helm
d062e59ca2
Fix x11_window field type in set_parent struct
...
This needs to have the same size on all platforms, I didn't realize that
`clap_xwnd` used longs.
2022-09-29 20:04:19 +02:00
Robbert van der Helm
b5aaa02645
Add missing default cases
2022-09-29 20:01:05 +02:00
Robbert van der Helm
cd609fa90f
Implement the plugin side of the GUI functions
2022-09-29 20:01:05 +02:00
Robbert van der Helm
48a3c76fe6
Remove debug prints when opening VST2 editors
2022-09-29 19:57:31 +02:00
Robbert van der Helm
87a9ac75b9
Fully implement the host side GUI extension
2022-09-29 19:57:31 +02:00
Robbert van der Helm
dddcb84fd5
Implement the host side of the GUI functions
2022-09-29 19:57:31 +02:00
Robbert van der Helm
d5909728da
Remove unnecessary void value return
2022-09-29 19:57:31 +02:00
Robbert van der Helm
b4c8ba8ffb
Add logging for the CLAP GUI extension
2022-09-29 19:57:31 +02:00
Robbert van der Helm
6d50d0b22b
Add serialization structs for the GUI extension
2022-09-29 19:57:31 +02:00
Robbert van der Helm
f285805c57
Mention that event registry is not needed
...
With the current set of supported extensions
2022-09-28 16:01:39 +02:00
Robbert van der Helm
7305178654
Fully implement the state extension
2022-09-27 15:20:15 +02:00
Robbert van der Helm
225b5d7ef6
Add logging for the CLAP stream extension
2022-09-27 15:08:48 +02:00
Robbert van der Helm
9fa8aa034a
Add a size function to the stream wrapper
2022-09-27 15:08:48 +02:00
Robbert van der Helm
67c6fa1563
Add serialization structs for the state extension
2022-09-27 15:08:48 +02:00
Robbert van der Helm
5621e8bf08
Add a serialization wrapper for streams
2022-09-27 15:08:48 +02:00
Robbert van der Helm
95c10952a2
Mark CLAP vtable methods as protected
...
Since they only make sense when called from the vtable.
2022-09-27 13:38:34 +02:00
Robbert van der Helm
0f711eed2a
Remove unnecessary includes
2022-09-26 19:42:23 +02:00
Robbert van der Helm
6ea6b0ed33
Remove old comment
2022-09-26 19:42:23 +02:00
Robbert van der Helm
4ac0b60ca7
Fix typo
2022-09-26 19:42:23 +02:00
Robbert van der Helm
c7ea37309d
Implement the CLAP latency extension
2022-09-26 19:42:23 +02:00
Robbert van der Helm
3e0cd725a3
Document CLAP and VST3 logger method sections
2022-09-26 18:15:10 +02:00
Robbert van der Helm
2e851c4569
Reorder params::flush in logger
...
Since this has moved to the audio thread socket.
2022-09-26 18:15:10 +02:00
Robbert van der Helm
de028faf70
Fully implement the CLAP tail extension
...
Trivial extension, but this required us to be able to send audio thread
callbacks first.
2022-09-26 18:15:10 +02:00
Robbert van der Helm
53c9fbb376
Move supported extensions lists out of logger
...
Keeping this next to the supported extensions objects makes it easier to
maintain.
2022-09-26 17:43:55 +02:00
Robbert van der Helm
436efeae56
Fix thread local audio thread buffers
...
For CLAP and VST3, as mentioned in the last commit's changelog update.
2022-09-26 17:13:45 +02:00
Robbert van der Helm
ca218cb596
Increase default serialization buffer size
2022-09-26 17:05:28 +02:00
Robbert van der Helm
8bc61837c9
Move the flush request to the audio thread
2022-09-26 16:47:46 +02:00
Robbert van der Helm
214ba51010
Add audio thread callbacks
2022-09-26 16:47:46 +02:00
Robbert van der Helm
0d472dcd58
Add CLAP audio thread callback sockets
...
The initialization here is a bit funky and happens in lockstep to ensure
both sides are synchronized.
2022-09-26 16:28:30 +02:00
Robbert van der Helm
da97885062
Add logging for the CLAP tail extension
2022-09-25 19:38:17 +02:00
Robbert van der Helm
da3386494f
Rename CLAP audio thread sockets
...
So they're specifically for host->plugin control messages. We'll need
separate sockets for callbacks.
2022-09-25 17:15:50 +02:00
Robbert van der Helm
f3e41d19ef
Add a very minimal architecture entry for CLAP
2022-09-25 17:15:50 +02:00
Robbert van der Helm
bd40379cf0
Add serialization structs for CLAP tail extension
2022-09-25 17:15:50 +02:00
Robbert van der Helm
ca2e869ce2
Add a TODO for optimizing VST2 bridging
2022-09-25 15:05:59 +02:00
Robbert van der Helm
0f58f3409b
Fully implement the CLAP params extension
2022-09-25 14:55:16 +02:00
Robbert van der Helm
5732b45769
Add a regular strlcpy implementation
...
That also works for buffers without a compile time known size.
2022-09-23 20:51:29 +02:00
Robbert van der Helm
e0c260ba23
Rename the host extensions_ field
2022-09-23 20:34:51 +02:00
Robbert van der Helm
95be79adfe
Add missing host side note-ports extension query
2022-09-23 20:34:51 +02:00
Robbert van der Helm
f5fc2be377
Add logging for the params extension
2022-09-23 20:34:51 +02:00
Robbert van der Helm
b8eb8e62bc
Remove excess line breaks in yabridgectl status
2022-09-23 20:34:25 +02:00
Robbert van der Helm
01b46fb60a
[yabridgectl] Support $CLAP_PATH
2022-09-23 20:34:25 +02:00
Robbert van der Helm
4818bef537
Add serialization structs for parameters
2022-09-23 20:34:25 +02:00
Robbert van der Helm
e26025f7c6
Allocate shared memory audio buffers for CLAP
2022-09-15 19:12:29 +02:00
Robbert van der Helm
7f07d5f29f
Change audio SHM buffer offsets to be in bytes
...
CLAP allows mixed precision ports. For instance, the main IO ports can
be 32-bit only, while some CV ports allow 64-bit audio. The plugin only
knows the sample format it receives when the process call happens, so
we'll always need to allocate enough space for that to work.
2022-09-15 18:07:56 +02:00