2017-06-15 79 views
0

目前我正在嘗試使用AVCaptureMovieFileOutput來記錄視頻並將其保存到照片庫中。但是,一旦照片庫的URL傳遞到startRecording功能,它聲稱「在此服務器上找不到請求的URL」。什麼是創建URL的正確方法,以便startRecording功能可以識別它?Swift AVCaptureMovieFileOutput無法找到URL

這裏是我初始化的網址:

paths = try FileManager.default.url(for: .picturesDirectory, in:.userDomainMask, appropriateFor: nil, create: false) 
movieURL = try paths.appendingPathComponent("output.mov") 

這是movieURL被傳遞到的startRecording功能:

func recordVideo(_sender: AnyObject?){ 
    videoOutput.startRecording(toOutputFileURL: movieURL, recordingDelegate:  mself) 

    let delayTime = 5.0 
    DispatchQueue.main.asyncAfter(deadline: DispatchTime.now()+delayTime){ 
     print("stopping") 
     self.videoOutput.stopRecording() 
    } 
} 

這是錯誤消息:

成品可選(錯誤域= NSURLErrorDomain代碼= -1100「在此服務器上找不到請求的URL」UserInfo = {NSLocalizedDescription =在此服務器上未找到請求的URL。,NSUnderlyi ngError = 0x15e88cc0 {錯誤域= NSPOSIXErrorDomain代碼= 2 「沒有這樣的文件或目錄」},AVErrorRecordingSuccessfullyFinishedKey = FALSE}) xtopping

任何幫助,將不勝感激。

+0

嘗試documentDirectory而不是圖片 –

+1

非常感謝Leo它的工作。如果你發佈一個答案,我會給你一個upvote /檢查! – NFarrell

+0

不客氣 –

回答

0

您試圖將其保存在錯誤的目錄中。您可以將其保存在documentDirectory中。有關可以保存App文檔的位置的更多信息,您可以閱讀有關File System Basics的Apple開發人員文檔。