3 ms·
Show HN: A JavaScript emulator of the Synthi A synthesizer
- alnis 10y agoThis is something I've been working on the past few months. It's still got some quirks but is mostly feature-complete. See https://github.com/AlexNisnevich/synthi-js https://github.com/AlexNisnevich/synthi-js for more details. Chrome 45+ or Safari 7.1+ highly recommended - Firefox doesn't perform very well for some reason.
- chvid 10y agoGreat work. Lots of browsers recognise the style "-webkit-user-select: none;" which I think will greatly improve your UI.
- alnis 10y agoAh, good idea! I'll add that tonight.
- voltagex_ 10y agoI'm sure someone working on Firefox would be interested in taking a look, but finding the right person who has enough time is always tricky.
- alnis 10y agoThe Firefox issue is interesting – all UI interactions appear to have about a 500ms delay before the synthesizer output is affected. I can't figure out if it's an issue with WebAudio in Firefox, or a Flocking issue, or something on my end.
- fit2rule 10y agoGreat project! Any chance you could add a virtual keyboard easily enough?
- alnis 10y agoIt's something that I've been thinking about! It should be relatively straightforward to implement a virtual keyboard. My thought was to model it as an oscillator that only outputs sound for as long as a key is held down and whose frequency instantaneously changes every time a different key is pressed. Each keypress would also call `manualTrigger()` to re-trigger the envelope. (There could also be a mode to output "control voltage" rather than a waveform so that you could use the keyboard to control other oscillators - I believe the EMS DK keyboard had this dual functionality.) The thing that's been stopping me from implementing it so far has largely been the question of where to put the keyboard! There's not really any space on it in the UI, but I don't like the idea of making it into a modal dialog because people probably would want to be able to turn knobs and work the patchboard while operating the keyboard. So I'm not sure what the best solution is ...
- alnis 10y agoP.S. Another thing I've had in mind was the ability to connect MIDI keyboards and have them mimic EMS DK keyboard behavior within SYNTHI-JS. I wasn't sure if it was possible to work directly with MIDI devices in JavaScript, but it appears that this library could do the trick: https://github.com/cwilso/WebMIDIAPIShim https://github.com/cwilso/WebMIDIAPIShim It's worth a try, at least.
- baldfat 10y agoThe cost of vst plug ins is crazy! Something like this would go for around $100. Great work.
- phazelift 10y agoWhat a great project, and what a great synth you have reproduced! This is an awesome musical instrument, nothing less. Really inspiring, thanks for making and posting it.
- protothomas 10y agoThis [1] is a recent album produced entirely using a (physical) Synthi A - shows what can be done with one. [1] http://www.fsoldigital.com/product/synthi-a-ignition-of-the-sun/ http://www.fsoldigital.com/product/synthi-a-ignition-of-the-...
- jwarren 10y agoWow, this is pretty extraordinary. I will be diving into the source of this one for sure.
- tacos 10y agoAppreciate the radial vs vertical choice on the knobs. Nice touch.