Dawdreamer

Latest version: v0.8.0

Safety actively analyzes 638452 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

0.6.8

**Breaking changes:**
* PlaybackWarpProcessor now has an enum config system based on Rubber Band's [docs](https://breakfastquay.com/rubberband/code-doc/classRubberBand_1_1RubberBandStretcher.html). The code below will maintain backwards compatibility

python
rb_option = daw.PlaybackWarpProcessor.option
playback_warp_processor.set_options(
rb_option.OptionTransientsSmooth |
rb_option.OptionPitchHighQuality |
rb_option.OptionChannelsTogether
)


Non-breaking changes:
* Fixed a bug related to PlaybackWarpProcessor when warp is off.
* PyPI now includes Windows with Python 3.10

0.6.7

**Breaking change:**
`convert_to_sec=True` kwarg has been refactored into `beats=False` everywhere.

New features:
* PlaybackWarp Processor can now take audio of a different sample rate if you specify the rate as kwarg `sr`.
* `RenderEngine.render` now has a default kwarg `beats=False`. When True, the duration is measured in beats.

Bug fixes:
* Fix looping-related bad code in PlaybackWarp Processor. The tempo won't fall out of sync now.
* Fix `fopen` issue in Ableton Clip Info (too many file opens caused a crash).

Demo:
* New `examples/dj_mixing/dj.py` for DJ transitions. Start with one song at tempo A and fade to another song with tempo B.

0.6.6

**Versions 0.6.7 and above dropped `convert_to_sec=True` in favor of `beats=False`.**

BPM/PPQN new features:
* `load_midi` and `add_midi_note` now take `convert_to_sec` as a kwarg, which is True by default. This maintains backwards compatibility. When `convert_to_sec` is False, the notes are added according to their beats, so changes to the Engine's BPM will affect the timing.
* `load_midi` has a kwarg for `clear_previous`, which defaults to True, maintaining backwards compatibility.
* RenderEngine's `set_bpm` can now take a numpy array and an integer PPQN. For example, if the values in the array change every PPQN samples, then the tempo change will be "on the beat."
* Any parameter's `set_automation` now works with optional second PPQN rate argument.

Other features:
* RenderEngine has `remove_processor(name: str)`. If you really want to remove a processor (and break existing Python references to it), use this.

Bug fixes:
* Fix int cast overflow bug with playback warp processor

0.6.5

No breaking changes.
* Fix memory leaks (https://github.com/DBraun/DawDreamer/issues/1, https://github.com/DBraun/DawDreamer/issues/88). In general, engines and processors should not leak when created over and over again, **but some plugins will leak. Feel free to report them to me. TAL-NoiseMaker seems to leak. Serum does not.**
* Plugin Processor's `load_state()` has been improved. Under the hood, it creates a window to the plugin and doesn't show the window to the user. This makes the plugin work correctly (for example Spitfire LABs). (This might address specific plugins such as https://github.com/DBraun/DawDreamer/issues/67)

0.6.4

[PyPI](https://pypi.org/project/dawdreamer/) now has wheels for Linux x86_64 with Python 3.7, 3.8, 3.9, 3.10

Try it in a [Google Colab](https://colab.research.google.com/)!

0.6.3

**Quick update to v0.6.2:** Fix issue when overwriting files with Plugin Processor's `save_state(filepath: str)`

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.