-
Notifications
You must be signed in to change notification settings - Fork 68
Release Notes
David Braun edited this page Apr 20, 2022
·
6 revisions
New Plugin Processor features:
open_editor()
load_state(filepath: str)
save_state(filepath: str)
can_set_bus(inputs: int, outputs: int)
set_bus(inputs: int, outputs: int)
See tests/test_plugins.py
for more examples.
Non-breaking changes to Playback Warp Processor:
- Fix issue with when warping is disabled (close #81)
- Add new function for resetting warp markers to a steady BPM
reset_warp_markers(bpm: float)
- Add new function for setting warp markers to a 2D array (
.warp_markers
property) (close #73) - See
tests/test_playbackwarp_processor.py
for more examples.
Breaking Changes:
- Previously we encouraged using
assert
statements in conjunction with various functions such asassert engine.load_graph(graph)
. This is now discouraged because these functions that previously returned bools will now throw errors when relevant. It is up to you to catch the errors withtry/except
blocks. The benefit is that you are no longer burdened with writingassert
all over.
Non-breaking changes:
- Fix bug in how Faust processor handle MIDI loaded from files.
- Fix bug in Add Processor's number of output channels. It will always be stereo now.
- Add keyword arg
all_events
toload_midi
for Plugin Processor. Default is True for backwards compatibility. - Add Faust Processor property
faust_libraries_path
to specify where user's.lib
files are. - Add Faust property for release length to avoid false-positive voice stealing warnings.
- Revise Render Engine graph construction to give warning rather than error when too many signals are connected to some other node.
- Upgrade JUCE, Faust and pybind11
- Multichannel support for VSTs, Faust, and other applicable processors
-
- try
synth.get_num_input_channels()
andsynth.get_num_output_channels()
- try
- Better macOS support for all CPU types (try
pip install dawdreamer
again!)
- Faust code can now use the
soundfile
primitive. Numpy audio can be passed from Python to Faust with theset_soundfiles
method.
-
[Breaking Change] The Plugin Processor no longer has the method
set_automation(str, np.array)
. It has been changed toset_automation(int, np.array)
. We can't rely on plugins having unique names, so we must distinguish them by their indices.
- Add Faust Processor.
- Remove JUCE from global namespace.
- Add Linux build (thanks @guillaumephd)
- Add parameter automation feature.
- First release of DawDreamer.