首页 > 解决方案 > UIImagePickerController:startVideoCapture() 不起作用

问题描述

我正在尝试使用 开始视频捕获UIImagePickerController,但.startVideoCapture()每次都返回 false。

import UIKit; import AVFoundation

class ViewController: UIViewController {
    var videoPickerController = UIImagePickerController()
    @IBOutlet weak var button: UIButton!
    
    var isRecording = false

    @IBAction func record() {
        if isRecording {
            videoPickerController.stopVideoCapture()
        } else {
            let res = videoPickerController.startVideoCapture()
            print(res) // always prints 'false', recording never starts
        }
        isRecording.toggle()
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        switch AVCaptureDevice.authorizationStatus(for: .video) {
        case .authorized:
            initCamera()
        case .notDetermined:
            AVCaptureDevice.requestAccess(for: .video) { [weak self] granted in
                if granted {
                    self?.initCamera()
                }
            }
        default:
            return
        }
    }
    
    private func initCamera() {
        videoPickerController.sourceType = .camera
        videoPickerController.mediaTypes = [UTType.movie.identifier]
        videoPickerController.allowsEditing = false
        videoPickerController.cameraCaptureMode = .video
        videoPickerController.cameraDevice = .front
        view.frame = videoPickerController.cameraOverlayView?.frame ?? .zero
        videoPickerController.cameraOverlayView = view
        videoPickerController.delegate = self
        videoPickerController.showsCameraControls = false
        videoPickerController.videoQuality = .typeIFrame960x540
        videoPickerController.videoMaximumDuration = 200
    }
}

extension ViewController3: UIImagePickerControllerDelegate, UINavigationControllerDelegate {
    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
        print("")
    }
}

可能是什么原因?谢谢您的帮助

标签: iosuiimagepickercontroller

解决方案


推荐阅读