---
title: timeRange
framework: AVKit
role: symbol
role_heading: Instance Property
platforms: [iOS 27.0+, iPadOS 27.0+, Mac Catalyst 27.0+]
path: avkit/avplaybackuserinterfacetimecontrollable-50vcy/timerange
---

# timeRange

The time range representing the total duration and bounds of the media content.

## Declaration

```swift
@MainActor var timeRange: CMTimeRange { get }
```

## Discussion

Discussion For on-demand content, start is typically zero and duration is the total length of the content. For live content without DVR, set timeRange to a zero-duration range at the current live edge and advance it as the edge moves; seekableTimeRanges must be nil or empty. For live content with DVR, set timeRange to the available DVR window and advance both start and end as the window rolls. Use seekableTimeRanges to indicate which portion is seekable. The duration is always a finite, non-negative value.
