Why does the Media Center volume control change the master volume, not the per-application volume?
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.
Comments
Anonymous
March 05, 2007
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. SteveAnonymous
March 05, 2007
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.Anonymous
March 05, 2007
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. MarcAnonymous
March 05, 2007
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...Anonymous
March 06, 2007
Dean, the MME APIs are all shimmed to per-app volume. Check todays post.Anonymous
March 07, 2007
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.Anonymous
March 08, 2007
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.Anonymous
March 12, 2007
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!Anonymous
March 17, 2007
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.Anonymous
April 07, 2007
The comment has been removedAnonymous
April 14, 2007
The comment has been removedAnonymous
April 16, 2007
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.Anonymous
May 05, 2007
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.Anonymous
May 23, 2007
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.