Aurélien Gâteau

SFXR Qt

written on Friday, February 9, 2018

As I mentioned in my previous article about adding sounds to Pixel Wheels, I started yet-another side project: SFXR Qt. This is a QtQuick port of SFXR, a retro sound-effect generator by DrPetter.

SFXR Qt Screenshot

SFXR is a fun way to quickly generate old-school sound effects for your game, even if you are not a sound engineer. The generator buttons in the top-left area give you good starting points to create various sounds, and you can fiddle with the various sliders to adjust the sound to your liking.

There are many forks/ports of SFXR, why another one?

I started the port for a few reasons:

First, the current UI is hard to use: something is wrong with the sliders, they do not follow the mouse. The UI is also super small on a HD screen.

Second, the other ports are all Flash-based, which I am not comfortable relying on.

But more important: I wanted to dive into sound generation a bit, and it was a fun way to get into this!

Was it worth the pain?

I think so! I am happy with the way it sounds and it was fun to dive in an area I am not very experienced with. Furthermore I was able to make a few improvements to the user experience, such as automatically previewing sounds as you move the sliders, editing multiple sounds or adding a loop option.

You can ear some of the sound effects produced in this video of Pixel Wheels. All sounds have been generated with SFXR Qt, except for the engine and skidding sounds.

(View on Youtube)

Where is the code?

SFXR Qt source code is on GitHub. There are no pre-compiled binaries for now. I might look into creating some if there is enough demand.

Be advised that some parts of the code (cough core/synthesizer.cpp cough) are still a bit rough: SFXR is written in C, and I haven't ported everything to C++ yet.

This post was tagged gamedev, pixelwheels, pko and sfxr-qt