title: MediaCapture: Lower quality compared to camera app and TrySetAuto not working
body: <p>I use MediaCapture on a Nokia Lumia 930 to take photos (using the default resolution which is 5MP in my case). I figured that the quality of photos taken with MediaCapture is significantly lower than the quality of photos taken by the camera app. They are less colorfull, a bit darker and slightly blurry in the foreground.</p>
  
  <p>I tried to set focus, brightness, contrast, exposure and white balance to auto (as it is in the camera app in my case) but the TrySetAuto method always returns false (indicating that it did not work).</p>
  
  <p>What could be wrong? How could I improve the quality of photos taken by MediaCapture. Is TrySetAuto buggy?</p>
  
  <p>Here is the code I use for creating and initializing the MediaCapture:</p>
  
  <pre><code>  private async Task CreateMediaCapture()
    {
  
       this.mediaCapture = new MediaCapture();
  
       // Initialize the media capture
       var settings = new MediaCaptureInitializationSettings
       {
          VideoDeviceId = this.deviceInfoCollection[this.DeviceListBox.SelectedIndex].Id
       };
       await this.mediaCapture.InitializeAsync(settings);
  
       // Set focus, brightness, contrast, exposure and white balance to Auto
       // TODO: This does nothing so far. Photos made with MediaCapture still have a lower quality than
       // photos made with the Camera App. They have less color, are darker and slightly blurry in the
       // foreground
       if (mediaCapture.VideoDeviceController.Focus.TrySetAuto(true) == false)
       {
          Debug.WriteLine("Setting Focus to auto did not work");
       }
       if (mediaCapture.VideoDeviceController.Brightness.TrySetAuto(true) == false)
       {
          Debug.WriteLine("Setting Brightness to auto did not work");
       }
       if (mediaCapture.VideoDeviceController.Contrast.TrySetAuto(true) == false)
       {
          Debug.WriteLine("Setting Contrast to auto did not work");
       }
       if (mediaCapture.VideoDeviceController.Exposure.TrySetAuto(true) == false)
       {
          Debug.WriteLine("Setting Exposure to auto did not work");
       }
       if (mediaCapture.VideoDeviceController.WhiteBalance.TrySetAuto(true) == false)
       {
          Debug.WriteLine("Setting WhiteBalance to auto did not work");
       }
    }
  </code></pre>
  
  <p>Here is the code that takes a photo (having an existing preview):</p>
  
  <pre><code>private async Task TakePhotoAsync
  {
     ImageEncodingProperties imageFormat = ImageEncodingProperties.CreateJpeg();
  
     // Create a storage file in the picture library
     StorageFile photoFile = null;
     this.DisplayInfo("Creating storage file ...");
     photoFile = await KnownFolders.PicturesLibrary.CreateFileAsync(
        "TestPhoto.jpg", CreationCollisionOption.GenerateUniqueName);
  
     // Take photo
     await this.mediaCapture.CapturePhotoToStorageFileAsync(imageFormat, photoFile);
  }
  </code></pre>