그것은 당신이 바로이 같은 파일에 녹음을 시작할 수 없음을 밝혀 :
let session = AVCaptureSession()
session.beginConfiguration()
// add inputs, outputs
session.commitConfiguration()
videoFileOutput.startRecording(to: filePath, recordingDelegate: self)
이 자동으로을 실패하고 전혀 아무것도 할 것입니다!
대신, 세션이 AVCaptureSessionDidStartRunning
통지를 등록하여 시작 기다릴 필요가 즉시 세션 후 임시 파일에 기록을 시작하기 위해 다음과 같이이 방법을 구현할 수
NotificationCenter.default.addObserver(self, selector: #selector(sessionDidStartRunning), name: .AVCaptureSessionDidStartRunning, object: session)
시작 :
@objc
func sessionDidStartRunning(notification: NSNotification) {
let session = notification.object as! AVCaptureSession
for output in session.outputs {
if let output = output as? AVCaptureMovieFileOutput {
let filePath = URL(fileURLWithPath: NSTemporaryDirectory() + "recording.mov")
try? FileManager.default.removeItem(at: filePath)
output.startRecording(to: filePath, recordingDelegate: self)
}
}
}