Although I generally agree, my take on this is that it's better to classify sound sources based on different criteria. My suggestion is to use the following categories:
- Notification: sounds used to provide feedback for user actions or to notify about environmental events. These are short sounds, not expected to play for long periods of time. Also, listening to these sounds is never the user's direct purpose.
- Media playback: sound streams resulting from playing music or videos, also game sound tracks. These can play for long periods of time and can be played in the background while other tasks are being performed. They are often high-quality. Listening to these is desired by the user.
- Conversation: streams from VOIP applications. These can play for long periods of time. Since a conversation is ongoing, they normally require constant user attention. Their sound quality can be poor.
Volume for Type 1 should definitely be handled automatically whenever possible. People don't want to fiddle with this, they just want to hear their notifications. Types 2 and three require manual adjustment, and probably can be handled uniformly for the most part. I'm making the distinction mainly because of the differences in interaction, namely, background vs. foreground.
Based on the previous comments, I'm also tempted to add a fourth category:
Sound spam: unexpected/undesired sound streams coming from Web pages.
Of course, muting these automatically would be ideal, but can be very difficult given their often malicious nature. Any ideas in this direction are greatly appreciated.
Martín