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

# loadUneditedDuration(completionHandler:)

Returns the duration of the track, disregarding edits.

## Declaration

```swift
optional func loadUneditedDuration(completionHandler: @escaping @Sendable (CMTime, (any Error)?) -> Void)
```

```swift
optional func uneditedDuration() async throws -> CMTime
```

## Parameters

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

## Discussion

Discussion Media Toolbox uses this information to validate edit information and to check if the media is suitable for gapless playback.

## 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)
- [generateSampleCursorAtLastSampleInDecodeOrder(completionHandler:)](mediaextension/metrackreader/generatesamplecursoratlastsampleindecodeorder(completionhandler:).md)
- [loadTotalSampleDataLength(completionHandler:)](mediaextension/metrackreader/loadtotalsampledatalength(completionhandler:).md)
- [loadEstimatedDataRate(completionHandler:)](mediaextension/metrackreader/loadestimateddatarate(completionhandler:).md)
- [loadMetadata(completionHandler:)](mediaextension/metrackreader/loadmetadata(completionhandler:).md)
