zoukankan      html  css  js  c++  java
  • iOS 获取摄像头当前方向

    在做二维码扫描和直播获取视频流的过程中,可能会用到

    AVCaptureDevice
    
    AVCaptureVideoPreviewLayer
    
    AVCaptureSession

    这几个参数,其中

    1、定义显示layer

    var preview:AVCaptureVideoPreviewLayer! = nil

    2、获取摄像头方向

    self.preview = AVCaptureVideoPreviewLayer(session: self.session)
    self.preview.videoGravity = AVLayerVideoGravityResizeAspectFill
    self.preview.connection.videoOrientation = self.getDeviceDirection()

    重点就是这里getDeviceDirection方法,这里我的做法就是根据当前状态栏方向判断摄像头方向。

    代码实现:

      /// 获取当前摄像头方向
        ///
        /// - Returns: <#return value description#>
        func getDeviceDirection() -> AVCaptureVideoOrientation{
            switch UIApplication.shared.statusBarOrientation {
            case .landscapeLeft:
                return AVCaptureVideoOrientation.landscapeLeft
            case .landscapeRight:
                return AVCaptureVideoOrientation.landscapeRight
            case .portrait:
                return AVCaptureVideoOrientation.portrait
            case .portraitUpsideDown:
                return AVCaptureVideoOrientation.portraitUpsideDown
            default:
                return AVCaptureVideoOrientation.landscapeRight
            }
        }
        
  • 相关阅读:
    yarn-cli 缓存
    html DOM 的继承关系
    JavaScript basics: 2 ways to get child elements with JavaScript
    svn merge 的区别
    virtualbox 设置windows 于ubuntu虚拟机共享文件夹
    angular 学习理解笔记
    e.which
    痛定思痛
    【转】反思 成长
    日语学习词汇量
  • 原文地址:https://www.cnblogs.com/yajunLi/p/6682035.html
Copyright © 2011-2022 走看看