Robbert van der Helm
4fb67a720b
Add a todo for fallback DPI scale detection
2022-04-27 19:26:39 +02:00
Robbert van der Helm
b89b4dfbb2
Add a .previous_value() method to the smoothers
2022-04-27 17:43:40 +02:00
Robbert van der Helm
6185909ddf
Also safeguard against zero channel counts in CLAP
2022-04-27 17:06:19 +02:00
Robbert van der Helm
21e28fdca2
Handle hosts providing zero output channels
2022-04-27 16:52:30 +02:00
Robbert van der Helm
afde489bbf
Add a fixme for REAPER's broken bypass handling
2022-04-27 16:45:34 +02:00
Robbert van der Helm
76e7f67f3a
Add missing backtick
2022-04-27 15:16:52 +02:00
Robbert van der Helm
bb3175f68e
Return -> Returns at the start of a docstring
...
The imperative tense doesn't make any sense when the function is a mere
getter and doesn't actually perform a nontrivial task.
2022-04-26 19:39:51 +02:00
Robbert van der Helm
abe5a12461
Add a nih_dbg!() macro analog for dbg!()
2022-04-26 15:43:24 +02:00
Robbert van der Helm
dedbfebb71
Add todos about potential duplicate reset calls
2022-04-26 14:15:57 +02:00
Robbert van der Helm
4779991edf
Also move reset() call to process start for CLAP
...
So the behavior is consistent for CLAP and VST3.
2022-04-26 14:14:12 +02:00
Robbert van der Helm
4ac0c40812
Reset last processing status for CLAP on start
...
Just like we're doing in the VST3 wrapper.
2022-04-26 14:10:00 +02:00
Robbert van der Helm
582ab50e58
Move VST3 Plugin::reset() call to set_processing()
...
This lets the host reset buffers the intended way.
2022-04-26 13:42:32 +02:00
Robbert van der Helm
f855a60c57
Fix rustdoc link in Plugin::reset()
2022-04-26 13:37:53 +02:00
Robbert van der Helm
7c5aa9069b
Simplify lifetime bounds
2022-04-24 20:03:30 +02:00
Robbert van der Helm
04c5780e4a
Implement state saving/loading for standalone
2022-04-24 19:46:51 +02:00
Robbert van der Helm
566095802c
Decouple state functions from CLAP/VST3 wrapper
...
This should also be usable with a plain `params` object, since we don't
need hashes in the standalone wrapper.
2022-04-24 19:46:07 +02:00
Robbert van der Helm
9acd312768
Parmaeters are not real, they can't hurt you
2022-04-24 19:46:07 +02:00
Robbert van der Helm
8714310468
Silence dead code warnings in standalone wrapper
...
These were kept in as a reminder, but since standalone has been merged
into master these should be silenced as there are relevant TODOs for the
missing features in place already.
2022-04-24 18:18:11 +02:00
Robbert van der Helm
084d34fe5c
Set up the logger for the standalone target
2022-04-24 15:50:17 +02:00
Robbert van der Helm
60593e7cc3
Close standalone when process returns an error
...
For this to work the resize mutex has been replaced with a channel for
sending tasks.
2022-04-24 15:48:42 +02:00
Robbert van der Helm
5d481e59f1
Call the process function in the standalone target
...
Although there's no functional backend yet.
2022-04-24 15:48:42 +02:00
Robbert van der Helm
ae24ed4c4d
Move standalone audio thread to a function
2022-04-24 15:48:42 +02:00
Robbert van der Helm
19d4b73039
Implement parameter changes for standalone target
...
Changing parameters from an editor now works just like in the other
targets.
2022-04-24 15:48:42 +02:00
Robbert van der Helm
9e40ec11fe
Print a message about IO being unimplemented
2022-04-24 15:48:42 +02:00
Robbert van der Helm
8cb763246b
Add an audio thread for the standalone target
2022-04-24 15:48:42 +02:00
Robbert van der Helm
81e56dd018
Abstract the IO backend for the standalone wrapper
2022-04-24 15:48:42 +02:00
Robbert van der Helm
8ba60eeab9
Implement resizing for standalone editor window
2022-04-24 15:48:42 +02:00
Robbert van der Helm
da86d1c6b1
Open a basic baseview window for standalone target
2022-04-24 15:48:41 +02:00
Robbert van der Helm
6c84fec09e
Add a (not yet functional) standalone run function
2022-04-24 15:48:05 +02:00
Robbert van der Helm
f838062d72
Don't use an Arc for the CLAP editor
2022-04-24 15:48:05 +02:00
Robbert van der Helm
e90bacffb5
Print initialization errors in standalone
2022-04-24 15:48:05 +02:00
Robbert van der Helm
261594a478
Initialize the standalone target
2022-04-24 15:48:05 +02:00
Robbert van der Helm
cf3745a4e1
Somewhat clarify initialize_block_smoothers()
...
This function is meant to be called by the plugin itself, it only lives
in the plugin trait to make using it more convenient.
2022-04-24 15:48:05 +02:00
Robbert van der Helm
42548ef5d1
Update standalone target todos
2022-04-24 15:48:05 +02:00
Robbert van der Helm
96ec1da037
Export the standalone target for gain_gui_vizia
2022-04-24 15:48:05 +02:00
Robbert van der Helm
f3db4a9ed0
Add a (not yet functional) standalone exporter
2022-04-24 15:48:05 +02:00
Robbert van der Helm
532ffca768
Permit allocations in debug and tracing messages
...
Otherwise debugging becomes a lot more difficult when using the
assert_no_alloc feature.
2022-04-24 15:43:23 +02:00
Robbert van der Helm
f895a27136
Simplify known VST3 note expression match
2022-04-24 15:31:02 +02:00
Robbert van der Helm
54bab5ff6d
Add an nih_trace!() macro
2022-04-24 15:30:38 +02:00
Robbert van der Helm
3264bee810
Include locations in assertion failure messages
2022-04-24 15:27:59 +02:00
Robbert van der Helm
015c554d79
Register the loggers for VST3 and CLAP plugins
2022-04-24 15:24:35 +02:00
Robbert van der Helm
5ae0bee3ee
Use the new logger for the debug macros
2022-04-24 15:20:25 +02:00
Robbert van der Helm
88260c55c7
Log on lower verbosity in release builds
...
This will also strip away information.
2022-04-24 15:08:55 +02:00
Robbert van der Helm
3b0291b4f5
Add function for setting up file and windbg logs
...
And also writing panics to those logs.
2022-04-24 15:08:48 +02:00
Robbert van der Helm
a79099f573
Work around Bitwig VST3 note expressions bug
...
Bitwig will only send these note expression events if the plugin claims
to support at least one custom note expression type, and if it returns
`kResultOk` on `INoteExpressionController::get_note_expression_info()`
when the expression ID is equal to the note expression type (even though
these are out of range, since this index argument is supposed to be a
linear index from `0..count`).
2022-04-23 15:00:30 +02:00
Robbert van der Helm
3361c4454b
Define constants for VST3 note expression types
2022-04-23 14:49:19 +02:00
Robbert van der Helm
83f9ce3608
Add a todo for a standalone target
2022-04-21 21:30:04 +02:00
Robbert van der Helm
b88707769a
Add a way to find out the current plugin API
2022-04-21 21:27:36 +02:00
Robbert van der Helm
2bc77ed691
Work around vst3-sys not allowing #[cfg()] fields
2022-04-20 20:44:07 +02:00
Robbert van der Helm
6ae05eb01b
Log assertion failure if a VST3 resize is denied
2022-04-20 20:35:44 +02:00