Larry Osterman's WebLog

Confessions of an Old Fogey
Blog - Title

Why does the Media Center volume control change the master volume, not the per-application volume?

Why does the Media Center volume control change the master volume, not the per-application volume?

  • Comments 14

This morning, Steve Robinson asked:

Also, why does the volume control on Media centre effect the speakers, and not the per-app volume?

The answer?

It's all about the 10' experience.


The Media Center team and the WEX Sound team went around and around about this issue during the Vista development cycle, we spent a lot of time thinking about what was the best experience - this wasn't a situation where the MC team and the Sound team disagreed on the experience, in this situation, there is real ambiguity in the experience, and we had to pick one.

You see, Media Center has two totally different user experiences - the first is the "10 foot (10') experience", which occurs when Media Center is driving a TV (aka full screen mode).  The second is the "2 foot (2') experience", which occurs when Media Center is windowed.  Media Center is designed to work well in both experiences.

When running in the 10' experience, the primary interface with the computer is a remote control interacting with with Media Center to control volume.  People expect that a remote control works just like the remote control for their TV: when you hit the Mute button on a MC remote control from the couch (10’), most users expect ALL sound from the TV to stop, not just streams from the MC app.  If a remote control only stopped the TV or Music stream coming from the Media Center PC, but Windows system sounds or Outlook new mail sounds, or other sounds kept pouring out of your TV occasionally, most users would be shocked as they would expect their Remote Control to turn off the whole device, not just one application (MC) running on that machine.

On the other hand, you want the 2' mode to be per-application, since the MC application is sharing the desktop with other applications.

At first blush, there's an easy and obvious solution - in 10' mode, MC controls the hardware volume, in 2' mode, it controls the per-app volume.  That SOUNDS easy, but it turns out that it's fraught with potential pitfalls - first off, what happens when you switch between 2' and 10' mode?  You want the perceived volume to remain unchanged, but in 2' mode, you've set the per-app volume, now you must set the master volume to match the 2' volume, and this isn't always trivial to do.

An additional complication is that under some circumstances, MC will launch external applications to render content (for instance, some files are rendered using WMP).  If MC used per-application volume control, it would also have to control the volume of those external applications, and again that could be "complicated".


At the end of the day, the fact that the primary UX for MC is the 10' experience clinched the deal - the fact that most people are expected to use MC in full screen mode coupled with the difficulty of getting per-app volume perfect (and there are more issues than the two I mentioned above) meant that for Vista, Media Center uses a system-wide volume.

  • Well I am a power user so it figures I don't fit into the primary scenarios!

    As I type this I've got media centre window'd but effectively full screen on my second monitor which is actually the S-video out to my TV over there <---, while i'm doing web dev as normal on my TFT. Shame media centre prevents the use of the mouse  while full screen! I know, I know, it's a DirectX thing...

    Cheers anyway for the explaination.


  • How about this one. "Why doesn't the system mute acutaly mute ANYTHING at all (Including Media Player)?" This has been a problem since I installed Vista. The 'device' sound control dosn't seem to effect anything in the system. Everything stays the same volume no matter what I set it at.

  • While I can understand the design decisions discussed, what is troubling to me is the absence in the API of ways to control the volume.  I work for a company developing a system on top of the MCE platform and this lack is given us serious headaches.  I hope  the eHome team can realize that if indeed they want us to build around MCE, they will have to give us the tools we need.


  • Marc: Are the standard WinMM mixer APIs not any use?

    Especially given the point of this article in that the MCE Volume IS the system master volume...

  • Dean, the MME APIs are all shimmed to per-app volume.

    Check todays post.

  • Did you guys do any usability studies to confirm that "People expect that a remote control works just like the remote control for their TV"? I am probably not the average user but my personal preference would be to still hear sounds from outlook while my movie or music is muted in the media center. I am not saying your assumption is wrong I am just wondering if you have some empirical data to confirm it.

  • If the machine is being used as a TV in the 10' scenario, why would Outlook etc. be running in the background?

    It seems a lot of people wish it was the other way around. Maybe not the majority but enough to justify a "Mute mutes entire system / Mute mutes Media Center only" option, even if it's just a hidden registry value or something.

  • I think this behavior makes the most sense, but it confused me at first. When I first set up my media center, I was attempting to determine the correct folume setting for my speakers. I figured I should set the master volume to full, then open Media Center and tweak its volume vs speaker volume. The trouble was, I would later open the volume control and notice that it wasn't at full, so I would set it back up to maximum again, which produced an extremely loud beep noise. At this point I was thinking that Media Center volume was still in the middle, and system volume was at the top, so I would probably need to turn my speakers down to get everything correct again. It seemed impossible that Microsoft would go through all the trouble to implement app specific volumes, and then not use it in Media Center!

  • Thanks for the explanation of my absolutely biggest gripe with Vista. I imagined the reasoning to be exactly this, but why isn't there an option to CONFIGURE the behavior? If it's not available in the GUI, just stick it somewhere in the registry (Sound Mixing = System or App). It is SO annoying to have to open the System Mixer everytime I want to just mute Media Center when live tv is running when I quickly want to listen to a MP3 or something.

  • I agree with Thomas.  In this day and age there is no typical computer user and to force everyone to use MC in one mode is short sighted.  If a registry backdoor exists please publish it and if not please create one.  The dog should wag the tail and not the other way around.

  • Well, I wish the side of the argument with common sense had won, because it is an infuriating "feature". Absolutely mind-boggling decision by the design team. I wish to god I had known it would work this way before I chose this route.

    Setting the logic used aside... why anyone would think it had to be one or the other is beyond me.

  • I'm quite frankly really upset to see this, especially since this was generously touted during the RTM and beta versions.  I just installed Ultimate over the weekend and was looking forward to MC being included in the per-application volume control, only to search for why not and end up here...  The number of users out there who would like to mute their MC and still have sound elsewhere must be significant (and heard!).  

    Larry, are you able to discern whether a workaround will be possible on this at all?  Could even a 3rd party developer create an app to facilitate this?  My desire for this will simply never go away.  

  • I agree with Thomas as well. This is a pain want you want to listen to your mp3's while watching 'muted' TV. hope something gets done about this.

  • heh, for some reason my mce remote has decided to ignore my volume entirely.

    No matter how hard I press it... the volume stays put. Receiver flashes..

    It did work up until a week ago. I even tried a new remote.

    GG, I shall continue to google.

Page 1 of 1 (14 items)