title: How can i take a picture using AVCaptureSession
body: <p>I have a code that set a camera view as a subview, what i need is when i click a button it takes a picture from this <code>AVCaptureSession</code> and save it in to the photo library, how can i achive this?</p>
  
  <p>Heres is my code:</p>
  
  <blockquote>
    <p>AVCaptureSession *session = [[AVCaptureSession alloc] init];
            AVCaptureOutput *output = [[AVCaptureStillImageOutput alloc] init];
            [session addOutput:output];</p>
  
  <pre><code>    //Setup camera input
      NSArray *possibleDevices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
      //You could check for front or back camera here, but for simplicity just grab the first device
      AVCaptureDevice *device = [possibleDevices objectAtIndex:1];
  
      NSError *error = nil;
      // create an input and add it to the session
      AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&amp;error]; //Handle errors
  
      //set the session preset
      session.sessionPreset = AVCaptureSessionPresetMedium; //Or other preset supported by the input device
      [session addInput:input];
  
      AVCaptureVideoPreviewLayer *previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:session];
  
      previewLayer.affineTransform = CGAffineTransformMakeRotation(M_PI_2);
      //Set the preview layer frame
      previewLayer.frame = CGRectMake(45, 55, 512, 387);
      //Now you can add this layer to a view of your view controller
      [self.cameraPlace.layer addSublayer:previewLayer];
      [session startRunning];
  </code></pre>
  </blockquote>