2017-07-04 18 views
0

これまで完璧に動作するカスタムカメラを作成しました。私は、ビデオを録画し、エラーやバグのない録画を停止することができます。このカメラに追加したい機能は、録画を一時停止する機能です。AVFoundationを使ってビデオ録画を一時停止する

多くのオンライン調査の後、解決策は、一時停止ボタンがクリックされたときに実際に録画を停止し、再開ボタンがクリックされたときに別の録画を開始することです。その後、あなたは一緒にビデオをマージするはずです。

ビデオをマージする方法がわかりません。オンラインで多くのことを見ていて、解決策を見つけることができませんでした。

ありがとうございました!

これは私の録画ボタン機能

@IBAction func recordVideoButtonPressed(sender:AnyObject) { 

    if self.movieFileOutput.isRecording { 
     isRecording = false 
     self.movieFileOutput.stopRecording() 
    } else { 
     isRecording = true 
     self.movieFileOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation = self.videoOrientation() 
     self.movieFileOutput.maxRecordedDuration = self.maxRecordedDuration() 
     self.movieFileOutput.startRecording(toOutputFileURL: URL(fileURLWithPath: self.videoFileLocation()), recordingDelegate: self) 
    } 

    self.updateRecordButtonTitle() 

} 

これは私の一時停止ボタンの機能

func pauseVideo() { 
    if isRecording { 
     if isPaused == false { 
      isPaused = true 
      recordButton.isEnabled = false 
      recordButton.backgroundColor = UIColor.wetAsphalt 
      recordButton.setTitle("Paused", for: .normal) 
     } else { 
      isPaused = false 
      recordButton.isEnabled = true 
      recordButton.backgroundColor = UIColor.red 
      updateRecordButtonTitle() 
     } 
    } else { 
     return 
    } 
} 
+0

あなたは以下を提供することができます:func captureOutput(_ captureOutput:AVCaptureOutput !, didOutputSampleBuffer sampleBuffer:CMSampleBuffer !,接続:AVCaptureConnection!)メソッドコード? – ninjaproger

答えて

1

あなたはAVAssetWriterですべてのフレームを書き込むことができますです。カメラからフレームを取得するには、AVCaptureVideoDataOutputを使用する必要があります。 Here例を見つけることができます。

またはビデオチェックアウトthisチュートリアルをマージしたい場合。

関連する問題