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
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
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
bd40379cf0
Add serialization structs for CLAP tail extension
2022-09-25 17:15:50 +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
f5fc2be377
Add logging for the params extension
2022-09-23 20:34:51 +02:00
Robbert van der Helm
4818bef537
Add serialization structs for parameters
2022-09-23 20:34:25 +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
Robbert van der Helm
d5f4d563d4
Implement CLAP note ports extension
2022-09-13 18:20:33 +02:00
Robbert van der Helm
4f514a82ff
Add logging for CLAP note ports extension structs
2022-09-13 18:07:14 +02:00
Robbert van der Helm
1e6ff797a5
Add serialization structs for note ports extension
2022-09-13 16:58:38 +02:00
Robbert van der Helm
4dbd57d47c
Add logging for CLAP extension queries
2022-09-13 14:54:40 +02:00
Robbert van der Helm
a6fc745491
Remove unnecessary conditional from VST3 query log
2022-09-13 14:46:42 +02:00
Robbert van der Helm
c061f7b475
Mark audio ports extension as done
2022-09-13 14:34:48 +02:00
Robbert van der Helm
47a0fe984c
Fix prefixes in VST3/CLAP log requests
2022-09-12 20:42:45 +02:00
Robbert van der Helm
2a2831af96
Properly format is_input boolean in logs
2022-09-12 20:39:22 +02:00
Robbert van der Helm
31fdf9c3d8
Add a way to reconstruct audio port info
2022-09-12 20:11:19 +02:00
Robbert van der Helm
b2b01b5447
Add a strlcpy-like function for buffers
2022-09-12 20:11:06 +02:00
Robbert van der Helm
ec5b02815d
Use an enum for the audio port type
...
Otherwise we can't provide a static lifetime string pointer in the info
struct.
2022-09-12 20:11:06 +02:00
Robbert van der Helm
51edef4427
Deduplicate CLAP extension support queries
...
They're only queried once now and the booleans are derived from the
stored pointers.
2022-09-12 19:14:39 +02:00
Robbert van der Helm
d2cbc2f2ab
Add logging for audio ports messages
2022-09-12 19:14:39 +02:00
Robbert van der Helm
65658d3df4
Add serialization structs for audio ports
2022-09-12 19:14:35 +02:00
Robbert van der Helm
fc43a0f012
Rename PrimitiveWrapper to PrimitiveResponse
2022-09-12 17:31:02 +02:00
Robbert van der Helm
22e0fee244
Move CLAP version serialization to version.h
2022-09-12 17:26:14 +02:00
Robbert van der Helm
66350b7ec8
Update CLAP API support document
2022-09-12 16:56:32 +02:00
Robbert van der Helm
3ebccdb65b
Detect and log support for audio-ports
2022-09-12 16:53:59 +02:00
Robbert van der Helm
0854deeae2
Silence spurious GCC warning in std::variant
2022-09-12 16:50:04 +02:00
Robbert van der Helm
833df917a7
Work around another spurious GCC warning
2022-09-12 16:22:28 +02:00
Robbert van der Helm
ee3763fe49
Log instance ID in CLAP callback request logging
2022-09-12 16:19:40 +02:00