Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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!)

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

like image 864
Tzar Avatar asked Dec 05 '17 10:12

Tzar


People also ask

How do I enable ProRes video on my iPhone?

To set up ProRes, go to Settings > Camera > Formats, then turn on Apple ProRes.

What is ProRes video recording in iPhone?

Apple ProRes enables multistream, real-time editing performance while delivering professional image quality. With iOS 15.1 or later, your iPhone 13 Pro or iPhone 13 Pro Max can record videos in the Apple ProRes format in the Camera app using any of its cameras in Video mode.


1 Answers

I received a response from Brad Ford, an engineer from camera software team at Apple:

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.

like image 87
Tzar Avatar answered Oct 16 '22 17:10

Tzar