Noise is a Firefox extension which plays a sound (a .wav file you chose) while event happening.
For example, if a popup window was blocked, you heard a "beep" sound as response.
Events such as WindowOpened, WindowClosed, ..., and more, were built-in options.
In fact, Noise supports events which can be captured by 3 types of observer/listeners. We'll explain this later.
Also git repository avaliable on GitHub: bootleq's Noise at master - GitHub
Please use BabelZilla to add translations.
Current supported languages: Dansk Deutsch English (US) Français 日本語 עברית Polski Português (do Brasil) Türkçe 中文 (简体) 中文 (繁體)
You can try open Findbar (Ctrl + F) and find a word, when the find reaching the end of page (when hit F3 to find nexts), you can heard a "beep" sound if you try finding next.
If everything goes well, you might like to open the preference window to set what event sounds, and what sound to response the event.
See Options to understand more.
And as you can see, Noise only have boring "beep" by default.
In this moment, you must find wav files outside this package. Here are some suggestions where to get little sounds:
- Soundsnap.com: Find and Share Free Sound Effects and Loops
- ザ・マッチメイカァズ2nd 【フリー効果音素材】
- Use PSound by snailrush. To extract sounds from PS or PS2 game discs.
Preference window Usage ｜ Edit window Usage
After installed, go to Add-ons Manager ( Tools > Add-ons > Extensions ) and find Noise.
Enter the Preference Window via the Option command.
In Preference window we have a checkbox, a tree, and some buttons.
What they are?
This globally toggle Noise sounds on/off.
If unchecked, all sounds make by Noise will be disabled (an exception is in the Edit window, it still play sounds for testing.)
Tip: in a browser window, you can toggle Noise by press "accel + alt + shift + N" shortcut key.
This tree lists all events, and the sounds matching them.
- Double click a row to edit it.
- Drag and Drop a row to resort it.
- Select an item and press Enter key to edit, or press Space key to enable/disable it.
Right click to show context menu. This is the only way to add a separator now.
Select Add → Duplicate to copy current selected item.
- Add, Edit, Play, Enable/Disable, Remove are buttons to modify the tree.
Settings button handle the export/import/default works.
Accept, Cancel buttons do nothing other than normal.
While accepting, all settings should apply to all windows instantly. (If not, it might be a bug, please report it.)
Link to Events guide:
This link opens a new guide window, lists all available events which were included in Noise by default.
So if you lost old settings, or want to check if there were new features in new version, here it is:
Just pick some items, they'll be appended to Preference window.
Edit window Usage ｜ Preference window Usage
In Preference Window, double click a row will open Edit window.
Each field means:
The name of item.
According to different event types, this should be a topic or an event type. More info described below.
Hey, please wait!
If you don't have interest to know what the inner code working.
Directly go to Events Reference and find what string to fill in, it would be much simpler.
For advenced user (knows what to do if Firefox crash...) we can use "Event Filter" to futher filter events.
&with event handler expersion to the event string, will only play sound while the evaluate result is true.
DOMContentLoaded&event.target.baseURI=='http://127.0.0.1/'will only play sound when loading http://127.0.0.1/
Please visit Event Filter for more information.
Noise captures events via 3 different ways:
Some events use nsIObserverService's notifyObservers to notify something was happened, with a topic string.
So Noise creates nsIObserver to capture topics.
In such a case a topic string is needed to fill in the Event field, ex:
If an event can be capture by
gBrowser.addEventListenerthen it can make noise.
Similar to browser event, Noise capture these events by
Accept string in three formats below:
Directly input string
beepto play a platform-dependent beep.
event:aEventId(require Gecko 1.9.2) or
sys:soundAliasto play system sounds.
See aEventId for more information.
Local wav file
Click the "Choose..." button you can get file string like
You can also use relative path, with a base directory, to manage your sounds.
Just enable the "Use sound directory" checkbox, then "Choose..." will start from your base directory.
Therefore we can simply use
filename.wavwhich is much more portable!
Note: only one base directory could be set.
If you use relative path with a different base, original ones will lose their point.
In fact Noise will notify you if we need to change the base.
Local wav file in chrome URL format
This is also a local wav file, but the string is in Chrome URL format.
Might be useful when packaging custom version of Noise... I'm not sure.
Play the sound for testing. Even you disabled Noise globally, this sounds.
Thanks a lot!
- Uninstall Noise in Add-ons Manager.
Everything is done here.
But you can clean all settings below if you really like to.
- Go to your Profiles directory, delete the file noise-mappings.rdf. That is your event-sound mapping settings.
- In Profiles directory, delete the noise directory. That is the default base directory for parse relative paths to sound files.
- Enter about:config, if there're extensions.noise.base, extensions.noise.enabled, extensions.noise.version and firstname.lastname@example.org, you can delete them.