首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义相机高宽比

自定义相机高宽比
EN

Stack Overflow用户
提问于 2015-08-25 14:48:24
回答 1查看 1.7K关注 0票数 2

我正在用AVFoundation创建一个自定义摄像机视图,代码如下:

代码语言:javascript
复制
    captureSession.addInput(AVCaptureDeviceInput(device: captureDevice, error: &err))
    captureSession.addOutput(stillOutput)
    if err != nil {
        println("error: \(err?.localizedDescription)")
    }

    previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
    previewLayer?.videoGravity=AVLayerVideoGravityResizeAspectFill

而且效果很好。然后,我用以下代码在屏幕上捕获和显示图像:

代码语言:javascript
复制
    self.stillOutput.captureStillImageAsynchronouslyFromConnection(videoConnection){
                            (imageSampleBuffer : CMSampleBuffer!, _) in

let imageDataJpeg = AVCaptureStillImageOutput.jpegStillImageNSDataRepresentation(imageSampleBuffer)
var pickedImage: UIImage = UIImage(data: imageDataJpeg)!
var previewImageView=UIImageView()
self.previewImageView.frame = CGRect(x:0, y:0, width:UIScreen.mainScreen().bounds.width, height:UIScreen.mainScreen().bounds.height)
self.previewImageView.layer.zPosition = -1
self.view.addSubview(self.previewImageView)

但是,当我想要显示预览图像时,相机工作正常--它看起来如下:

相机:

镜头预览后的

它应该看起来像摄像机的视角。我怎么才能修好它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-23 19:19:02

如果您想要使高宽比3:4,您应该设置:

captureSession.sessionPreset = .photo

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32207212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档