I am making Live Sticker app and capturing image using AVFoundation.
The issue i am getting is that when i save image it save only image not stickers that are placed on image 
I have 2 issues
1=> Save image with live stickers 
2=> Change image orientation to portrait mode 
Camera preview layer code I am getting just image not live sticker
I want to save image with sticker like shown in image but getting only image
     func setupCameraPreview() {
    self.previewLayer = AVCaptureVideoPreviewLayer(session: self.session)
    self.previewLayer.videoGravity = AVLayerVideoGravity.resizeAspect
    let rootLayer = self.overlay.layer
    rootLayer.masksToBounds = true
    self.previewLayer.frame = rootLayer.bounds
    rootLayer.addSublayer(self.previewLayer)
}
I am saving image using this code
    private func imageFromSampleBuffer(sampleBuffer: CMSampleBuffer) -> UIImage? {
    guard let imageBuffer = CMSampleBufferGetImageBuffer(sampleBuffer) else { return nil }
    let ciImage = CIImage(cvPixelBuffer: imageBuffer)
    let context = CIContext()
    guard let cgImage = context.createCGImage(ciImage, from: ciImage.extent) else { return nil }
    return UIImage(cgImage: cgImage)
}