From a81edae04f779c063f87c07070d1a9142aee5c06 Mon Sep 17 00:00:00 2001 From: Sami Samhuri Date: Tue, 21 Nov 2023 16:57:43 -0800 Subject: [PATCH] Forget the flash/torch nonsense --- .../Assets.xcassets/Contents.json | 6 +- .../flash.imageset/Contents.json | 22 ---- .../flash.imageset/flash@2x.png | Bin 935 -> 0 bytes .../flash.imageset/flash@3x.png | Bin 1419 -> 0 bytes .../flashOutline.imageset/Contents.json | 22 ---- .../flashOutline.imageset/flashOutline@2x.png | Bin 1189 -> 0 bytes .../flashOutline.imageset/flashOutline@3x.png | Bin 1886 -> 0 bytes .../flashauto.imageset/Contents.json | 22 ---- .../flashauto.imageset/flashauto@2x.png | Bin 2290 -> 0 bytes .../flashauto.imageset/flashauto@3x.png | Bin 2829 -> 0 bytes .../DemoSwiftyCam/Base.lproj/Main.storyboard | 25 +---- .../DemoSwiftyCam/ViewController.swift | 27 +---- Source/SwiftyCamViewController.swift | 105 ------------------ 13 files changed, 8 insertions(+), 221 deletions(-) delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/Contents.json delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@2x.png delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@3x.png delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/Contents.json delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/flashOutline@2x.png delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/flashOutline@3x.png delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashauto.imageset/Contents.json delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashauto.imageset/flashauto@2x.png delete mode 100644 DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashauto.imageset/flashauto@3x.png diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/Contents.json b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/Contents.json index da4a164..73c0059 100644 --- a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/Contents.json +++ b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/Contents.json @@ -1,6 +1,6 @@ { "info" : { - "version" : 1, - "author" : "xcode" + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/Contents.json b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/Contents.json deleted file mode 100644 index a8d38c3..0000000 --- a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/Contents.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "filename" : "flash@2x.png", - "scale" : "2x" - }, - { - "idiom" : "universal", - "filename" : "flash@3x.png", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@2x.png b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@2x.png deleted file mode 100644 index 409bc69ad91b253813e32baf873d7516ff16aec7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 935 zcmV;Y16cftP)Px&VM#dgnafL7K^TYqEUQI!vqg)*D2j;qiXvJ_L>jc~4+u;Xf+!;T3&LHf zi`+!C>;^3?0#_}{c2P+gwCJ)+i70YWYFEFW*E}E7`DV_UnKNewUeBC)FTdx^#e>JD zrjlE&R_k(+Xm$y9jRj^qIXy0Ur2zr643JycTNj|xVgVY&q#Z3y#I`UHUD&+P(AsVD zN{Itt9X2T>wCPerT#5p5X94Bkk1?0r;IS~ARA8h#99+bYRLQRhNlSI{U{phQ#+l+a&`U%*V z6Xdm_b80ranT>;(?ue%+YM?ROZp3zGYW`6mpZ+v#b@xZi0vAD&SN_hyKv zUEdj4>M50f%ag zVacHAVC)eV>r_plRb_U*C@c%zW?)v)lckCUQ$y>x4n~M%4_(GKVX@jEFb{%@F|+NM zYa1t_e#CW9^;4#E=8Wym@u%Ih3>;&2ex)7ieG#BtY9WjMd0<{!#QB9V^&<}Jb=ObD zAq$vymOxX)wK;BrsqeFg zOs@=ii}$c^KF0d=s6-&- z`}7a&B^Lj`Jn07kqKeI7<$lmi3!Cl%k*^|WP5$WPz;wnC{R_wmA{XB6>J|V1002ov JPDHLkV1fsBvhx4{ diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@3x.png b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flash.imageset/flash@3x.png deleted file mode 100644 index 7cbe495cc4b41b30f4ee14e019b830da7ab9d759..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1419 zcmV;61$6p}P)Px)MM*?KRCoc^oZoL1MHI(-D@FMsqC&tnh=!OD{86-s1bHFE5S5syAsBohHoWkp z&=O+cKY-w`01+O9D!lQ~G?)<5M18U`AyfkNp}r8J0wRP&p~YA}$J|?Y=T7(T?4H>> zdyu|y7$Mnr6n+%n3$M@ugD{-HBVu)$vLHb&lLfNm9z2zwFjTd78{V^??SQ?kCyK!+|BR_427tljgLktjP37@E}3_W zTvK15a!Gx<RL?@B2yII#R`pK8S4saIm}gP~ zNm$tBoKbq$HoqFQEp)g5#fBoh1HaJ#z&w0aTcz6cL#gEY8h^}Dr25oTg92nHzSa>) z!quTNXsGYPD0Sg!%eOiG-mlM?uO;_Lp>QS=j^k;|x2ZV1kpk+ldFdVY?-D!Bq-^Rw zg5Guju!WxW0g!q6p|Bl6M{KuB!aSE*D6Wh2pm+JTqB z&LVQUz$8vTf;x#A!XK32fbDOzbumgKqH)UU2ha?T%ZDeS0}03W8j$Qv3B|E}_%aC! z-1-4J9Mx!@evHxvf(D|2fo}hXt`~s%BdV_s3LyDpN6Pp7XkdWbQoh#%bjH*cn|=TZ z@gCWYf41JiwT>w4{D zcNDIj6XNA9i-z^GjxM++3K{AYKnGlbBtBFq`F6283sA^VA23SSvO=l%V`0z0zc@skNa#kApoyX-qG?)2UQ&}tDT}U=F?c_C=g#@(=p!2zCe065}{E%V#eM_Io z_jbOtWzLH@d9udEt`h9yhB`AttRv!{cA=@pz8OoRu%o@ET#Lj3){**qxn@GiJzcND zz|^H^7StF@RLXZ9k#+-XB>LD;((?L9``ljgK_HK^%JWZ+>@)%4mhb4*LFk%BG#tN< z%g5SYO><49seIj3JNZ<|s}%`#2%s{2lk)!sXIc#{L;o5`jWR6uw zYLM5$%eNO;K+fUvBuBRH?;NF|QOo;)Ke`PW&Q)iEz Z?gO(|JNRI{zZ?Jn002ovPDHLkV1f!)u89Bu diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/Contents.json b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/Contents.json deleted file mode 100644 index 193bcc2..0000000 --- a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/Contents.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "filename" : "flashOutline@2x.png", - "scale" : "2x" - }, - { - "idiom" : "universal", - "filename" : "flashOutline@3x.png", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/flashOutline@2x.png b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashOutline.imageset/flashOutline@2x.png deleted file mode 100644 index a587b1a28a45e0a83fbc7975c13a1a7d616d9dba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1189 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 O72@gY=d#Wzp$PzioOdYz diff --git a/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashauto.imageset/flashauto@3x.png b/DemoSwiftyCam/DemoSwiftyCam/Assets.xcassets/flashauto.imageset/flashauto@3x.png deleted file mode 100644 index cc7666e225c64578e29d76b1ad1dda93df9efe75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2829 zcmZ`*3p|s38=lj!$l2QoGkT+TFheZ1b`m)+$PyKn`5Mj42ir^N-5`hOR0E^ zrh`5z3Kd29d|oLL!b&ZNZ==ILzuxEfdk+8mzOMguU-$Fe`z_7ebCV`$1qc8DXu7%( z$$UFiqeU^n05b!*NzsCvU z@8Jz5u(@=wE!+lf1;K#8V6Y=Mgn=d#oxjngDYnT)PVckA88@MKU{GlxvY6lA;Abbiylso;Pa$By=xX%DlqfgzE;NC&i)4cb;(`yz~7 z1+ol*OQ-VLTwgYug_(B|E?a_8@bwE!`TRGkBSJPsa#OW1vhz{t%wj-N=J)x>fZSeZ zOMhd40#_o=H%6hOAdqE9(r*gXuO7GwOo-q(KF- z+ukwfEbwDBq9>rUE^JM0sZP<1k9Nua8Ra;Fa^h8|%-fE~OWzG*!=TSqf$d9|LOlt$ zvbwxy%kAnc1Qf!q8#tGaQv%$z14@D$>UeZ~FMMe;j)gzaiMk@Ajw)WL`(4w3VxleW`wa{0qKY+gH zKZf?4s;LKcKd!b{cx0>cSy}vCQSrg(&Y)s`&Gg3e{$poC1Csdl;({Yd_i5ta-SF1Y zp63-0_Q6}ozXjMOtU1=3&|ucN=bY0PFiZ6==o(An30cZ616M<1hhT@bsC#KS143h^ zLC+8IvZ;^&;V-(TJd2-6fE2D94dl2g?}dB%@-*(bd(-y zUj8nvua;Zp=U2D+NK#vD@(j=@)S&)Lqmo7}uW#Z&w(wTUK~FUy%q<`=aD7G2y6iY* zC*u%3u$ONBtAW&ZeU_yC5BjRh(<(J^1~b))0mrIUw_iHB=B%D>RtnP8C?uzdt&Vne z7BufxgQ1XRa4h3p)S=Gf2L+vpiqAt_Mo{CLW-6vVT|N>_vyH~(N^!!vT)TynR(Tk7pcb68qm@)5$OYQ2zThQ zrS*ljOSd8`jbqm)L=)~edF4(#v!@LEY@3Mxa>Oa%E+fm#IZ%k2SiW4l-$)1TQqUaU zn$Td7a*=mfwC~FGY|{JU@EQUB_i97@rEcAvgo+X|zp5N`HrutQ6*_Wm^TQh^E9*2n zRzkN9klvmd0wzDO-P-lvzYIDe!(ii8<>wjo1grd}D_baTc*sYKs^Za&;!_?;S-pjo0_p} zxM;s5goZzT@fZepN>9Ne@Mex`GFWo7HU9RL_vwUJZ_z$4LNME(!qNpHM|-Ym{l_Fr z5*qsA%bqtED%U!Y;u2|G9bJ|mar~2WDdS@C{Z=Mc=|rI>$)22%ngMLwV^fQr*bzp| z4}3j*p%7O+Tb-XlTzSiCn1(`uO1j#k{l+sSV+Mk#8|Bvu(r*u)o{A@59d*!my_tw< znAJLj6|Sl^J^t1Bs2iD{L(~F9ZmT#nxcutthGJ6l`HJ@?1v(uwh6SRc-!6%LxR$1! zzP?2R7qIoPqqUROD|3A%{)JIUo~b`sx{6)zHvRN`KVi%0S*wx|5LH~o!v(~yQ$`!XnH#EC%(YM}HU zyl4GDe5T!fvh{cZqo-p@GR5_8J>W1(73!0vm+Za`Z~jgUc5)tqUYILex#>yZNI)mJ3h!}W6=9EPj(C*r|mENluc|sg-V%K zIpDWxEFkld&4q5J@7Gs0c1tMu_t f+mZP|vuESjxtK0Ja8= - - - - + + - - + @@ -36,40 +33,26 @@ - - - - + - diff --git a/DemoSwiftyCam/DemoSwiftyCam/ViewController.swift b/DemoSwiftyCam/DemoSwiftyCam/ViewController.swift index 7f8c8da..d387c02 100644 --- a/DemoSwiftyCam/DemoSwiftyCam/ViewController.swift +++ b/DemoSwiftyCam/DemoSwiftyCam/ViewController.swift @@ -21,16 +21,13 @@ class ViewController: SwiftyCamViewController, SwiftyCamViewControllerDelegate { @IBOutlet weak var captureButton : SwiftyRecordButton! @IBOutlet weak var flipCameraButton : UIButton! - @IBOutlet weak var flashButton : UIButton! - + override func viewDidLoad() { super.viewDidLoad() shouldPrompToAppSettings = true cameraDelegate = self allowAutoRotate = true audioEnabled = true - flashMode = .auto - flashButton.setImage(#imageLiteral(resourceName: "flashauto"), for: UIControl.State()) captureButton.buttonEnabled = false } @@ -100,11 +97,6 @@ class ViewController: SwiftyCamViewController, SwiftyCamViewControllerDelegate { @IBAction func cameraSwitchTapped(_ sender: Any) { switchCamera() } - - @IBAction func toggleFlashTapped(_ sender: Any) { - //flashEnabled = !flashEnabled - toggleFlashAnimation() - } } @@ -113,14 +105,12 @@ extension ViewController { fileprivate func hideButtons() { UIView.animate(withDuration: 0.25) { - self.flashButton.alpha = 0.0 self.flipCameraButton.alpha = 0.0 } } fileprivate func showButtons() { UIView.animate(withDuration: 0.25) { - self.flashButton.alpha = 1.0 self.flipCameraButton.alpha = 1.0 } } @@ -143,19 +133,4 @@ extension ViewController { } } } - - fileprivate func toggleFlashAnimation() { - //flashEnabled = !flashEnabled - if flashMode == .auto{ - flashMode = .on - flashButton.setImage(#imageLiteral(resourceName: "flash"), for: UIControl.State()) - }else if flashMode == .on{ - flashMode = .off - flashButton.setImage(#imageLiteral(resourceName: "flashOutline"), for: UIControl.State()) - }else if flashMode == .off{ - flashMode = .auto - flashButton.setImage(#imageLiteral(resourceName: "flashauto"), for: UIControl.State()) - } - } } - diff --git a/Source/SwiftyCamViewController.swift b/Source/SwiftyCamViewController.swift index 0d5416e..1e13029 100644 --- a/Source/SwiftyCamViewController.swift +++ b/Source/SwiftyCamViewController.swift @@ -43,28 +43,6 @@ open class SwiftyCamViewController: UIViewController { } } - public enum FlashMode{ - //Return the equivalent AVCaptureDevice.FlashMode - var AVFlashMode: AVCaptureDevice.FlashMode { - switch self { - case .on: - return .on - case .off: - return .off - case .auto: - return .auto - } - } - //Flash mode is set to auto - case auto - - //Flash mode is set to on - case on - - //Flash mode is set to off - case off - } - /// Enumeration for video quality of the capture session. Corresponds to a AVCaptureSessionPreset @@ -126,9 +104,6 @@ open class SwiftyCamViewController: UIViewController { public var videoQuality : VideoQuality = .high - // Flash Mode - public var flashMode:FlashMode = .off - /// Sets whether Pinch to Zoom is enabled for the capture session public var pinchToZoom = true @@ -226,10 +201,6 @@ open class SwiftyCamViewController: UIViewController { fileprivate var beginZoomScale = CGFloat(1.0) - /// Returns true if the torch (flash) is currently enabled - - fileprivate var isCameraTorchOn = false - /// Variable to store result of capture session setup fileprivate var setupResult = SessionSetupResult.success @@ -254,10 +225,6 @@ open class SwiftyCamViewController: UIViewController { fileprivate var previewLayer : PreviewView! - /// UIView for front facing flash - - fileprivate var flashView : UIView? - /// Pan Translation fileprivate var previousPanTranslation : CGFloat = 0.0 @@ -412,9 +379,6 @@ open class SwiftyCamViewController: UIViewController { self.isSessionRunning = false } - //Disble flash if it is currently enabled - disableFlash() - // Unsubscribe from device rotation notifications rotationCoordinator = nil } @@ -439,17 +403,6 @@ open class SwiftyCamViewController: UIViewController { return } - if currentCamera == .rear && flashMode == .on { - enableFlash() - } - - if currentCamera == .front && flashMode == .on { - flashView = UIView(frame: view.frame) - flashView?.backgroundColor = UIColor.white - flashView?.alpha = 0.85 - previewLayer.addSubview(flashView!) - } - sessionQueue.async { [unowned self] in if !movieFileOutput.isRecording { if UIDevice.current.isMultitaskingSupported { @@ -497,15 +450,7 @@ open class SwiftyCamViewController: UIViewController { if self.isVideoRecording == true { self.isVideoRecording = false movieFileOutput!.stopRecording() - disableFlash() - if currentCamera == .front && flashMode == .on && flashView != nil { - UIView.animate(withDuration: 0.1, delay: 0.0, options: .curveEaseInOut, animations: { - self.flashView?.alpha = 0.0 - }, completion: { (_) in - self.flashView?.removeFromSuperview() - }) - } DispatchQueue.main.async { self.cameraDelegate?.swiftyCam(self, didFinishRecordingVideo: self.currentCamera) } @@ -556,9 +501,6 @@ open class SwiftyCamViewController: UIViewController { self.session.startRunning() } - - // If flash is enabled, disable it as the torch is needed for front facing camera - disableFlash() } // MARK: Private Functions @@ -770,53 +712,6 @@ open class SwiftyCamViewController: UIViewController { ?? AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: position) } - /// Enable flash - - fileprivate func enableFlash() { - if self.isCameraTorchOn == false { - toggleFlash() - } - } - - /// Disable flash - - fileprivate func disableFlash() { - if self.isCameraTorchOn == true { - toggleFlash() - } - } - - /// Toggles between enabling and disabling flash - - fileprivate func toggleFlash() { - guard self.currentCamera == .rear else { - // Flash is not supported for front facing camera - return - } - - let device = AVCaptureDevice.default(for: AVMediaType.video) - // Check if device has a flash - if (device?.hasTorch)! { - do { - try device?.lockForConfiguration() - if (device?.torchMode == AVCaptureDevice.TorchMode.on) { - device?.torchMode = AVCaptureDevice.TorchMode.off - self.isCameraTorchOn = false - } else { - do { - try device?.setTorchModeOn(level: 1.0) - self.isCameraTorchOn = true - } catch { - print("[SwiftyCam]: \(error)") - } - } - device?.unlockForConfiguration() - } catch { - print("[SwiftyCam]: \(error)") - } - } - } - /// Sets whether SwiftyCam should enable background audio from other applications or sources fileprivate func setBackgroundAudioPreference() {