WebSID

All eyes on the browser

Having been tempted to test the WebAudio API's capabilities beyond my initial WebAudio experiment, this experiment is built upon parts of the audio engine I created for Android's MikroWave by porting the C++ code to JavaScript so it can run inside a web browser.

A very peculiar synth...

Rather than creating a "new" synthesizer, this experiment pays homage to the Commodore 64's SID chip, a synthesis chip with limitations that the musical programmers overcame in clever ways to create the most awe-inspiring sounds.

That doesn't ring a bell ?

Let's put it this way: that rippling arpeggio sound (a fast note sequence) that is eternally linked to old-school video game sounds ? It was pioneered by the SID.

As the chip could only play three channels of audio simultaneously, chords were mostly outlined by playing their notes in rapid succession in sequence, leaving the two remaining channels free for drum and bass sounds. And thus the rules for chiptune were defined.

All eyes on Chrome

WebSID is an official Chrome Experiment and is also freely available for offline use in the Chrome Web Store.

Don't let the focus on Chrome fool you, WebSID works just fine on any half decent modern browser ( Safari, Firefox, Edge... ).

For more details regarding this project, you can view the dedicated case page.

Addendum:

By popular request, the WebSID project has been improved since it's first release. After the initial experiment has been posted online, several features have been added since:

  • Sequencer (including metronome) added
  • Ability to record and overlay recordings
  • Save and restore songs on your device
  • Share your songs online with friends
  • Offline support: play WebSID without an active internet connection
  • Play WebSID using an attached keyboard by using Web MIDI (Chrome only)

 

WebSID in action

WebSID can run directly on any modern browser and offers:

  • Offline support
  • Full mobile support
  • Support for recording and sharing songs
  • Support for connecting MIDI devices*

*MIDI is only supported in Google Chrome