我正在编写一个应用程序,使用AVCaptureSession与AVCaptureVideoDataOutput作为输出进行一些实时视频处理,并且AVCaptureDeviceInput与视频文件(不再需要实时)作为输入.
在AVCaptureSession而不是相机的输入中可以使用视频文件吗?
如果不可能,使用iOS上的opencv(同时或顺序)的视频捕获处理视频文件的最佳方法是什么?
解决方法
由于您可以访问原始视频文件帧(从AVCaptureVideoDataOutput),您可以将每个帧转换为cv :: Mat对象(表示图像的opencv矩阵).然后在每个单独的框架上进行图像处理.
查看https://developer.apple.com/library/ios/qa/qa1702/_index.html用于使用相机的实时示例;您可以使用cvMatFromUIImage将您的UIImage转换为cv :: Mat.