DEV Community

Nathan Fiscaletti
Nathan Fiscaletti

Posted on

Keyboard Sounds — Make any keyboard sound mechanical (now with Windows and Linux desktop support)

Keyboard Sounds is a free, open-source application that makes any keyboard sound like a Mechanical Keyboard. It includes 16 built in profiles, a profile editor, and application rules.

Download on GitHub
Official Website


Introduction

Four years ago, a pretty simple thought sparked a whole project. I was just chilling on my couch, tapping away on my iPhone, when something clicked: I really loved the tactile feedback of its keystrokes. "Why can't I have this on my PC?" I remember wondering. "It'd be great to hear my keystrokes as I type, just like I do on my phone."

My first move, naturally, was to see if something like that already existed. I found a few small, promising open-source apps, things like Mechvibes and Thock. They definitely offered some of what I was after, but there was one big piece missing: the ability to control when the sounds were active based on the app I was currently using. I really wanted to turn the typing sounds on or off automatically depending on what I was doing – a feature I eventually started calling "application rules."

Since that crucial feature wasn't readily available, I figured I'd just build it myself. And that's exactly how Keyboard Sounds began its journey.

What started out as a humble command-line utility, faithfully mimicking iOS key presses, has honestly grown way beyond what I first imagined. Today, Keyboard Sounds has evolved into a robust, full-featured, cross-platform desktop application, finally bringing that satisfying auditory feedback to your typing experience, complete with the smart control I originally longed for.


Features

Keyboard Sounds has several key-features.

Custom Profiles

  • Support for both Mouse and Keyboard audio profiles
  • Comes bundled with sixteen built in profiles (16 keyboard, 1 mouse)
  • Supports Custom profiles through the editors (.wav and .mp3 supported)

Read more about creating and editing profiles here.

Profiles

Application Rules

Keyboard Sounds supports application rules in which you can control the behavior of the sound daemon based on the currently focused application.

This allows you to do things like only enabling in your text editor or terminal, disabling it for specific games, or localizing the sound effects to a particular application.

  • Read more about application rules here.
  • Application rules are currently only available for the Windows platform.

Application Rules

Randomized Pitch Shift

Keyboard Sounds supports randomized pitch shifting in which you can change the pitch of the sound effects to a random value between a lower and upper bound.

When enabled, each time a key is pressed or a mouse click is made, the pitch of the sound effect will be randomized between the lower and upper bound.

Pitch Shift

Using Keyboard Sounds with OBS

In order to use Keyboard Sounds with OBS as an isolated audio source, OBS needs a window that it can attach to that's connected to the process running the Daemon. This is not the same process as the desktop application. To work with this, Keyboard Sounds provides a window that can be enabled for the audio daemon.

Command Line or Desktop Application

Keyboard Sounds can be installed as a command-line utility, or as a Desktop Application.

  • The Desktop Application supports Windows and Linux
  • Desktop Linux support is currently in beta (see here.)
  • The Command-line Utility is available on any platform that supports Python.

Top comments (0)