Type Alias

VTCompressionOutputHandler

Prototype for the block invoked when frame compression is complete.

Declaration

typedef void (^VTCompressionOutputHandler)(OSStatus status, VTEncodeInfoFlags infoFlags, CMSampleBufferRef sampleBuffer);

Parameters

status

noErr if compression was successful; an error code if compression was not successful.

infoFlags

Contains information about the encode operation.

The kVTEncodeInfo_Asynchronous bit may be set if the encode ran asynchronously.

The kVTEncodeInfo_FrameDropped bit may be set if the frame was dropped.

sampleBuffer

Contains the compressed frame if compression was successful and the frame was not dropped; otherwise, NULL.

Discussion

When you encode a frame, you pass in a callback block to be called for that compressed frame. This block is called in decode order (which is not necessarily the same as display order).