20 August 2009

Block annoying Flash sounds

Flash is one of the most popular browser plug-ins these days, not only for design, but for rendering music and videos also. Although it brings a lot of new features and interactivity, there are times when you just don't want to be disturbed by it. A classic case is when you open a new page in the background and you're immediately bombarded with loud adds or music. Not good it you have more than a few tabs opened and have no clue which one started all that noise. And don't forget the videos that play automatically on the YouTube pages!

Unfortunately, there's no easy way to control the sound output from Flash, either from the browser or from the plug-in itself. I have come across this problem a few years back, when I wanted to play some browser-based Flash games and listen to music at the same time. The games had no mute button... and so I began searching the net for a solution.

It took longer than I originally expected. Finally I came across a small Windows utility written by a Norwegian programmer, Einar Otto Stangvik. It's called FlashMute and you can download it from the home page of innovative development. It's even featured on the Opera help pages!

It's very easy to use: after installing, the program creates a new icon in the system tray similar to the volume button, which controls the sounds from browsers, instead of the whole computer.

  • FlashMute left-click menu
    FlashMute left-click menu
  • FlashMute right-click menu
    FlashMute right-click menu

If you right-click the small tray icon, the menu reveals a small number of options:

  • you can toggle the tray icon on and off;
  • you can "mute whole browser" (i.e. other sound sourced besides Flash, like .mp3 and .wav files) or only Flash;
  • you can use a keyboard shortcut (Ctrl+Alt+M) to quickly toggle muting on/off (a "panic-button" like the author calls it) or disable the shortcut.

The utility works smoothly under Windows XP, but it hasn't been updated in more than 3 years, so there's no guarantee it supports Windows 7 or Vista (some forums mention a similar build-in functionality in Vista). The latest version, 2.08, was released in March 2006.

Another drawback to the program is that it doesn't work with Google Chrome. Since it was not even publicly announced in 2006, Chrome isn't on the list of supported browsers. The author does mention on the website that Adding support to additional browsers does not require a new version and that he will be posting information on how to do this in the forum. Unfortunately, the forum link there is broken.

But that got me thinking: if it's that easy, maybe I can figure it out for myself! The software probably stores the list of browsers somewhere in a configuration file. Since there were no obvious suspects in the installation folder, I turned to an very old "friend", the Windows Registry! A quick search for 'FlashMute' revealed the keys I needed: HKEY_CURRENT_USER\Software\InDev\FlashMute.

The string called 'filenames' contains the list of supported browsers, as you can see in the following image: Registry key for FlashMute

Double-clicking on 'filenames' allows you to change the string, in this case I have appended a comma and the process name 'chrome.exe', with no spaces: Edit Registry key for FlashMute

Unfortunately, even after this change, the software still doesn't properly block the sounds from Google Chrome. The YouTube player for example ignores FlashMute until you manually mute the sound, and refreshing the page or launching a new tab negates the effect again. The program does mute on the other hand some flash applications, like games. It probably has something to do with the multi-process architecture of Google Chrome.

Hopefully the author will take another look at FlashMute and update it to remove these minor annoyances. Are there other applications like this out there? I was unable to find one...

2 comments:

  1. It's just as annoying that this small app requires installation instead of being portable.

    ReplyDelete
    Replies
    1. Exactly. Does not work

      Delete