dawdreamer


Namedawdreamer JSON
Version 0.8.0 PyPI version JSON
download
home_pagehttps://github.com/DBraun/DawDreamer
SummaryAn audio-processing Python library supporting core DAW features
upload_time2023-11-17 22:01:59
maintainer
docs_urlNone
authorDavid Braun
requires_python>=3.8
license
keywords audio music sound
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ```
  _____                       _____                                                  
 |  __ \                     |  __ \                                                 
 | |  | |   __ _  __      __ | |  | |  _ __    ___    __ _   _ __ ___     ___   _ __ 
 | |  | |  / _` | \ \ /\ / / | |  | | | '__|  / _ \  / _` | | '_ ` _ \   / _ \ | '__|
 | |__| | | (_| |  \ V  V /  | |__| | | |    |  __/ | (_| | | | | | | | |  __/ | |   
 |_____/   \__,_|   \_/\_/   |_____/  |_|     \___|  \__,_| |_| |_| |_|  \___| |_|   
                                                                                     
* * Digital Audio Workstation with Python * *
```

![Supported Platforms](https://img.shields.io/badge/platforms-macOS%20%7C%20Windows%20%7C%20Linux-green)
[![Test Badge](https://github.com/DBraun/DawDreamer/actions/workflows/all.yml/badge.svg)](https://github.com/DBraun/DawDreamer/actions/workflows/all.yml)
[![PyPI version fury.io](https://badge.fury.io/py/ansicolortags.svg)](https://pypi.python.org/pypi/dawdreamer/)
[![GPLv3 license](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://github.com/DBraun/DawDreamer/blob/main/LICENSE)
![GitHub Repo stars](https://img.shields.io/github/stars/DBraun/DawDreamer?style=social)
[![Generic badge](https://img.shields.io/badge/Documentation-passing-brightgreen.svg)](https://dirt.design/DawDreamer/)

# DawDreamer

Read the [introduction](https://arxiv.org/abs/2111.09931) to DawDreamer, which was presented as a Late-Breaking Demo at the [2021 ISMIR Conference](https://ismir2021.ismir.net/lbd/).

DawDreamer is an audio-processing Python framework supporting core [DAW](https://en.wikipedia.org/wiki/Digital_audio_workstation) features and beyond:
* Composing graphs of multi-channel audio processors
* Audio playback
* [VST instruments and effects](https://github.com/DBraun/DawDreamer/wiki/Plugin-Processor) (with UI editing and state loading/saving)
* [FAUST](https://github.com/DBraun/DawDreamer/wiki/Faust-Processor) effects and polyphonic instruments
* [Time-stretching and looping](https://github.com/DBraun/DawDreamer/wiki/Playback-Warp-Processor), optionally according to Ableton Live warp markers
* [Pitch-warping](https://github.com/DBraun/DawDreamer/wiki/Playback-Warp-Processor)
* Parameter automation at audio-rate and at pulses-per-quarter-note
* Parameter automation saving in absolute audio-rate time
* MIDI playback in absolute time and PPQN time
* MIDI file export in absolute time
* Rendering and saving multiple processors simultaneously
* Support for the [Faust Box](https://github.com/DBraun/DawDreamer/tree/main/examples/Box_API) and Signal APIs
* Transpiling Faust code to [JAX/Flax](https://github.com/DBraun/DawDreamer/tree/main/examples/Faust_to_JAX) and other target languages (C++, Rust, Wasm, etc.)
* Machine learning experiments with [QDax](https://github.com/DBraun/DawDreamer/tree/main/examples/Faust_to_QDax)
* [Multiprocessing support](https://github.com/DBraun/DawDreamer/tree/main/examples/multiprocessing_plugins)
* Full support on macOS, Windows, Linux, Google Colab, and Ubuntu Dockerfile

DawDreamer's foundation is [JUCE](https://github.com/julianstorer/JUCE), with a user-friendly Python interface thanks to [pybind11](https://github.com/pybind/pybind11). DawDreamer evolved from an earlier VSTi audio "renderer", [RenderMan](https://github.com/fedden/RenderMan).

## Installation

macOS requirements:
* 64-bit Python 3.9 or higher
* macOS 11.0 or higher

Windows requirements:
* 64-bit Python 3.8 or higher

Linux requirements:
* 64-bit Python 3.8 or higher

Install with [PyPI](https://pypi.org/project/dawdreamer/):

`pip install dawdreamer`

## API Documentation

[https://dirt.design/DawDreamer/](https://dirt.design/DawDreamer/dawdreamer.html)

## Basic Example

Using Faust, let's make a stereo sine-tone at 440 Hz and -6 dB. You can run this code as-is.

```python
import dawdreamer as daw
from scipy.io import wavfile
SAMPLE_RATE = 44100
engine = daw.RenderEngine(SAMPLE_RATE, 512)  # 512 block size
faust_processor = engine.make_faust_processor("faust")
faust_processor.set_dsp_string(
    """
    declare name "MySine";
    freq = hslider("freq", 440, 0, 20000, 0);
    gain = hslider("vol[unit:dB]", 0, -120, 20, 0) : ba.db2linear;
    process = freq : os.osc : _*gain <: si.bus(2);
    """
    )
print(faust_processor.get_parameters_description())
engine.load_graph([
                   (faust_processor, [])
])
faust_processor.set_parameter("/MySine/freq", 440.)  # 440 Hz
faust_processor.set_parameter("/MySine/vol", -6.)  # -6 dB volume

engine.set_bpm(120.)
engine.render(4., beats=True)  # render 4 beats.
audio = engine.get_audio()  # shaped (2, N samples)
wavfile.write('sine_demo.wav', SAMPLE_RATE, audio.transpose())

# Change settings and re-render
faust_processor.set_parameter("/MySine/freq", 880.)  # 880 Hz
engine.render(4., beats=True)
# and so on...
```

Next, let's make a graph with a VST instrument and effect. This graph will be simple, but you can make more complicated ones.

```python
import dawdreamer as daw
from scipy.io import wavfile
SAMPLE_RATE = 44100
INSTRUMENT_PATH = "path/to/instrument.dll"
EFFECT_PATH = "path/to/effect.dll"

engine = daw.RenderEngine(SAMPLE_RATE, 512)
engine.set_bpm(120.)

synth = engine.make_plugin_processor("synth", PLUGIN_PATH)
print('inputs:', synth.get_num_input_channels())
print('inputs:', synth.get_num_output_channels())
print(synth.get_parameters_description())

synth.set_parameter(7, .1234)

# (MIDI note, velocity, start sec, duration sec)
synth.add_midi_note(60, 100, 0.0, 2.)

effect = engine.make_plugin_processor("effect", EFFECT_PATH)

engine.load_graph([
  (synth, []),
  (effect, [synth.get_name()])  # effect needs 2 channels, and "synth" provides those 2.
  ])

engine.render(4.)  # render 4 seconds.
audio = engine.get_audio()
wavfile.write('synth_demo.wav', SAMPLE_RATE, audio.transpose())
synth.clear_midi()
# add midi again, render again, and so on...
```

Please refer to the [Wiki](https://github.com/DBraun/DawDreamer/wiki), [examples](https://github.com/DBraun/DawDreamer/tree/main/examples/), [API documentation](https://dirt.design/DawDreamer), and [tests](https://github.com/DBraun/DawDreamer/tree/main/tests). 

## License

DawDreamer is licensed under GPLv3 to make it easier to comply with all of the dependent projects. If you use DawDreamer, you must obey the licenses of [JUCE](https://github.com/juce-framework/JUCE/), [pybind11](https://github.com/pybind/pybind11/), [Libsamplerate](https://github.com/libsndfile/libsamplerate), [Rubber Band Library](https://github.com/breakfastquay/rubberband/), [Steinberg VST2/3](https://www.steinberg.net/vst-instruments/), and [FAUST](https://github.com/grame-cncm/faust).

## Thanks to contributors to the original [RenderMan](https://github.com/fedden/RenderMan)
* [fedden](https://github.com/fedden), RenderMan creator
* [jgefele](https://github.com/jgefele)
* [harritaylor](https://github.com/harritaylor)
* [cannoneyed](https://github.com/cannoneyed/)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/DBraun/DawDreamer",
    "name": "dawdreamer",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "audio music sound",
    "author": "David Braun",
    "author_email": "braun@ccrma.stanford.edu",
    "download_url": "",
    "platform": null,
    "description": "```\n  _____                       _____                                                  \n |  __ \\                     |  __ \\                                                 \n | |  | |   __ _  __      __ | |  | |  _ __    ___    __ _   _ __ ___     ___   _ __ \n | |  | |  / _` | \\ \\ /\\ / / | |  | | | '__|  / _ \\  / _` | | '_ ` _ \\   / _ \\ | '__|\n | |__| | | (_| |  \\ V  V /  | |__| | | |    |  __/ | (_| | | | | | | | |  __/ | |   \n |_____/   \\__,_|   \\_/\\_/   |_____/  |_|     \\___|  \\__,_| |_| |_| |_|  \\___| |_|   \n                                                                                     \n* * Digital Audio Workstation with Python * *\n```\n\n![Supported Platforms](https://img.shields.io/badge/platforms-macOS%20%7C%20Windows%20%7C%20Linux-green)\n[![Test Badge](https://github.com/DBraun/DawDreamer/actions/workflows/all.yml/badge.svg)](https://github.com/DBraun/DawDreamer/actions/workflows/all.yml)\n[![PyPI version fury.io](https://badge.fury.io/py/ansicolortags.svg)](https://pypi.python.org/pypi/dawdreamer/)\n[![GPLv3 license](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://github.com/DBraun/DawDreamer/blob/main/LICENSE)\n![GitHub Repo stars](https://img.shields.io/github/stars/DBraun/DawDreamer?style=social)\n[![Generic badge](https://img.shields.io/badge/Documentation-passing-brightgreen.svg)](https://dirt.design/DawDreamer/)\n\n# DawDreamer\n\nRead the [introduction](https://arxiv.org/abs/2111.09931) to DawDreamer, which was presented as a Late-Breaking Demo at the [2021 ISMIR Conference](https://ismir2021.ismir.net/lbd/).\n\nDawDreamer is an audio-processing Python framework supporting core [DAW](https://en.wikipedia.org/wiki/Digital_audio_workstation) features and beyond:\n* Composing graphs of multi-channel audio processors\n* Audio playback\n* [VST instruments and effects](https://github.com/DBraun/DawDreamer/wiki/Plugin-Processor) (with UI editing and state loading/saving)\n* [FAUST](https://github.com/DBraun/DawDreamer/wiki/Faust-Processor) effects and polyphonic instruments\n* [Time-stretching and looping](https://github.com/DBraun/DawDreamer/wiki/Playback-Warp-Processor), optionally according to Ableton Live warp markers\n* [Pitch-warping](https://github.com/DBraun/DawDreamer/wiki/Playback-Warp-Processor)\n* Parameter automation at audio-rate and at pulses-per-quarter-note\n* Parameter automation saving in absolute audio-rate time\n* MIDI playback in absolute time and PPQN time\n* MIDI file export in absolute time\n* Rendering and saving multiple processors simultaneously\n* Support for the [Faust Box](https://github.com/DBraun/DawDreamer/tree/main/examples/Box_API) and Signal APIs\n* Transpiling Faust code to [JAX/Flax](https://github.com/DBraun/DawDreamer/tree/main/examples/Faust_to_JAX) and other target languages (C++, Rust, Wasm, etc.)\n* Machine learning experiments with [QDax](https://github.com/DBraun/DawDreamer/tree/main/examples/Faust_to_QDax)\n* [Multiprocessing support](https://github.com/DBraun/DawDreamer/tree/main/examples/multiprocessing_plugins)\n* Full support on macOS, Windows, Linux, Google Colab, and Ubuntu Dockerfile\n\nDawDreamer's foundation is [JUCE](https://github.com/julianstorer/JUCE), with a user-friendly Python interface thanks to [pybind11](https://github.com/pybind/pybind11). DawDreamer evolved from an earlier VSTi audio \"renderer\", [RenderMan](https://github.com/fedden/RenderMan).\n\n## Installation\n\nmacOS requirements:\n* 64-bit Python 3.9 or higher\n* macOS 11.0 or higher\n\nWindows requirements:\n* 64-bit Python 3.8 or higher\n\nLinux requirements:\n* 64-bit Python 3.8 or higher\n\nInstall with [PyPI](https://pypi.org/project/dawdreamer/):\n\n`pip install dawdreamer`\n\n## API Documentation\n\n[https://dirt.design/DawDreamer/](https://dirt.design/DawDreamer/dawdreamer.html)\n\n## Basic Example\n\nUsing Faust, let's make a stereo sine-tone at 440 Hz and -6 dB. You can run this code as-is.\n\n```python\nimport dawdreamer as daw\nfrom scipy.io import wavfile\nSAMPLE_RATE = 44100\nengine = daw.RenderEngine(SAMPLE_RATE, 512)  # 512 block size\nfaust_processor = engine.make_faust_processor(\"faust\")\nfaust_processor.set_dsp_string(\n    \"\"\"\n    declare name \"MySine\";\n    freq = hslider(\"freq\", 440, 0, 20000, 0);\n    gain = hslider(\"vol[unit:dB]\", 0, -120, 20, 0) : ba.db2linear;\n    process = freq : os.osc : _*gain <: si.bus(2);\n    \"\"\"\n    )\nprint(faust_processor.get_parameters_description())\nengine.load_graph([\n                   (faust_processor, [])\n])\nfaust_processor.set_parameter(\"/MySine/freq\", 440.)  # 440 Hz\nfaust_processor.set_parameter(\"/MySine/vol\", -6.)  # -6 dB volume\n\nengine.set_bpm(120.)\nengine.render(4., beats=True)  # render 4 beats.\naudio = engine.get_audio()  # shaped (2, N samples)\nwavfile.write('sine_demo.wav', SAMPLE_RATE, audio.transpose())\n\n# Change settings and re-render\nfaust_processor.set_parameter(\"/MySine/freq\", 880.)  # 880 Hz\nengine.render(4., beats=True)\n# and so on...\n```\n\nNext, let's make a graph with a VST instrument and effect. This graph will be simple, but you can make more complicated ones.\n\n```python\nimport dawdreamer as daw\nfrom scipy.io import wavfile\nSAMPLE_RATE = 44100\nINSTRUMENT_PATH = \"path/to/instrument.dll\"\nEFFECT_PATH = \"path/to/effect.dll\"\n\nengine = daw.RenderEngine(SAMPLE_RATE, 512)\nengine.set_bpm(120.)\n\nsynth = engine.make_plugin_processor(\"synth\", PLUGIN_PATH)\nprint('inputs:', synth.get_num_input_channels())\nprint('inputs:', synth.get_num_output_channels())\nprint(synth.get_parameters_description())\n\nsynth.set_parameter(7, .1234)\n\n# (MIDI note, velocity, start sec, duration sec)\nsynth.add_midi_note(60, 100, 0.0, 2.)\n\neffect = engine.make_plugin_processor(\"effect\", EFFECT_PATH)\n\nengine.load_graph([\n  (synth, []),\n  (effect, [synth.get_name()])  # effect needs 2 channels, and \"synth\" provides those 2.\n  ])\n\nengine.render(4.)  # render 4 seconds.\naudio = engine.get_audio()\nwavfile.write('synth_demo.wav', SAMPLE_RATE, audio.transpose())\nsynth.clear_midi()\n# add midi again, render again, and so on...\n```\n\nPlease refer to the [Wiki](https://github.com/DBraun/DawDreamer/wiki), [examples](https://github.com/DBraun/DawDreamer/tree/main/examples/), [API documentation](https://dirt.design/DawDreamer), and [tests](https://github.com/DBraun/DawDreamer/tree/main/tests). \n\n## License\n\nDawDreamer is licensed under GPLv3 to make it easier to comply with all of the dependent projects. If you use DawDreamer, you must obey the licenses of [JUCE](https://github.com/juce-framework/JUCE/), [pybind11](https://github.com/pybind/pybind11/), [Libsamplerate](https://github.com/libsndfile/libsamplerate), [Rubber Band Library](https://github.com/breakfastquay/rubberband/), [Steinberg VST2/3](https://www.steinberg.net/vst-instruments/), and [FAUST](https://github.com/grame-cncm/faust).\n\n## Thanks to contributors to the original [RenderMan](https://github.com/fedden/RenderMan)\n* [fedden](https://github.com/fedden), RenderMan creator\n* [jgefele](https://github.com/jgefele)\n* [harritaylor](https://github.com/harritaylor)\n* [cannoneyed](https://github.com/cannoneyed/)\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "An audio-processing Python library supporting core DAW features",
    "version": "0.8.0",
    "project_urls": {
        "Documentation": "https://dirt.design/DawDreamer",
        "Homepage": "https://github.com/DBraun/DawDreamer",
        "Source": "https://github.com/DBraun/DawDreamer"
    },
    "split_keywords": [
        "audio",
        "music",
        "sound"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e9f65d0168aaced6481a100f81ae4d7540e86c1fa3fe1490edd36bcf389563e6",
                "md5": "0cdce9eca1f4a17c166fbdc1567269cf",
                "sha256": "0b23e7ae519d69ba82bfb1da44fc5250465d113a16ebfcc91bae50ac11f8627e"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "0cdce9eca1f4a17c166fbdc1567269cf",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 30490637,
            "upload_time": "2023-11-17T22:01:59",
            "upload_time_iso_8601": "2023-11-17T22:01:59.167676Z",
            "url": "https://files.pythonhosted.org/packages/e9/f6/5d0168aaced6481a100f81ae4d7540e86c1fa3fe1490edd36bcf389563e6/dawdreamer-0.8.0-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "54b3d92904f61c0d2aa7fec94ebd09c4db1e45a57b1f3dd37e951a553dd6a796",
                "md5": "89636b515d34d24199833367d8ffb102",
                "sha256": "048003d774a51824305026cb9c022cfc857596271ae13377ce15393b22ff6e25"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp310-cp310-macosx_11_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "89636b515d34d24199833367d8ffb102",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 32889320,
            "upload_time": "2023-11-17T22:02:03",
            "upload_time_iso_8601": "2023-11-17T22:02:03.439484Z",
            "url": "https://files.pythonhosted.org/packages/54/b3/d92904f61c0d2aa7fec94ebd09c4db1e45a57b1f3dd37e951a553dd6a796/dawdreamer-0.8.0-cp310-cp310-macosx_11_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9fbbd8bf3be210551b7b5cc8b7ca88ed17f5f28aef0ec80c30c8246a10b97a50",
                "md5": "d8b9ccaca63bf5c10ec1501cd860d453",
                "sha256": "03a1d7d09ebcc1a489d05593f1c86c45e0913344216bf6c77fe3dbac4ec9d7dc"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d8b9ccaca63bf5c10ec1501cd860d453",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 43596291,
            "upload_time": "2023-11-17T22:02:08",
            "upload_time_iso_8601": "2023-11-17T22:02:08.829305Z",
            "url": "https://files.pythonhosted.org/packages/9f/bb/d8bf3be210551b7b5cc8b7ca88ed17f5f28aef0ec80c30c8246a10b97a50/dawdreamer-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "03b7678215bedf991108389fc6f729778556a6ede9365796090ea2e3ee3d6d70",
                "md5": "4cd4f4642140ba862c147819875e7a38",
                "sha256": "2edc28062da72b56fad8c5b0ec8538bfa6d6ff739eb60c9c1b9dff3c6ae87e61"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "4cd4f4642140ba862c147819875e7a38",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 30782083,
            "upload_time": "2023-11-17T22:02:13",
            "upload_time_iso_8601": "2023-11-17T22:02:13.349503Z",
            "url": "https://files.pythonhosted.org/packages/03/b7/678215bedf991108389fc6f729778556a6ede9365796090ea2e3ee3d6d70/dawdreamer-0.8.0-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1b5f2c71a76db1b3b59ea096d02ab47f72cd4b20cc36822012adf9a4afe2f4b5",
                "md5": "cb8bef088508d3f51e7c089f19dd7698",
                "sha256": "bd36ff5051b647b420dd9d92baa037d29daef65cbb5877795f1f120d74abee68"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "cb8bef088508d3f51e7c089f19dd7698",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 30491202,
            "upload_time": "2023-11-17T22:02:17",
            "upload_time_iso_8601": "2023-11-17T22:02:17.462315Z",
            "url": "https://files.pythonhosted.org/packages/1b/5f/2c71a76db1b3b59ea096d02ab47f72cd4b20cc36822012adf9a4afe2f4b5/dawdreamer-0.8.0-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a8496ec3ed790c7973ce67a2caa5d2c9d448f6ef4abc34ea705be220bcba7456",
                "md5": "97916cd6ed6ec4de09662e9e300a7171",
                "sha256": "73f0dfdcba2210d58633331e8606d1aee8a3ade064891a8d4143a5679e1b0d30"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp311-cp311-macosx_11_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "97916cd6ed6ec4de09662e9e300a7171",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 32890222,
            "upload_time": "2023-11-17T22:02:21",
            "upload_time_iso_8601": "2023-11-17T22:02:21.541263Z",
            "url": "https://files.pythonhosted.org/packages/a8/49/6ec3ed790c7973ce67a2caa5d2c9d448f6ef4abc34ea705be220bcba7456/dawdreamer-0.8.0-cp311-cp311-macosx_11_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e4cb99afa50be7f00eae6238ee1f80d23df47398bb062b67bf6dc5ca68d3aa79",
                "md5": "a0a151accc0bc6be7f74867e07d4fa3f",
                "sha256": "667e952abe823774c464ad268505e1af337fff67d0ff0b10f106916e4547c70e"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a0a151accc0bc6be7f74867e07d4fa3f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 43597346,
            "upload_time": "2023-11-17T22:02:26",
            "upload_time_iso_8601": "2023-11-17T22:02:26.209729Z",
            "url": "https://files.pythonhosted.org/packages/e4/cb/99afa50be7f00eae6238ee1f80d23df47398bb062b67bf6dc5ca68d3aa79/dawdreamer-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eda94ea521e3eb1ac1fa6af63ab6624a044d20e40a1c49a5c4c797218f485173",
                "md5": "3b10bf05d689f1cee3e5c2f79c749e4d",
                "sha256": "484e05c29d37e3b3204cbb347d9249152a61d7a50544bd060f7fcc4999edee69"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "3b10bf05d689f1cee3e5c2f79c749e4d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 30783228,
            "upload_time": "2023-11-17T22:02:32",
            "upload_time_iso_8601": "2023-11-17T22:02:32.109772Z",
            "url": "https://files.pythonhosted.org/packages/ed/a9/4ea521e3eb1ac1fa6af63ab6624a044d20e40a1c49a5c4c797218f485173/dawdreamer-0.8.0-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ca07f2d974c65399518cd33463374f790eeeecf5b06dcf4c7dbef09ed1138552",
                "md5": "30b94cde7e01edc06511e81de34429f2",
                "sha256": "cac2ea15835bf147ce55ca39289118294ec157f43c519baed39c2bfa6ffae3b1"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "30b94cde7e01edc06511e81de34429f2",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 30495286,
            "upload_time": "2023-11-17T22:02:36",
            "upload_time_iso_8601": "2023-11-17T22:02:36.749864Z",
            "url": "https://files.pythonhosted.org/packages/ca/07/f2d974c65399518cd33463374f790eeeecf5b06dcf4c7dbef09ed1138552/dawdreamer-0.8.0-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eafb71477bef568f7072b6212b3811bd2fe1fc72a33dacd8476a5786e849cc62",
                "md5": "a87989045cda528c93eb4ed498739625",
                "sha256": "bb2f2f216704800357ee01871508c12c394cab4e96cc061a68d7655a95457feb"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp312-cp312-macosx_11_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a87989045cda528c93eb4ed498739625",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 32908606,
            "upload_time": "2023-11-17T22:02:40",
            "upload_time_iso_8601": "2023-11-17T22:02:40.606106Z",
            "url": "https://files.pythonhosted.org/packages/ea/fb/71477bef568f7072b6212b3811bd2fe1fc72a33dacd8476a5786e849cc62/dawdreamer-0.8.0-cp312-cp312-macosx_11_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c8204d0fa7a6ae22b3ab070fae64ed67e15fde15214a915574a7f520f30f3d56",
                "md5": "6e815107aa56d4c08a5c5bd576c6d187",
                "sha256": "e1774e9001d2b1bbc408bfff40088c2ec6ea0ea234e8810881fdafb3cd7e12e6"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6e815107aa56d4c08a5c5bd576c6d187",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 43595787,
            "upload_time": "2023-11-17T22:02:44",
            "upload_time_iso_8601": "2023-11-17T22:02:44.955214Z",
            "url": "https://files.pythonhosted.org/packages/c8/20/4d0fa7a6ae22b3ab070fae64ed67e15fde15214a915574a7f520f30f3d56/dawdreamer-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "950cc51dc573b8c32374b4d69e6b9d1744cb3ae8633d9f3270476f905fa03f8d",
                "md5": "a2c40a046e45765c6baf835fd9c776c9",
                "sha256": "779eea2f957381b0890dfa35550af15b955a2cd0bddf34859eb857668243d118"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a2c40a046e45765c6baf835fd9c776c9",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 30781404,
            "upload_time": "2023-11-17T22:02:50",
            "upload_time_iso_8601": "2023-11-17T22:02:50.913513Z",
            "url": "https://files.pythonhosted.org/packages/95/0c/c51dc573b8c32374b4d69e6b9d1744cb3ae8633d9f3270476f905fa03f8d/dawdreamer-0.8.0-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7185365ba653e731c207643242344bde0ec0fbf0a1496a5607baca56e9c5825f",
                "md5": "67b255e85fae9decc64acf76ecc6e9d2",
                "sha256": "5e34842665d46b10ac2b3971ab17f3fd9af67b51411e23768a9d91497948fb5f"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "67b255e85fae9decc64acf76ecc6e9d2",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 43595603,
            "upload_time": "2023-11-17T22:02:56",
            "upload_time_iso_8601": "2023-11-17T22:02:56.798903Z",
            "url": "https://files.pythonhosted.org/packages/71/85/365ba653e731c207643242344bde0ec0fbf0a1496a5607baca56e9c5825f/dawdreamer-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eb4d22760d5e664b16d9068a778762b6d47f718e357452941fdc7a072bf45cf6",
                "md5": "b16afdd27ce7a991cbf7028c3a0afadf",
                "sha256": "a076e6ac9aa7f3cf6a0df55586250a20d9a64bf4037bbc1750df8db755eaf9d4"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "b16afdd27ce7a991cbf7028c3a0afadf",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 30781737,
            "upload_time": "2023-11-17T22:03:01",
            "upload_time_iso_8601": "2023-11-17T22:03:01.524658Z",
            "url": "https://files.pythonhosted.org/packages/eb/4d/22760d5e664b16d9068a778762b6d47f718e357452941fdc7a072bf45cf6/dawdreamer-0.8.0-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "de8e123600f7c03b9d9144a784c96da105fd8db80e9d207f91c772064f657207",
                "md5": "c59de7e1a4e9a1f9ed63f79733c0159c",
                "sha256": "ee37a92fdf2ec067dc59a298d59f897906842ff40a635853ea24329ad36beda3"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "c59de7e1a4e9a1f9ed63f79733c0159c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 30491434,
            "upload_time": "2023-11-17T22:03:05",
            "upload_time_iso_8601": "2023-11-17T22:03:05.390629Z",
            "url": "https://files.pythonhosted.org/packages/de/8e/123600f7c03b9d9144a784c96da105fd8db80e9d207f91c772064f657207/dawdreamer-0.8.0-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2626f125b8d2f1717db81ef0664d4dc1c3c37124ad4fe6a3b07161c4481a0be0",
                "md5": "2e1acef43e731dda88d551532975b349",
                "sha256": "ae9040d63def8335ed60e0b66cb27a2ce3985c6e1f7224793aa5bd04a59862ec"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp39-cp39-macosx_11_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2e1acef43e731dda88d551532975b349",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 32888987,
            "upload_time": "2023-11-17T22:03:09",
            "upload_time_iso_8601": "2023-11-17T22:03:09.470711Z",
            "url": "https://files.pythonhosted.org/packages/26/26/f125b8d2f1717db81ef0664d4dc1c3c37124ad4fe6a3b07161c4481a0be0/dawdreamer-0.8.0-cp39-cp39-macosx_11_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "07068937d84bceb39271fc66a217c5e90c62bb6e29b19540b116d0560e67ef90",
                "md5": "d147feb9a925767a0afb4f4e676331c3",
                "sha256": "33ed6ea58fe75c76b7a7b23e2aafde6e9f86629be861a83f200dd43f69cafcf5"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d147feb9a925767a0afb4f4e676331c3",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 43596689,
            "upload_time": "2023-11-17T22:03:14",
            "upload_time_iso_8601": "2023-11-17T22:03:14.313104Z",
            "url": "https://files.pythonhosted.org/packages/07/06/8937d84bceb39271fc66a217c5e90c62bb6e29b19540b116d0560e67ef90/dawdreamer-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d4b270d6f661d9b627568232bd5d9b4668c806fc52141dcd4f7db62d315925a1",
                "md5": "d5802aab78d2716690b4578e42203f6b",
                "sha256": "4a3d0f1a3e0a1c7d35f61fbbda727695ac4cc04625878d84e34ee7b907a96976"
            },
            "downloads": -1,
            "filename": "dawdreamer-0.8.0-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "d5802aab78d2716690b4578e42203f6b",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 30817903,
            "upload_time": "2023-11-17T22:03:20",
            "upload_time_iso_8601": "2023-11-17T22:03:20.243897Z",
            "url": "https://files.pythonhosted.org/packages/d4/b2/70d6f661d9b627568232bd5d9b4668c806fc52141dcd4f7db62d315925a1/dawdreamer-0.8.0-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-17 22:01:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "DBraun",
    "github_project": "DawDreamer",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "dawdreamer"
}
        
Elapsed time: 0.13932s