Free Web MIDI Synthesizer, Viktor NV-1, Now Available


Developer Nikolay Tsenkov let us know about Viktor NV-1 – a free browser-based software MIDI synthesizer.

In Chrome, you can plug in a MIDI keyboard and play it. Tsenkov notes that, if you connect a MIDI keyboard, you need to restart your browser to ensure that the keyboard controller is recognized. 

“This is still a ‘work in progress’,” he notes, “but I already spend a significant time playing ….and I hope you’ll like it, too.”

Viktor NV-1 is a multi-oscillator virtual analog synthesizer, powered by Web Audio. It uses the familiar Moog-inspired architecture for the patching of modules, and also supports the Web MIDI API, so connecting a keyboard should work out of the box in the latest Chrome.

Browser-based music software is still fairly ‘bleeding edge’. So, if you give it a try, leave a comment and share what you tried and how it worked for you!

Viktor NV-1 Synthesizer is built with Javascript, HTML, Stylus, WebAudio API, WebMIDI API, AngularJS, Browserify & Grunt. [email protected] can has source code.

27 thoughts on “Free Web MIDI Synthesizer, Viktor NV-1, Now Available

  1. Wow this is really cool. Well done. It is a taste of the future. Be good to see a sequencer along with it. Wish I could program something as good as this!

    1. Thanks!
      I am sure you could – it is open-source + the audio engine is a separate (from all the visuals) project:
      So you only need to learn a little bit of Javascript, Web Audio & Web MIDI and you could do this while exploring the engine.
      I got inspired by a thing called Beep.js ( and I’ve built Viktor NV-1, I can’t wait to see something inspired by (or even branched-of) my work.
      Good luck!

  2. It take it it doesn’t work for some reason on Vista 64 using Firefox? or IE?

    IE doesn’t load the screen and FF when I hit a key I get nothing back. No sound.

    1. Only Chrome and Safari are currently supported.
      Only Chrome supports the Web MIDI API, so playing with your MIDI keyboard will not work in Safari.
      Firefox isn’t too far away from being supported (as audio), but there are problems with parsing of really small numbers, which currently breaks several things in the synth.
      IE doesn’t support Web Audio, nor Web MIDI.


  3. Fantastic and surprisingly very musical browser synth! Well done!
    This is more useful than many soft synths on the market and well worth a bookmark!

    1. Thanks!
      I am thinking about VSTi, but since the space there is the most crowded, I am starting with some experiments for mobile, first.
      Once the synth is capable of competing in the VSTi space, I will definitely research that option.

      1. Awesome to hear you’re considering it. Is there anywhere we can follow your progress with your work? I’m very impressed with this thing, it ate up over an hour of my time today and I ended up sharing it with a music group I’m part of for a fun little “make the patch based on the name” competition!

        1. Sure, you can follow with the progress in couple of places (Bottom of the page on both):
          1. The repository of the complete synth implementation (Audio + UI):
          2. The audio engine repository (this is the core of the project, without the visuals):

          If I find the time, I will add some release notes on the actual site, somewhere (I’m thinking a modal dialog to be displayed after you click on a version number somewhere on the screen).

  4. I want to share something I managed to develop in the day after this post.

    Just multiplied the possible setting combinations of Viktor NV-1 with:
    ((1600 ^ 2) – (17^2))=2559711

    MULTIPLIED WITH, not added to. 🙂

    I’ve added FineDetune of oscillators!

    Previously there were 17 detune positions, spanning 8 semitones in both directions. Now detune works in cents (100cent = 1semitone) – again 8 semitones in both directions => +-800 => 1600 values for both detunable oscillators!

    Check what a few cents of detune can do with the new patch “Cut through that Mix”:

    The phasing and the cutting effect is done by combined of… 3 cents of detune on the 2 oscillators!

    This should make your sounds even richer in timbre.

    I hope you’ll like it.


Leave a Reply