Robbert van der Helm
|
366deda83c
|
Add MIDI support to the sine example
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
fdfd1b01c2
|
Add a function for retrieving the next note event
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
0e67c61be0
|
Store timing along with the note events
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
02cf16e9c0
|
Accept incoming note events
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
51dace591d
|
Add an event bus depending on ACCEPTS_MIDI
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
aee3775c10
|
Add default implementations for most trait methods
Except for process()
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
74e0fa5964
|
Add defaults for some of the plugin constants
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
f69fdcef5f
|
Add another plugin constant for MIDI support
|
2022-02-04 15:17:42 +01:00 |
|
Robbert van der Helm
|
c1f435d909
|
Refer to the gain plugin in the Params trait
|
2022-02-03 17:05:38 +01:00 |
|
Robbert van der Helm
|
fc96bb4349
|
Fix channel map debug assertion
|
2022-02-03 17:03:33 +01:00 |
|
Robbert van der Helm
|
dfb73f6902
|
Mention the 6 character overflow limit for IDs
|
2022-02-03 17:02:42 +01:00 |
|
Robbert van der Helm
|
295ecc94ee
|
Shorten frequency parameter name
Since it would overflow otherwise.
|
2022-02-03 17:01:20 +01:00 |
|
Robbert van der Helm
|
10c306e035
|
Move example plugins into a subdirectory
|
2022-02-03 16:57:10 +01:00 |
|
Robbert van der Helm
|
30609c3ecd
|
Add an is_smoothing() check
|
2022-02-03 16:51:41 +01:00 |
|
Robbert van der Helm
|
82dfee9313
|
Document the FTZ flags in the process function
|
2022-02-03 16:22:32 +01:00 |
|
Robbert van der Helm
|
e642fb5ff8
|
Make sure FTZ is always enabled
|
2022-02-03 16:18:24 +01:00 |
|
Robbert van der Helm
|
dfedd7b2c4
|
Enable assert_no_alloc in debug builds
|
2022-02-03 15:58:00 +01:00 |
|
Robbert van der Helm
|
2ca54d220d
|
Add logarithmic smoothing
|
2022-02-02 23:00:17 +01:00 |
|
Robbert van der Helm
|
1ad477ee4f
|
Add smoothing tests
|
2022-02-02 22:34:29 +01:00 |
|
Robbert van der Helm
|
1c80744989
|
nih_debug_assert_neq -> nih_debug_assert_ne
|
2022-02-02 22:29:14 +01:00 |
|
Robbert van der Helm
|
da291175d1
|
Rename SmoothLinear to Linear
We'll rethink this when we get to sample accurate automation.
|
2022-02-02 22:00:00 +01:00 |
|
Robbert van der Helm
|
0ecec104fb
|
Completely reset smoothing on init or restore
|
2022-02-02 21:41:20 +01:00 |
|
Robbert van der Helm
|
f8eb0e4ea6
|
Make gain smoothing slower in examples
|
2022-02-02 21:35:18 +01:00 |
|
Robbert van der Helm
|
1336139a65
|
Update smoothers on init and state restore
Otherwise this would be filled with default values.
|
2022-02-02 21:33:20 +01:00 |
|
Robbert van der Helm
|
e30a72888a
|
Add an update_smoother() parameter method
|
2022-02-02 21:26:34 +01:00 |
|
Robbert van der Helm
|
ea7dc2ffa3
|
Implement smoothing for integers
|
2022-02-02 21:26:20 +01:00 |
|
Robbert van der Helm
|
8f89754ba5
|
Add simple linear parameter smoothing
|
2022-02-02 21:26:13 +01:00 |
|
Robbert van der Helm
|
fced4001c0
|
Access plain values using the method
Since we're also setting them using the method.
|
2022-02-02 20:39:04 +01:00 |
|
Robbert van der Helm
|
a42649b2de
|
Derive a Default instance for the Buffer
To make Clippy happy.
|
2022-02-02 20:37:06 +01:00 |
|
Robbert van der Helm
|
13369e4085
|
Reinitialize the plugin after restoring state
This lets you use the parameters to set fields on the plugin struct
during `initialize()`.
|
2022-02-02 15:39:55 +01:00 |
|
Robbert van der Helm
|
c982ad9599
|
Avoid duplicate state restores
|
2022-02-02 15:32:21 +01:00 |
|
Robbert van der Helm
|
c8cc6bd26b
|
Re-export all user facing includes
|
2022-02-02 15:16:10 +01:00 |
|
Robbert van der Helm
|
f44597df7c
|
Move the buffer adapter to its own module
|
2022-02-02 15:01:41 +01:00 |
|
Robbert van der Helm
|
69db1acce8
|
Propagate build errors in xtask bundle
|
2022-02-02 15:00:02 +01:00 |
|
Robbert van der Helm
|
048d69213e
|
Make the buffer own the output slices
This gets rid of a lot of lifetime casting and other unsoundness.
|
2022-02-02 14:41:35 +01:00 |
|
Robbert van der Helm
|
fbadfe3e12
|
Fix clippy lints
|
2022-02-02 13:02:28 +01:00 |
|
Robbert van der Helm
|
6cde9cea0e
|
Simplify spawn_unchecked lifetime transmute
|
2022-02-02 13:02:28 +01:00 |
|
Robbert van der Helm
|
58736f5cc8
|
Add a super unsafe channel buffer adapter
To avoid having to perform lifetime magic here, this buffer needs to own
the slices and be stored as part of the RwLock.
|
2022-02-02 13:02:28 +01:00 |
|
Robbert van der Helm
|
63e4a54d7c
|
Center skewed parameters around the skew center
It's a bit awkward and you can completely lose some parts of the range
if you don't do this.
|
2022-02-02 00:06:07 +01:00 |
|
Robbert van der Helm
|
1202b2b9d6
|
Update unimplemented features list
These things are now all implemented.
|
2022-02-01 23:39:13 +01:00 |
|
Robbert van der Helm
|
d5fde24854
|
Use skewed range for frequency parmater
|
2022-02-01 23:38:27 +01:00 |
|
Robbert van der Helm
|
7752ce6771
|
Add symmetrically and asymmetrically skewed ranges
This is super useful. I'm sure the symmetrical implementation can be
optimized a lot, but my math-fu was not strong enough today.
|
2022-02-01 23:37:28 +01:00 |
|
Robbert van der Helm
|
740868a10c
|
Move parameter ranges to their own module
This module was too difficult to navigate with parameter types + ranges
+ implementation details.
|
2022-02-01 21:06:13 +01:00 |
|
Robbert van der Helm
|
27bef6fbbc
|
Move the param trait up in the module
|
2022-02-01 21:02:58 +01:00 |
|
Robbert van der Helm
|
4aa85b43b4
|
Move parameter implementation details to a module
|
2022-02-01 21:01:28 +01:00 |
|
Robbert van der Helm
|
bc60dc35b6
|
Fix rustdoc references
|
2022-02-01 20:53:20 +01:00 |
|
Robbert van der Helm
|
6bb83061dd
|
Rename the params module to param
It's a heterogeneous module, and splitting the ranges to their own
module will be a bit weird otherwise.
|
2022-02-01 20:51:22 +01:00 |
|
Robbert van der Helm
|
31481c406b
|
Use Default::default() in the parameter examples
Makes it a bit easier to change between types if needed.
|
2022-02-01 20:15:33 +01:00 |
|
Robbert van der Helm
|
59b70eecae
|
Add a sine test tone generator
|
2022-02-01 19:56:28 +01:00 |
|
Robbert van der Helm
|
15e0f6f21a
|
Remove unnecessary import
I was going to add that set_parameter function in the next commit, but
that will need to wait a bit.
|
2022-02-01 19:54:35 +01:00 |
|