---
title: "generateSampleCursor(atPresentationTimeStamp:completionHandler:)"
framework: MediaExtension
role: symbol
role_heading: Instance Method
platforms: [macOS 14.0+]
path: "mediaextension/metrackreader/generatesamplecursor(atpresentationtimestamp:completionhandler:)"
---

# generateSampleCursor(atPresentationTimeStamp:completionHandler:)

Provides a new sample cursor that points to the sample at or near the specified presentation timestamp.

## Declaration

```swift
func generateSampleCursor(atPresentationTimeStamp presentationTimeStamp: CMTime, completionHandler: @escaping @Sendable ((any MESampleCursor)?, (any Error)?) -> Void)
```

```swift
func sampleCursor(atPresentationTimeStamp presentationTimeStamp: CMTime) async throws -> any MESampleCursor
```

## Parameters

- `presentationTimeStamp`: The presentation time stamp.
- `completionHandler`: The completion block to execute when the generate operation finishes.

## Discussion

Discussion The new sample cursor points to the last sample with a presentation time stamp (PTS) less than or equal to presentationTimeStamp, or if there are no such samples, the first sample in PTS order.

## See Also

### Getting track information

- [loadTrackInfo(completionHandler:)](mediaextension/metrackreader/loadtrackinfo(completionhandler:).md)
- [generateSampleCursorAtFirstSampleInDecodeOrder(completionHandler:)](mediaextension/metrackreader/generatesamplecursoratfirstsampleindecodeorder(completionhandler:).md)
- [generateSampleCursorAtLastSampleInDecodeOrder(completionHandler:)](mediaextension/metrackreader/generatesamplecursoratlastsampleindecodeorder(completionhandler:).md)
- [loadUneditedDuration(completionHandler:)](mediaextension/metrackreader/loaduneditedduration(completionhandler:).md)
- [loadTotalSampleDataLength(completionHandler:)](mediaextension/metrackreader/loadtotalsampledatalength(completionhandler:).md)
- [loadEstimatedDataRate(completionHandler:)](mediaextension/metrackreader/loadestimateddatarate(completionhandler:).md)
- [loadMetadata(completionHandler:)](mediaextension/metrackreader/loadmetadata(completionhandler:).md)
