---
title: CMTimebase
framework: coremedia
role: symbol
role_heading: Class
path: coremedia/cmtimebase
---

# CMTimebase

A model of a timeline under application control.

## Declaration

```swift
class CMTimebase
```

## Topics

### Timebases

- [farFuture](coremedia/cmtimebase/farfuture.md)
- [veryLongTimeInterval](coremedia/cmtimebase/verylongtimeinterval.md)

### Inspecting Timebases

- [time](coremedia/cmtimebase/time.md)
- [rate](coremedia/cmtimebase/rate.md)
- [source](coremedia/cmtimebase/source.md)
- [sourceClock](coremedia/cmtimebase/sourceclock.md)
- [sourceTimebase](coremedia/cmtimebase/sourcetimebase.md)
- [effectiveRate](coremedia/cmtimebase/effectiverate.md)
- [timeAndRate](coremedia/cmtimebase/timeandrate.md)
- [ultimateSourceClock](coremedia/cmtimebase/ultimatesourceclock.md)

### Adding and Removing Timers

- [addTimer(_:on:)](coremedia/cmtimebase/addtimer(_:on:).md)
- [addTimer(_:)](coremedia/cmtimebase/addtimer(_:).md)
- [removeTimer(_:)](coremedia/cmtimebase/removetimer(_:)-4f6re.md)
- [removeTimer(_:)](coremedia/cmtimebase/removetimer(_:)-448o2.md)

### Getting and Setting Time

- [setTime(_:)](coremedia/cmtimebase/settime(_:).md)
- [time(withTimescale:rounding:)](coremedia/cmtimebase/time(withtimescale:rounding:).md)

### Getting and Setting the Timebase Rate

- [setRate(_:)](coremedia/cmtimebase/setrate(_:).md)
- [setRateAndAnchorTime(rate:anchorTime:referenceTime:)](coremedia/cmtimebase/setrateandanchortime(rate:anchortime:referencetime:).md)

### Setting Timers

- [setTimerNextFireTime(_:fireTime:)](coremedia/cmtimebase/settimernextfiretime(_:firetime:)-13hjt.md)
- [setTimerNextFireTime(_:fireTime:)](coremedia/cmtimebase/settimernextfiretime(_:firetime:)-2yvaa.md)
- [setTimerToFireImmediately(_:)](coremedia/cmtimebase/settimertofireimmediately(_:)-9t3wi.md)
- [setTimerToFireImmediately(_:)](coremedia/cmtimebase/settimertofireimmediately(_:)-4903g.md)

### Pausing Time Notifications

- [notificationBarrier()](coremedia/cmtimebase/notificationbarrier().md)

### Setting the Anchor Time

- [setAnchorTime(_:referenceTime:)](coremedia/cmtimebase/setanchortime(_:referencetime:).md)

### Notifications

- [effectiveRateChanged](coremedia/cmtimebase/effectiveratechanged.md)
- [timeJumped](coremedia/cmtimebase/timejumped.md)

### Constants

- [CMTimebase.Error](coremedia/cmtimebase/error.md)
- [CMTimebase.NotificationKey](coremedia/cmtimebase/notificationkey.md)
- [typeID](coremedia/cmtimebase/typeid.md)

### Deprecations

- [master](coremedia/cmtimebase/master.md)
- [masterClock](coremedia/cmtimebase/masterclock.md)
- [masterTimebase](coremedia/cmtimebase/mastertimebase.md)
- [ultimateMasterClock](coremedia/cmtimebase/ultimatemasterclock.md)

### Initializers

- [init(referencing:)](coremedia/cmtimebase/init(referencing:).md)

### Type Aliases

- [CMTimebase.T](coremedia/cmtimebase/t.md)

### Default Implementations

- [CMSyncProtocol Implementations](coremedia/cmtimebase/cmsyncprotocol-implementations.md)

## Relationships

### Conforms To

- [CMSyncProtocol](coremedia/cmsyncprotocol.md)
- [Copyable](swift/copyable.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Data Types

- [CMSync](coremedia/cmsync.md)
- [CMSyncProtocol](coremedia/cmsyncprotocol.md)
