---
title: CMTimeRange
framework: coremedia
role: symbol
role_heading: Structure
path: coremedia/cmtimerange
---

# CMTimeRange

A structure that represents a time range.

## Declaration

```swift
struct CMTimeRange
```

## Topics

### Creating Time Ranges

- [init()](coremedia/cmtimerange/init().md)
- [init(start:duration:)](coremedia/cmtimerange/init(start:duration:).md)
- [init(start:end:)](coremedia/cmtimerange/init(start:end:).md)

### Inspecting Time Ranges

- [start](coremedia/cmtimerange/start.md)
- [end](coremedia/cmtimerange/end.md)
- [duration](coremedia/cmtimerange/duration.md)
- [isValid](coremedia/cmtimerange/isvalid.md)
- [isEmpty](coremedia/cmtimerange/isempty.md)
- [isIndefinite](coremedia/cmtimerange/isindefinite.md)

### Finding Elements

- [containsTime(_:)](coremedia/cmtimerange/containstime(_:).md)
- [containsTimeRange(_:)](coremedia/cmtimerange/containstimerange(_:).md)

### Combining Time Ranges

- [intersection(_:)](coremedia/cmtimerange/intersection(_:).md)
- [union(_:)](coremedia/cmtimerange/union(_:).md)

### Constants

- [zero](coremedia/cmtimerange/zero.md)
- [invalid](coremedia/cmtimerange/invalid.md)

### Operators

- [!=(_:_:)](coremedia/cmtimerange/!=(_:_:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [CVAttachmentValueRepresentable](corevideo/cvattachmentvaluerepresentable.md)
- [Copyable](swift/copyable.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
