views:

222

answers:

5

My question is threefold

  1. What cool web-based examples have you seen that generate music dynamically by the user? Either based on samples with an interesting interface, by sound synthesis or similar methods. Example: http://acko.net/blog/javascript-audio-synthesis-with-html-5

  2. Has any serious web-based dynamical sound synthesis been done yet (e.g. generating sine waves dynamically and similar), or are there still inherent technological boundaries to do so?

  3. What are your general thoughts about generating music dynamically on the web? Is any form of more involved generation still too CPU-intense? Be it using Flash, JavaScript or audio-tag. (Sadly all my efforts have been far too CPU-intense, and not a very satisfying experience for the user.)

+1  A: 

Hi jacob, I created a drum machine in Silverlight: http://www.dontcodetired.com/live/thunder which runs better (i.e in time) on some hardware\browsers, and i've seen some examples of actual synthesis (oscillator wave gen) also in SL.

I guess the problem is audio synthesis (oscillators, filters, effects, etc) can be quite CPU intensive, as opposed to sample playback which is more ram\disk laden. If browsers\plug-ins could be given full access to low level hardware then I guess it would be more viable - but would introduce security concerns... As we scale out over more cores and all move to 64 bit I suppose will continue to be able to do more of this cpu intensive stuff in-browser.

Interesting question though...

Jason Roberts
+2  A: 

you should definitely check this out: http://blog.jactionscripters.com/2009/10/02/sion-released/

greetz

back2dos

back2dos
+1  A: 

While this isn't the primary point of novelty for it, I think it still qualifies...

JSNES is a NES emulator written entirely in JavaScript. What makes this interesting for this discussion is that it also emulates the sound, by communicating with a Flash applet to actually play back the sound.

On my machine (using Google Chrome for testing), I get noticeable lag in the sound, so I don't think it's really "ready for primetime" yet - I wouldn't consider it really playable with the issues I'm seeing, but I think this is a great sign that it's getting more and more feasible, and if you didn't have the overhead of emulating everything else about the system, I think it would be possible to get a perfectly decent result.

Michael Madsen
+3  A: 

If you've never seen Andre Michelle's Tone Matrix, prepare to be absorbed: http://lab.andre-michelle.com/tonematrix

Also, Sonoflash is apparently providing 100% generated sounds - all of their samples are basically AS3 code, manipulating sound data and then creating the sound. If I understand correctly. Check them out here: http://blog.digitalbackcountry.com/2009/09/sonoflash-easily-add-sound-to-your-flash-apps/

Myk
+4  A: 

Adding to the Flash examples: AudioTool

audiotool

George Profenza
also you have PixelBender at your disposal to help out with number crunching/signal processing. It's fast and runs in a separate thread
George Profenza
Having messed around with AudioTool I can say it's an amazing little application.
Damien Wilson
thanks a lot George! You do some amazing work yourself. I gave Myk the correct answer as he needs some more points. But I would have given both the correct answer else. Thanks!
jacob
no worries, that is a great answer, I couldn't just duplicate it :) It it helps, also have a look at Michael Jewell's audio effects library: http://pixelboob.com/2008/12/audio-effects-in-flash-10/ and the standing wave library: http://code.google.com/p/standingwave/ . Goodluck!
George Profenza
That's awesome!
Jason Roberts