Show completo de câmara de largura a partir do Mac câmara quando executar o aplicativo via Mac Catalisador

0

Pergunta

Eu sei que o meu Macbook webcam tem um amplo campo de visão. Quando eu abrir o Quicktime aplicativo e selecione meus MacBooks câmara como a entrada de eu ver um bom ampla feed de vídeo como este.

enter image description here

Agora, eu tenho um aplicativo para iOS que eu estou correndo usando o Mac Catalisador. Aqui está a construir combinação que estou usando.

enter image description here

Quando eu executar esse aplicativo eu obter uma significativa versão cortada do feed de vídeo a partir da web cam.

enter image description here

Aqui é a sala de aula, onde eu configurar o 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))
            }
        })
    }
    
}

E adicioná-lo para o ViewController como este:

let preview = AVCaptureVideoPreviewLayer(session: session)
preview.removeFromSuperlayer()  
preview.frame = self.view.bounds      
self.view.layer.insertSublayer(preview, at: 0)

Observe que o UIViewController Eu estou usando é trazido para SwiftUI via UIViewControllerRepresentable protocolo de conformidade.

Eu tentei uma série de presets e sessões de descoberta parâmetros, incluindo .buildInWidtAngleCamera mas parece que não pode ficar-lhe para mostrar a completa resolução da câmera? Eu estou fora de sorte aqui, a menos que eu construí-lo como um Aplicativo nativo do Mac?

apple-m1 avfoundation swift video
2021-11-22 21:53:49
1

Melhor resposta

2

Mude para Optimize interface for Mac é sob Target>General>Deployment Info>Next To the Mac checkmark button.

É provável identificar a câmera como retrato para o iPad

2021-11-23 00:12:21

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................