Difference between revisions of "Dev:SynthJS"

From LQ's wiki
Jump to: navigation, search
(Created page with "==SynthJS== Category:Developer diary")
 
(Initial)
Line 1: Line 1:
 
==SynthJS==
 
==SynthJS==
 +
SynthJS is an experiment in HTML5 audio. Currently it's built on top of libraries like Timbre.js and Music.js, with Backbone.js for models and jQuery for the DOM, but this may well change since this is very early in its development.
 +
 +
===Goal===
 +
SynthJS is an application to let users to quickly synthesize their favorite tune within the browser with little to no musical knowledge, and let them turn their new creation into a rhythm game. I want to build something that people can both use to do something worthwhile ''and'' play (if they want to), and the interesting thing about it is they get to play with their own creation; the application is a constant but their experience is as individual as they want to make it.
 +
 +
I've had this idea of a music synthesizer / rhythm game for a while, but I wasn't confident enough in execution (JavaScript, mainly) to start it yet, plus I'd had thought there would be something like this out there already. There's tons of HTML5 audio projects out there - [http://techslides.com/html5-web-audio-api-demos-and-libraries/ this article] lists more than a few, but I couldn't find anything like what I wanted to make (SynthJS). So, I thought I might as well start now and throw myself into the deep end and see how far I can take the idea and learn a few things along the way, <sub>''hopefully''</sub> <sub>(lol)</sub>
 +
 +
===Roadmap===
 +
The first phase is to get the synthesizer to a reasonable state as that's the original core idea. If I don't run into performance or programming brick walls then I'll start looking at serializing the data (should be straightforward) and making a compatible rhythm game out of it. Getting SynthJS to output audio files is possible (there's [http://plucked.de/ this project] doing it already), but not a priority.
 +
 +
===Similar projects===
 +
*Theres loads of HTML audio stuff going on. I'll list the interesting ones here when I get time.
 +
 +
===Design considerations===
 +
*//TODO
 +
 +
==Diary==
  
  
 
[[Category:Developer diary]]
 
[[Category:Developer diary]]

Revision as of 21:26, 4 February 2014

SynthJS

SynthJS is an experiment in HTML5 audio. Currently it's built on top of libraries like Timbre.js and Music.js, with Backbone.js for models and jQuery for the DOM, but this may well change since this is very early in its development.

Goal

SynthJS is an application to let users to quickly synthesize their favorite tune within the browser with little to no musical knowledge, and let them turn their new creation into a rhythm game. I want to build something that people can both use to do something worthwhile and play (if they want to), and the interesting thing about it is they get to play with their own creation; the application is a constant but their experience is as individual as they want to make it.

I've had this idea of a music synthesizer / rhythm game for a while, but I wasn't confident enough in execution (JavaScript, mainly) to start it yet, plus I'd had thought there would be something like this out there already. There's tons of HTML5 audio projects out there - this article lists more than a few, but I couldn't find anything like what I wanted to make (SynthJS). So, I thought I might as well start now and throw myself into the deep end and see how far I can take the idea and learn a few things along the way, hopefully (lol)

Roadmap

The first phase is to get the synthesizer to a reasonable state as that's the original core idea. If I don't run into performance or programming brick walls then I'll start looking at serializing the data (should be straightforward) and making a compatible rhythm game out of it. Getting SynthJS to output audio files is possible (there's this project doing it already), but not a priority.

Similar projects

  • Theres loads of HTML audio stuff going on. I'll list the interesting ones here when I get time.

Design considerations

  • //TODO

Diary