---
title: VTDecompressionMultiImageCapableOutputHandler
framework: videotoolbox
role: symbol
role_heading: Type Alias
path: videotoolbox/vtdecompressionmultiimagecapableoutputhandler
---

# VTDecompressionMultiImageCapableOutputHandler

A type alias for callback that the system invokes when it finishes decompressing a frame.

## Declaration

```swift
typealias VTDecompressionMultiImageCapableOutputHandler = @Sendable (OSStatus, VTDecodeInfoFlags, CVImageBuffer?, __CMTaggedBufferGroup?, CMTime, CMTime) -> Void
```

## Parameters

- `status`: A value of noErr if decompression succeeds; otherwise, an error code if decompression fails.
- `infoFlags`: A doc://com.apple.videotoolbox/documentation/VideoToolbox/VTEncodeInfoFlags pointer to receive information about the decode operation. The doc://com.apple.videotoolbox/documentation/VideoToolbox/VTDecodeInfoFlags/asynchronous bit may be set if the decode is (or was) running asynchronously. The doc://com.apple.videotoolbox/documentation/VideoToolbox/VTDecodeInfoFlags/frameDropped bit may be set if the frame was dropped (synchronously). Pass NULL if you don’t want to receive this information.
- `imageBuffer`: The decompressed pixel buffer.
- `taggedBufferGroup`: A doc://com.apple.documentation/documentation/CoreMedia/CMTaggedBufferGroupRef that contains the multiple images for the decompressed frame, if the decompression succeeds; otherwise, NULL.
- `presentationTimeStamp`: The frame’s presentation timestamp; otherwise, doc://com.apple.documentation/documentation/CoreMedia/CMTime/invalid if the value isn’t available.
- `presentationDuration`: The frame’s presentation duration; otherwise, doc://com.apple.documentation/documentation/CoreMedia/CMTime/invalid if the value isn’t available.

## Discussion

Discussion Pass a callback of this type to VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler to handle the decompressed frame output. The system doesn’t necessarily invoke the callback in display order. If the multi-image decompression call returns an error, the system doesn’t call this block. important: The video decompressor may still reference the pixel buffers that this callback provides if the imageBufferModifiable flag isn’t set. It’s not safe to modify the returned pixel buffers in this state.

## See Also

### Decoding Multi-Image Frames

- [VTIsStereoMVHEVCDecodeSupported()](videotoolbox/vtisstereomvhevcdecodesupported().md)
