The keysocket project on GitHub lets web apps respond to the system default media keys while focus is not in the tab or Chrome. This is a really handy feature since it allows you to control a web player using custom media keys while in other applications. There is a pull request already in order to add support for Subsonic. I commented on the pull request with an example of how to ensure it also works for Madsonic. I would appreciate any +1's on that PR in order to help get it merged.
However, it seems that the new preferred method for web players to support the keysocket extension is to add some metadata to the view and respond to certain events. However this would require code changes in Madsonic, was going to try and contribute but couldn't find the source code?