Friday, 14 January 2011

Virtual Pianola...

In my quest to try out new things related to sound and music with my Ubuntu Studio laptop, I decided to try and emulate a pianola (or player piano), as seen in this video (you can see in the following link a real piano player in action).

The first thing was to change the preferences in MuseScore (version In the I/O preferences tab, I selected "Use JACK MIDI output":

Then I restarted, Jack, Musescore and VMPK (version 0.3.0), but in the Jack Audio Connection Kit "Connections" view, I could see "Mscore1" in the MIDI tab as a readable client, but VMPK input only showed in the ALSA tab, so I could not connect them.

With the help of the experts at the UbuntuStudio mailing list I found out that I would require a bridge between alsa midi and jack midi: a2jmidid. The best option seems to just put "a2jmidid &" in the Jack Connection Setup "Execute script after Startup" Option, so that the bridge will be in place every time I start Jack.

With this in place, and after restarting everything, I can connect the output from MuseScore into VMPK (and also into "FLUID Synth": otherwise I will see the keys in VMPK being pressed, but we will get no sound).

Now we only need some nice music to demonstrate... and I download "Lock and Key" from And everything seems to work pretty well. But I don't want you to take my word for it, so I planned to record it.

I used gtk-recordMyDesktop (version 0.3.8), which is a front-end for recordMyDesktop. With it (in the Sound tab), you can click "Use jack for audio capture", but with this option enabled I always got errors like "... exited with status: 2816. Description: Improper window specification.", so I decided to record the sound (with Ardour) and the video (with recordMyDesktop) separately, and then mix it with Kdenlive.

Kdenlive is not happy with the .ogv file created by recordMyDesktop, so first I had to convert it to an .avi file with the command:

angelv@palas:~$ mencoder -ovc lavc -ofps 30 pianola.ogv -o pianola.avi

Synchronizing audio and video is not always straightforward always, but for this video it was quite easy. The resulting video can be seen at:

1 comment:

Anonymous said...

woot I am trying. Wishing error 2816 did not happen~ Recordmydesktop... why don't you be easy? :)