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

# generateSampleCursorAtLastSampleInDecodeOrder(completionHandler:)

Provides a new sample cursor that points to the last sample in decode order.

## Declaration

```swift
func generateSampleCursorAtLastSampleInDecodeOrder(completionHandler: @escaping @Sendable ((any MESampleCursor)?, (any Error)?) -> Void)
```

```swift
func sampleCursorAtLastSampleInDecodeOrder() async throws -> any MESampleCursor
```

## Parameters

- `completionHandler`: The completion block to execute when the generate operation finishes.

## Discussion

Discussion The new sample cursor points to the last sample in decode order, regardless of presentation time stamp (PTS).

## See Also

### Getting track information

- [loadTrackInfo(completionHandler:)](mediaextension/metrackreader/loadtrackinfo(completionhandler:).md)
- [generateSampleCursor(atPresentationTimeStamp:completionHandler:)](mediaextension/metrackreader/generatesamplecursor(atpresentationtimestamp:completionhandler:).md)
- [generateSampleCursorAtFirstSampleInDecodeOrder(completionHandler:)](mediaextension/metrackreader/generatesamplecursoratfirstsampleindecodeorder(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)
