ryanve / daw

feb
MIT License
1 stars 0 forks source link

What are your ideas/plans for this project? #1

Open mcanthony opened 8 years ago

mcanthony commented 8 years ago

I like a lot of your other works so I was curious what kind of plans you had for this project. I have been working for the past two years studying existing webaudio synths, dsp, and mir systems (as well as non-web based). I have collected a ton of good code, and written down a lot of ideas but have not left the planning phase quite yet. I am currently working on the visualization aspect in order to put together a proper spectrogram renderer and soon after I aim to add abilities to edit spectra visually with advanced image editing and processing techniques. I had to learn GLSL first, and also Halide (a DSL for producing optimized C/C++/GLSL code for image processing that produces amazing performance). The idea is to be able to extract individual sounds with ease and use patching/inpainting/poisson disc/etc leveraging audio feature extraction algorithms that utilize machine learning.

Halide will produce a PNaCl (Google Portable Native Client) code-base for the DSP code so this should give nearely the same performance as native C/C++ but is only supported on Blink (Chrome/Opera/NW.JS/Electron) based runtimes/browsers so there will also be an Emscripten generated ASM.JS fallback for other browsers. I am at least at first only targeting Chrome/NW.JS to keep things simple and supported for the prototype.

Other than all the crazy rendering and DSP code to be cross-compiled/ported I have amassed just about everything else I would need to construct proper UI for MIDI sequencing and a nice timeline based editor. My current work involves contributing to the https://github.com/hoch/WAAX/ (+ Spiral sub-projects) and https://github.com/webaudiomodules/ (NaCl ported synths) projects in order to get things up to par with what would be needed for pro audio.

If you have any interest in collaborating in any way (however big or small) with an exchange of ideas or whatever let me know as this is always a good motivator for me (if you have the time). The project is called http://github.com/mcanthony/OpenDAWN/ (Open Digital Audio Workstation Node). There is a tiny description on the project which outlines some of the higher level vision for the project (I will soon update it with a lot more information including what projects code and ideas will be derived from). I am trying to accomplish the impossible it seems sometimes but I really think this could work and produce a DAW with superior quality to most available in linux and even rival Cubase and the big-boys.

ryanve commented 8 years ago

Nice @mcanthony all very cool. I was thinking of some sort of api that would abstract some of the basics of the native apis and be a wrapper for combining sounds similar to jQuery's "write less do more" mentality. I don't have tons of time in the near future but yes I'm down to collaborate