我要在录制时分析视频。 我有分析功能来分析视频。 但它需要视频的二进制数据。 我能用什么?
答案 0 :(得分:0)
您需要在AVCaptureVideoDataOutput
的{{1}}对象上设置示例缓冲区委托。确保您设置的样本缓冲区委托采用以下协议AVCaptureSession
。下面是一个如何设置样本缓冲区委托的示例,假设您调用它的对象采用我提到的协议。
AVCaptureVideoDataOutputSampleBufferDelegate
然后你需要实现以下方法
[captureOutput setSampleBufferDelegate:self queue:dispatch_get_main_queue()];
这将由您的- (void)captureOutput:(AVCaptureOutput *)captureOutput
didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer
fromConnection:(AVCaptureConnection *)connection
对象调用,视频的二进制数据将位于AVCaptureVideoDataOutput
。
注意sampleBuffer
只包含一部分数据。