How to record video in ProRes codec on iOS?

I would like to capture video from device’s back camera directly to ProRes codec, now that .proRes422 and .proRes4444 are available as AVVideoCodecType options in iOS 11.


But I receive an error that recording is “unsupported given the current configuration”, on both iPhone X and second generation iPad Pro, when trying to capture video with the following code:


movieFileOutput.setOutputSettings([AVVideoCodecKey: AVVideoCodecType.proRes422], for: movieFileOutputConnection!)


(availableVideoCodecTypes returns only HEVC, H.264, and Motion JPEG as supported for AVCaptureMovieFileOutput.)


If this approach is wrong, can the captured video be encoded by using AVCaptureVideoDataOutput alongside AVAssetWriter? If it can, then how?

Accepted Reply

The AVVideoCodecType (string) is available, meaning you can compile code that references this constant without a compile error. But AVCaptureMovieFileOutput is telling you the truth. ProRes is not supported on iOS.

Replies

I asked the same question on Stack Overflow.

The AVVideoCodecType (string) is available, meaning you can compile code that references this constant without a compile error. But AVCaptureMovieFileOutput is telling you the truth. ProRes is not supported on iOS.

Will prores be supported on iOS anytime soon?