我知道我的 Macbook 的網路攝像頭具有廣闊的視野。當我打開 Quicktime 應用程式并選擇我的 MacBooks 相機作為輸入時,我看到了一個不錯的寬視頻輸入。

現在,我有一個使用 Mac Catalyst 運行的 iOS 應用程式。這是我正在使用的構建組合。

當我運行這個應用程式時,我從網路攝像頭獲得了一個顯著裁剪的視頻源版本。

這是我設定的課程 AVCaptureSession
import Foundation
import AVFoundation
class BasicCamera: ObservableObject {
@Published var authorizationState: AVAuthorizationStatus = .notDetermined
let session = AVCaptureSession()
init() {
guard let device = AVCaptureDevice.default(for: .video) else {
fatalError("Could not make capture device.")
}
guard let input = try? AVCaptureDeviceInput(device: device) else {
fatalError("Could not make input")
}
session.beginConfiguration()
session.addInput(input)
session.commitConfiguration()
session.startRunning()
}
public func requestCameraPermission() async -> AVAuthorizationStatus {
return await withCheckedContinuation({ continuation in
AVCaptureDevice.requestAccess(for: .video) { [unowned self] didComplete in
self.authorizationState = AVCaptureDevice.authorizationStatus(for: .video)
continuation.resume(with: .success(self.authorizationState))
}
})
}
}
并將其添加到 ViewController 中,如下所示:
let preview = AVCaptureVideoPreviewLayer(session: session)
preview.removeFromSuperlayer()
preview.frame = self.view.bounds
self.view.layer.insertSublayer(preview, at: 0)
請注意,UIViewController我正在使用的 SwiftUI 是通過UIViewControllerRepresentable協議一致性引入的。
我嘗試了許多預設和發現會話引數,包括.buildInWidtAngleCamera但似乎無法顯示完整的相機解析度?除非我將它構建為實際的本地 Mac 應用程式,否則我在這里運氣不好?
uj5u.com熱心網友回復:
切換到Optimize interface for Mac它下Target>General>Deployment Info>Next To the Mac checkmark button。
很可能將相機識別為 iPad 的肖像
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/363653.html
