0
Попытка записать видео со скоростью 60 кадров в секунду с использованием AVFoundation и Swift, но код ниже не работает. Видео по-прежнему записывается со скоростью 30 кадров в секунду, даже если установлено 60 кадров в секунду.iOS 9 запись видео на 60 кадров в секунду
captureSession = AVCaptureSession()
var finalFormat = AVCaptureDeviceFormat()
var maxFps: Double = 0
for vFormat in camera!.formats
{
var ranges = vFormat.videoSupportedFrameRateRanges as! [AVFrameRateRange]
let frameRates = ranges[0]
if frameRates.maxFrameRate >= maxFps && frameRates.maxFrameRate <= 60
{
maxFps = frameRates.maxFrameRate
finalFormat = vFormat as! AVCaptureDeviceFormat
}
}
print(String(maxFps) + " fps"); //prints 60 fps
try camera!.lockForConfiguration()
camera!.activeFormat = finalFormat
camera!.activeVideoMinFrameDuration = CMTimeMake(1, 60)
camera!.activeVideoMaxFrameDuration = CMTimeMake(1, 60)
camera!.unlockForConfiguration()
let video = try AVCaptureDeviceInput(device: camera) as AVCaptureDeviceInput
captureSession!.addInput(video)
let audio = try AVCaptureDeviceInput(device: AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)) as AVCaptureDeviceInput
captureSession!.addInput(audio)
fileOutput = AVCaptureMovieFileOutput()
captureSession?.addOutput(fileOutput)
captureSession!.startRunning()
Вы знаете, что только для iphone 6 или новее, есть эта функция, не так ли? – UlyssesR
есть. Я тестирую с помощью iphone 6s – user2800679
Устройство, использующее встроенную камеру, записывается со скоростью 60 кадров в секунду? – UlyssesR