Wish list - planned and not so planned features 2012-12-23
- Utilizing the AppCache mechanism so that the piano is available on the iPad when not connected to the internet. But still make sure that the latest version is downloaded whenever a connection is available.
- Implement support for, and editor experience for all relevant AudioNodes in the Web Audio APi. Especially:
- Implement support and editor for the WaveTable oscillator. (an oscillator where the complex harmonics are given as two Float32-arrays)
- Implement noise generator as a selectable "waveform" (v0.88)
- Arpeggio generator (request by Robert)
- An even more modular approach to sound synthesis. Possibly requiring a new Synth (Ju-106?)
- Multiple outputs per node
- Separation of concerns: Splitting the current source nodes (oscillators and audiobuffers) into trigger objects and pure triggerable audio nodes
- Attaching envelopes to trigger objects
- Be able to attach triggers to any audioparam
- Expression parser for triggers/envelopes with access to per-keypress variables like (f)requency, (v)elocity and current (t)ime
- Being able to define some audionodes as shared by all notes (things like reverb or noise generation)
- Sending and receiving sound settings per player in multiplayer mode.
- Automatic recovery from socket disconnects (for instance, after putting the iPad to sleep by closing the lid)
- Sending midi-ish messages to the pianoserver instead of the proprietary format used today. The pianoserver conceptually uses a MIDI-over-IRC-over-websockets protocol.
- Highscore list (request by Jeppan)
- Support for Web Midi API when it arrives in browsers (semi resolved in v0.90)
- Support for Android when Web Audio API arrives to the platform
- Support for Firefox when audible oscillators arrives to the nightly build
- Sound settings UI having a more synthish look and feel (v0.88)
- Bruhed aluminium knobs.
- Interacting with knobs by actually rotating them on multi-touch devices
- Being able to add and remove AudioNodes in the sound settings panel
- Make sure the UI looks good/ok in firefox when Web Audio support arrives on the platform.
- Support for en-US keyboard layout (request by Robert)
- Tranposition of keyboard bindings when piano keys are scrolled (request by Robert)
- Sustain pedal (request by NJ)