Using the 8.1 MediaCapture classes for Windows Phone.
Announced the possibilities for "Audio" and "Webcam", which is 90%, which would be the reason for the exception.
Kicker, it works fine in a WP emulator, but it breaks into the actual device.
The exact exception is here :

I added a mountain of checks to make sure that we are not reinitializing an already initialized camera or trying to read before initialization .. etc. (as I assumed the problem was caused). So it is very unlikely to be one.
private async Task InitializeCameraAsync() { if (_isInitialized) { Debug.WriteLine("Skipping unnecessary initialization"); return; } Debug.WriteLine("Initializing camera media capture..."); _deviceCapture = new MediaCapture(); await _deviceCapture.InitializeAsync(new MediaCaptureInitializationSettings { VideoDeviceId = _cameraInfoCollection[_currentVideoDevice].Id, PhotoCaptureSource = PhotoCaptureSource.VideoPreview, AudioDeviceId = _microphoneInfoCollection[_currentAudioDevice].Id StreamingCaptureMode = StreamingCaptureMode.Video }); Debug.WriteLine("Initialized camera media capture!"); // For code completion only, unlikely to be relevant // Set up low-lag photo capture if (IsNotUsingInstantCapture) { Debug.WriteLine("Preparing low-lag photo capture"); var imageEncoding = ImageEncodingProperties.CreateJpeg(); imageEncoding.Width = PhotoCaptureWidth; imageEncoding.Height = PhotoCaptureHeight; _lowLagPhotoCapture = await _deviceCapture.PrepareLowLagPhotoCaptureAsync(imageEncoding); } _isInitialized = true; Debug.WriteLine("Initialized camera!"); }
_mediacapture is then snapped to the xaml CaptureElement source to show a preview.
source share