簡體   English   中英

在IOS應用中構建相機時出錯

[英]Errors building a camera in an IOS app

我正在嘗試在IOS應用程序中構建相機功能。 這是我的第一個錯誤:

無法將類型“ AVCaptureVideoPreviewLayer”的值分配給類型“ CALayer!”。

Swift也有為其分配屬性的問題

if previewLayer = AVCaptureVideoPreviewLayer(session: captureSession){

self.previewLayer = previewLayer
self.view.layer.addSublayer(self.previewLayer)
self.previewLayer.frame = self.view.layer.frame
captureSession.startRunning()

let dataOutput = AVCaptureVideoDataOutput()
dataOutput.videoSettings = [(kCVPixelBufferPixelFormatTypeKey as NSString):NSNumber(value:kCVPixelFormatType_32BGRA)] as [String : Any]

dataOutput.alwaysDiscardsLateVideoFrames = true

if captureSession.canAddOutput(dataOutput) {
    captureSession.addOutput(dataOutput)
}

captureSession.commitConfiguration()

let queue = DispatchQueue(label: "com.brianadvent.captureQueue")
    dataOutput.setSampleBufferDelegate(self, queue: queue)
}

它沒有編譯,因為第一行不是有效的if語句:

if previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)

即使是if-let在這里也不是有效的,因為該初始化程序不會失敗。 在沒有更多上下文的情況下,建議您完全刪除它,並將AVCaptureVideoPreviewLayer分配給您的previewLayer如下所示:

self.previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM