---
title: VTDecompressionSessionSetMultiImageCallback
framework: videotoolbox
role: symbol
role_heading: Function
path: videotoolbox/vtdecompressionsessionsetmultiimagecallback
---

# VTDecompressionSessionSetMultiImageCallback

Provides a callback capable of receiving multiple images for individual frame decoding requests.

## Declaration

```occ
extern OSStatus VTDecompressionSessionSetMultiImageCallback(VTDecompressionSessionRef decompressionSession, VTDecompressionOutputMultiImageCallback outputMultiImageCallback, void *outputMultiImageRefcon);
```

## Parameters

- `decompressionSession`: The decompression session.
- `outputMultiImageCallback`: A callback to handle multi-image output.
- `outputMultiImageRefcon`: Your reference value for the session.

## Return Value

Return Value An OSStatus value that indicates the result of the operation.

## Discussion

Discussion In multi-image decompression, a single video sample contains a single frame (with one PTS) that the system decodes to produce multiple images. The system uses the multi-image callback when the video decoder outputs CMTaggedBufferGroupRef objects, or when frame decoding fails and returns a nonzero status. The original single-image callback is only used in the case where the video decoder outputs a CVImageBuffer instead of a CMTaggedBufferGroupRef.

## Topics

### Output Callback

- [VTDecompressionOutputMultiImageCallback](videotoolbox/vtdecompressionoutputmultiimagecallback.md)

## See Also

### Decoding Multi-Image Frames

- [VTIsStereoMVHEVCDecodeSupported()](videotoolbox/vtisstereomvhevcdecodesupported().md)
- [VTDecompressionSessionDecodeFrameWithMultiImageCapableOutputHandler](videotoolbox/vtdecompressionsessiondecodeframewithmultiimagecapableoutputhandler.md)
- [VTDecompressionMultiImageCapableOutputHandler](videotoolbox/vtdecompressionmultiimagecapableoutputhandler.md)
