---
title: "CMSampleBufferSetInvalidateCallback(_:callback:refcon:)"
framework: coremedia
role: symbol
role_heading: Function
path: "coremedia/cmsamplebuffersetinvalidatecallback(_:callback:refcon:)"
---

# CMSampleBufferSetInvalidateCallback(_:callback:refcon:)

Sets the sample buffer’s invalidation callback.

## Declaration

```swift
func CMSampleBufferSetInvalidateCallback(_ sbuf: CMSampleBuffer, callback invalidateCallback: CMSampleBufferInvalidateCallback, refcon invalidateRefCon: UInt64) -> OSStatus
```

## Parameters

- `sbuf`: The sample buffer being modified.
- `invalidateCallback`: Reference to a function to be called during CMSampleBufferInvalidate.
- `invalidateRefCon`: Reference constant to be passed to invalidateCallback.

## Return Value

Return Value A result code. See Sample Buffer Error Codes.

## Discussion

Discussion A sample buffer can only have one invalidation callback. The invalidation callback isn’t called during ordinary sample buffer finalization.

## Topics

### Callbacks

- [CMSampleBufferInvalidateCallback](coremedia/cmsamplebufferinvalidatecallback.md)

## See Also

### Invalidating Sample Buffers

- [CMSampleBufferSetInvalidateHandler(_:invalidateHandler:)](coremedia/cmsamplebuffersetinvalidatehandler(_:invalidatehandler:).md)
- [CMSampleBufferInvalidate(_:)](coremedia/cmsamplebufferinvalidate(_:).md)
- [CMSampleBufferIsValid(_:)](coremedia/cmsamplebufferisvalid(_:).md)
