Sound – Connecting MIDI to VMPK to QSynth to Audio


I'm currently using Jack (qjackctl) + VMPK + qSynth to try to simply jam a little bit on my keyboard on my Linux machine. I can see all of the inputs and outputs, but I'm still not getting any sound.

Here's my Jack connection map:

enter image description here

enter image description here

Here's VMPK, showing that I'm able to play notes with my USB Midi device:

enter image description here

Finally, here's qsynth:

enter image description here

If I wire my USB device directly to QSynth, I see activity in the bottom left, but if I wire it to VMPK then to QSynth, I don't see activity. In either case, I don't get sound.

I don't know how I should have this thing wired. It seems like I should wire my Keystation USB device to VMPK, then wire VMPK output to the synth. However, I don't hear any audio at all, and I've quite a few things.

What am I doing wrong here?

Best Answer

First of all, VMPK does not pass MIDI data through it. That means that if you use it to play notes it will output them, but if you'll provide it with MIDI input it will highlight the pressed notes, but will not output them. To enable passing MIDI to the output, go to menu Edit->Connections, select "Enable MIDI Thru on MIDI output", and confirm by pressing OK. This will get your MIDI connection to work as on the picture you provided, and QSynth will recieve the MIDI input from your external controller.

I am not sure how did you set up QSynth, as it cannot be deducted from these screenshots you have provided (silly QSynth!). However, there are some things you should make sure to get it to work:

  • Use a soundfont, as QSynth will not make any sound without some. Click on the 'Setup' button, then in tab Soundfonts use the Open button to select a sf2 file (if you don't have one, install package fluid-soundfont-gm or fluid-soundfont-gs, or look for them on the web, as thousands of soundfonts are available for free). After that change QSynth will ask you to restart it's engine, allow him to, by answering 'Yes'.
  • Afterwards, make sure the ALSA connections are as they should be (QSynth will reset it's when restarting the engine). Also, remember to connect it's audio output to system output in JACK's audio connections window.

I hope it will help you. Ask in case of any further problems :)

Related Question