When implementing constraints for bug 882145, we'll need the UI to support being told that a specific device should be the default one shown to the user. No string or other changes should occur; it's solely changing the default from the first device to a specified one. API TBD in bug 882145. This bug is for the desktop platforms; separate bugs will be cloned off it for Android and B2G.
Do we really even need to implement this UI for desktop? It would seem quite rare for a desktop to have multiple camera options, so I'd put this at a pretty low priority at most.
Users of the OpenTok platform (www.tokbox.com) have been requesting this functionality for awhile. One of the main use cases is to use the enumerateDevices API and pass a specific camera (or microphone) as a constraint for getUserMedia(). We have enough demand for device selection that we have created a hardware set-up component (https://github.com/opentok/opentok-hardware-setup.js) to assist the user in selecting a camera and microphone. This works perfectly in Chrome. But in Firefox, when the user selects a device, the browser prompts them to select it a second time (due to this bug).