AVCamManual.AVCamManualCameraViewController.ConfigureSession C# (CSharp) Метод

ConfigureSession() приватный Метод

private ConfigureSession ( ) : void
Результат void
		void ConfigureSession ()
		{
			if (setupResult != SetupResult.Success)
				return;

			NSError error = null;
			Session.BeginConfiguration ();
			Session.SessionPreset = AVCaptureSession.PresetPhoto;

			// Add video input
			AVCaptureDevice vDevice = GetDeviceFrom (AVMediaType.Video, AVCaptureDevicePosition.Back);
			AVCaptureDeviceInput vDeviceInput = AVCaptureDeviceInput.FromDevice (vDevice, out error);
			if (error != null) {
				Console.WriteLine ("Could not create video device input: {0}", error);
				setupResult = SetupResult.SessionConfigurationFailed;
				Session.CommitConfiguration ();
				return;
			}
			if (Session.CanAddInput (vDeviceInput)) {
				Session.AddInput (vDeviceInput);
				VideoDeviceInput = vDeviceInput;
				VideoDevice = vDeviceInput.Device;
			} else {
				Console.WriteLine ("Could not add video device input to the session");
				setupResult = SetupResult.SessionConfigurationFailed;
				Session.CommitConfiguration ();
				return;
			}

			// Add audio input
			AVCaptureDevice aDevice = AVCaptureDevice.DefaultDeviceWithMediaType (AVMediaType.Audio);
			AVCaptureDeviceInput aDeviceInput = AVCaptureDeviceInput.FromDevice (aDevice, out error);
			if (error != null)
				Console.WriteLine ("Could not create audio device input: {0}", error);
			if (Session.CanAddInput (aDeviceInput))
				Session.AddInput (aDeviceInput);
			else
				Console.WriteLine ("Could not add audio device input to the session");

			// Add photo output
			var po = new AVCapturePhotoOutput ();
			if (Session.CanAddOutput (po)) {
				Session.AddOutput (po);
				photoOutput = po;
				photoOutput.IsHighResolutionCaptureEnabled = true;
			} else {
				Console.WriteLine ("Could not add photo output to the session");
				setupResult = SetupResult.SessionConfigurationFailed;
				Session.CommitConfiguration ();
				return;
			}

			// We will not create an AVCaptureMovieFileOutput when configuring the session because the AVCaptureMovieFileOutput does not support movie recording with AVCaptureSessionPresetPhoto
			backgroundRecordingID = -1;

			Session.CommitConfiguration ();
			DispatchQueue.MainQueue.DispatchAsync (ConfigureManualHUD);
		}