2017-06-16 65 views
0

目前我在AVCaptureSession中使用AVCaptureMovieFileOutput和AVCaptureVideoDataOutput。我試圖一次使用這兩個委託方法的功能。問題是,當我將兩種類型的輸出添加到AVCaptureSession時,只調用一個委託方法。同時使用AVCaptureMovieFileOutput和AVCaptureVideoDataOutput委託方法

我這樣做的原因是我可以錄製視頻(使用AVCaptureMovieFileOutput的捕獲委託方法)並同時處理視頻的幀(使用AVCaptureVideoDataOutput的captureOutput委託方法)。

有沒有一種方法可以將captureOutput和capture委託方法合併到我的AVCaptureSession中?

如果這是不可能的,有沒有辦法解決這個問題?

任何幫助,將不勝感激。

回答

0

您需要使用AVCaptureVideoDataOutput,它有一個委託方法captureOutput:didOutputSampleBuffer:fromConnection:Here你可以找到一個用法的例子。而這link可以是有用的

+0

你好Tiko。感謝您的迴應。我現在的問題是我有一個AVCaptureVideoDataOutput和一個AVCaptureMovieFileOutput一起工作。兩者都有委託方法。但是,如果將它們作爲AVCaptureSession的輸出添加它們,它們不會一起工作,並且不能同時使用captureOutput和capture委託方法。我的問題是,有沒有一種方法可以在一個代理方法中使用這兩種代理方法的功能? – NFarrell

+0

https://stackoverflow.com/questions/3968879/simultaneous-avcapturevideodataoutput-and-avcapturemoviefileoutput看到這個答案。看來你不能同時使用兩個代表,你可以嘗試導出視頻AVAssetWriter – Tiko

+0

真棒謝謝Tiko。會給那一槍。 – NFarrell