Deo, your headset is USB, it's not terribly surprising (to me) that the volume controls don't work the same or quite right. It probably even has its own separate volume control as a separate audio device. That being said, doesn't it have in-line (on cord) controls?
Audio volume settings can indeed be quite confusing as there are many things that affect them. With Windows 7's new per-app volume control, you now have more flexibility but also potentially more confusion with volume. I'll try to break down how all this works, maybe it will help you understand, if not solve, these issues.
First, a quick run down of the major factors that could come into play:
- Original recorded audio volume
- Effects applied during playback (e.g. compression, normalization)
- Individual *in-app* audio levels
- Codec-specific audio levels and effects (e.g. AC3 decoder)
- Sound driver levels and effects
- Individual *Windows* audio levels (Win 7 only)
- Main Windows volume
- Volume of the output device (speakers, headphones)
I think the first step is to determine if there actually is a real difference *when playing the same audio file*. So maybe take an MP3, play it locally in your audio player of choice, then upload it to e.g. Amazon Music, Google Music, etc. and play it back through the browser. Is the volume different? If so, then you check all the various volume settings described above to make sure they're the same, and only then can you really be sure that somehow the browser is treating audio differently. My guess is that one of the above factors is involved.
If you care to dig deeper, read on....
Recorded sound is complicated in general. Here's a good reference
from Audacity's documentation. And More info
from Wikipedia. Now the reason I'm starting at such a basic level is that it's important to realize sound is not an absolute, especially recorded sound. A recording is encoding differing pressures detected by a measurement device (microphone usually) that itself has limitations on the amount of pressure it can actually detect before it breaks or faults. So basically a recorded sound ends up being from 0 (silence) to the maximum sound pressure level the recording device can handle, and that can be encoded in digital recording as say a floating point value from 0 to 1, with 1 being the maximum volume. It's not nearly as simple as that in actuality because frequency is also encoded, but we're considering volume alone here for the moment.
With that out of the way let's consider the computer-specific elements. Start with the base audio file/stream itself. The recorded range in the audio file mentioned above (0-1) is translated into actual sound by the output device - speakers, headphones - which essentially moderates the ultimate sound volume, but the absolute volume of the source still has a big effect and can have a huge impact on the relative "loudness". This is why for example TV commercials tend to be louder than TV shows, even though you're not changing the volume of your TV speakers.
So if you were to take a look at the wave form of an audio file, a normal audio segment might look something like this:
There are two wave forms because this is a stereo track (left/right). Note the scale on the left (ignore the lines across) and how there is both positive and negative measurement from a baseline of 0. Now, you can see that the audio here seldom - if ever - reaches the maximum on the scale, and likewise it's seldom at 0 either. Now imagine what happens if you amplify the recorded values in this audio file. You might get something more like:
Notice there are still some dynamics - variable highs and lows - but the overall wave form is "taller", getting closer to the max/min more of the time.
Now, here's where it hopefully starts getting interesting. A lot of audio and video players have "normalize" options which are set to on by default in some cases. Likewise a lot of audio content *sources* are normalized before they get to you. Normalizing essentially takes an audio file and adjusts the amplitude (volume) such that the maximum and minimum are within a certain range. Note that normalizing shouldn't change the *dynamics* of the audio, just its relative volume. This can make a quieter recording into one with more normal volume.
Another process that is sometimes applied dynamically in audio/video players, and even more often applied in audio processing for music and other things, is Dynamic Range Compression, and this is really where you'll hear some big changes. The intention of audio compression is to bring all the sound levels to a similar amplitude, giving you much more even volume through the recording, and removing a lot of the "dynamics". Unlike the previous wave forms with clear highs and lows, a compressed file might look something more like this:
Now compression usually removes both significant highs and significant lows, but depending on the setting it's not going to result in *louder* maximum audio levels, just more even volume. If you compress and normalize to max volume, *then* you end up with something that is uniformly loud, and about as loud as can be encoded in an audio file. Something more like this:
As I said, these are effects that are often applied to audio, both music and TV, as well as elsewhere. Now are these factors in a browser-vs-desktop-player volume difference? Obviously not if you are playing the same audio. However it's important to be aware that certain audio sources *do* have normalization and/or compression applied as a general rule. As I mentioned your audio player may also have one of these effects enabled (KMPlayer for example tends to have Normalize enabled by default for some audio types).
When you take those complexities into account, along with the original list of possible factors, you can see how complicated it can be to really figure out what the output level will be for even a specific audio file, let alone "audio in general". Since you've probably checked all the basic stuff like system volume vs. app-specific volume, I'd dig deeper into stuff like audio codec effects and whatnot. But first, as I said at the beginning, you'd want to verify that there is indeed a difference using the same exact files. If you're talking about something more like playing back a movie (encoded with e.g. AC3 or DTS audio) on your computer is quieter than playing, say, a Youtube video, well that's not at all surprising. AC3 and DTS decoders will tend to produce much quieter output and are generally intended to be fed into a multi-channel amplifier. When that output just goes through stereo speakers, it loses a lot in the translation, so to speak.
In short, it's important to know the specifics of what you're comparing and to make sure you're comparing apples to apples.