---
title: AVCaptureTimecodeGenerator
framework: AVFoundation
role: symbol
role_heading: Class
platforms: [iOS 26.0+, iPadOS 26.0+, Mac Catalyst 26.0+, macOS 26.0+, tvOS 26.0+]
path: avfoundation/avcapturetimecodegenerator
---

# AVCaptureTimecodeGenerator

Generates and synchronizes timecode data from various sources for precise video and audio synchronization.

## Declaration

```swift
class AVCaptureTimecodeGenerator
```

## Overview

Overview The AVCaptureTimecodeGenerator class supports multiple timecode sources, including frame counting, system clock synchronization, and MIDI timecode input (MTC). Suitable for playback, recording, or other time-sensitive operations where precise timecode metadata is required. Use the startSynchronization(source:) method to set up the desired timecode source.

## Topics

### Generating timecode

- [generateInitialTimecode()](avfoundation/avcapturetimecodegenerator/generateinitialtimecode().md)

### Managing sources

- [currentSource](avfoundation/avcapturetimecodegenerator/currentsource.md)
- [availableSources](avfoundation/avcapturetimecodegenerator/availablesources.md)
- [frameCountSource](avfoundation/avcapturetimecodegenerator/framecountsource.md)
- [realTimeClockSource](avfoundation/avcapturetimecodegenerator/realtimeclocksource.md)
- [startSynchronization(source:)](avfoundation/avcapturetimecodegenerator/startsynchronization(source:).md)

### Configuring the generator

- [synchronizationTimeout](avfoundation/avcapturetimecodegenerator/synchronizationtimeout.md)
- [timecodeAlignmentOffset](avfoundation/avcapturetimecodegenerator/timecodealignmentoffset.md)
- [timecodeFrameDuration](avfoundation/avcapturetimecodegenerator/timecodeframeduration.md)
- [setDelegate(_:queue:)](avfoundation/avcapturetimecodegenerator/setdelegate(_:queue:).md)

### Handling delegate callbacks

- [delegate](avfoundation/avcapturetimecodegenerator/delegate.md)
- [delegateCallbackQueue](avfoundation/avcapturetimecodegenerator/delegatecallbackqueue.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Timecode generation

- [AVCaptureTimecodeGeneratorDelegate](avfoundation/avcapturetimecodegeneratordelegate.md)
- [AVCaptureTimecodeGenerator.SynchronizationStatus](avfoundation/avcapturetimecodegenerator/synchronizationstatus.md)
- [AVCaptureTimecode.Source](avfoundation/avcapturetimecode/source.md)
- [AVCaptureTimecode.SourceType](avfoundation/avcapturetimecode/sourcetype-swift.enum.md)
- [AVCaptureTimecode](avfoundation/avcapturetimecode.md)
- [advanced(_:by:)](avfoundation/avcapturetimecode/advanced(_:by:).md)
- [createMetadataSampleBuffer(from:associatedWithPresentationTimeStamp:)](avfoundation/avcapturetimecode/createmetadatasamplebuffer(from:associatedwithpresentationtimestamp:).md)
- [createMetadataSampleBuffer(from:forDuration:)](avfoundation/avcapturetimecode/createmetadatasamplebuffer(from:forduration:).md)
