gpt4 book ai didi

ios - 使用 AVFoundation 在 UIView 中显示相机源

转载 作者:行者123 更新时间:2023-12-02 02:30:28 35 4
gpt4 key购买 nike

我正在尝试在 UIView 中显示相机的提要。后来我需要能够分析视频帧,所以据我了解,我需要使用 AVFoundation 来完成此操作。

到目前为止我所拥有的:

import UIKit
import AVFoundation

class ViewController: UIViewController {

@IBOutlet weak var camView: UIView!

var captureSession:AVCaptureSession?
var videoPreviewLayer:AVCaptureVideoPreviewLayer?
var videoCaptureDevice: AVCaptureDevice?
var input: AnyObject?

override func viewDidLoad() {
super.viewDidLoad()

videoCaptureDevice = AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeVideo)
do {
input = try AVCaptureDeviceInput(device: videoCaptureDevice)
} catch {
print("video device error")
}
captureSession = AVCaptureSession()
captureSession?.addInput(input as! AVCaptureInput)
videoPreviewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
videoPreviewLayer?.videoGravity = AVLayerVideoGravityResizeAspectFill
videoPreviewLayer?.frame = camView.layer.bounds
captureSession?.startRunning()
}
}

camView 可见,但不显示任何内容。

该应用在首次运行时请求使用相机的权限,并已获得该权限。

设置断点并检查 captureSessionvideoPreviewLayervideoCaptureDeviceinput 确认它们均已设置。

最佳答案

视频预览层未添加到camView中。因此,您看不到 camView 中运行的相机 session 。

添加这一行:

    camView.layer.addSublayer(videoPreviewLayer) 

关于ios - 使用 AVFoundation 在 UIView 中显示相机源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35869722/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com