Enabling MIDI Support for Legacy WINE Gaming
skrillex scay onster an nice sprites midi
February 8, 2025
Category: Tutorial
Introduction
You ever try playing a game that was made for Windows a good 20-30 years ago on Linux or your Steam Deck, only to find out that the music is completely missing?
Believe it or not, it's not a WINE deficiency. Most Linux desktops don't automatically have a MIDI emulation server running unlike Windows. Here's how to fix it!
Steam Deck and Bazzite specific instructions will be highlighted in green!
This guide also assumes that you're running your games through Steam!
Step 1: Acquire Qsynth
Firstly, we'll need to actually get a working MIDI server, Qsynth works the best. Fetch it from your package manager either by the GUI of your choice or by the command of your choice.
Arch Linux: sudo pacman -S qsynth
Ubuntu Linux: sudo apt-get install qsynth
Fedora Linux: sudo dnf install qsynth
Steam Deck / Bazzite: You can either execute flatpak install org.rncbc.qsynth
or install it through Discover.
Step 2: Acquire the Windows GM Synth Soudnfont
Download this soundfont and place it in a spot you think is appropriate.
This is important to provide the server with actual instruments for it to play.
Step 3: Configuring Qsynth
Open Qsynth.
Head over to the Setup...
menu towards the bottom left. Then head to Audio
. Set the Audio Driver to pipewire
. This ensures we are outputting to a sound server that's actually good.
Next, head to Soundfonts
. Click on Open
.
Locate the soundfont file you just downloaded to set it as the default instrument bank.
Exit the setup. Head over to the Options...
menu that's located on the right.
Set Enable system tray icon
and Start minimized to system tray
.
You're now finished configuring QSynth.
Step 4: Configuring Steam
Open Steam. Locate your game inside of Steam. In my case it's a non-Steam shortcut but it also works with Steam games.
Using the Gear Icon open your game's properties menu.
In the launch options section, you want to set the following:
qsynth & %command% ; pkill -9 qsynth
Steam Deck / Bazzite: Since we're doing the Flatpak version of Qsynth we'll do this instead:
flatpak run org.rncbc.qsynth & %command% ; pkill -9 qsynth
Step 5: that is it
You are done. Your game's music should now work correctly. play now for free vbuck
