GPUImageLookUpWithIntensity.swift
import AVFoundation
import Foundation
import UIKit
import GPUImage
class LiveCameraVC: UIViewController
{
// @IBOutlet weak var modifiedImageView = GPUImageView()
@IBOutlet weak var modifiedImageView: GPUImageView!
var videoCamera:GPUImageVideoCamera?
// MARK: - Variables
var intensitys = 1.0
@IBAction func SaturationSlider(sender: UISlider) {
let test = sender.value
// saturationFilter?.saturation = CGFloat(sender.value)
intensitys = Double(CGFloat(sender.value))
filter.intensity = CGFloat(intensitys)
}
// let filter: GPUImageLookupFilter = {
// let filter = GPUImageLookupFilter()
// filter.intensity = intensitys
// return filter
// }()
// MARK: - UI
// MARK: - Life Cycle
override func viewDidLoad() {
super.viewDidLoad()
videoCamera = GPUImageStillCamera(sessionPreset: AVCaptureSession.Preset.photo.rawValue, cameraPosition: .back)
videoCamera!.outputImageOrientation = .portrait;
videoCamera!.horizontallyMirrorFrontFacingCamera = true
// videoCamera?.addTarget(modifiedImageView)
self.performLut()
videoCamera?.startCapture()
print("Tapped")
}
// override func loadView() {
// super.loadView()
// self.view.addSubview(modifiedImageView)
//modifiedImageView.autoPinEdgesToSuperviewEdges()
// }
// MARK: - Private
let imagePicture: GPUImagePicture? = {
if let imagePicture = GPUImagePicture(image: UIImage(named:"lookup_amatorka")) {
return imagePicture
} else {
print("GPUImagePicture Nil")
return nil
}
}()
let filter = GPUImageLookupFilter()
private func performLut() {
if let videoCamera = videoCamera {
// var imagePicture = GPUImagePicture(image: UIImage(named:"lookup_amatorka"))
//let filter = GPUImageLookupFilter()
filter.intensity = CGFloat(intensitys)
videoCamera.addTarget(filter)
imagePicture?.addTarget(filter)
imagePicture?.processImage()
filter.addTarget(modifiedImageView)
// videoCamera.startCapture()
/*
if let imagePicture = imagePicture {
videoCamera.addTarget(filter)
imagePicture.addTarget(filter)
imagePicture.processImage()
filter.addTarget(modifiedImageView)
videoCamera.startCapture()
}
*/
}
}
}