今日、AVCaptureSession に問題があります。
私の問題は、MaxRecordedDuration を 23 秒に設定すると、23 秒に達してもレコーダーがまだ記録中の場合、エラーで停止することです。プロセス中に何が起こるかについては問題ありませんが、最大記録時間に達した後のビデオには音声が含まれていません! これは、maxDuration を設定する方法です。
let maxDurationSeconds: Float64 = self.remainingVideoDuration
let maxDurationPreferredTimeScale: Int32 = 600
let maxRecordedDuration = CMTime(seconds: maxDurationSeconds, preferredTimescale: maxDurationPreferredTimeScale)
FakeMovieOutput.maxRecordedDuration = maxRecordedDuration
Fileoutput のエラー コードは「-11810」で、メッセージは「Recording Stopped」です。エラーは出ますが、outputFileURL も表示されます。
支援を試みる前に考慮すべきことの 1 つは、音声が失われるのは、最大再生時間が満たされている場合のみです。