<!--
{
  "availability" : [
    "iOS: 7.0.0 -",
    "iPadOS: 7.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.9.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/AVVideoCompositionInstructionProtocol",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "AVFoundation"
    ],
    "preciseIdentifier" : "c:objc(pl)AVVideoCompositionInstruction"
  },
  "title" : "AVVideoCompositionInstructionProtocol"
}
-->

# AVVideoCompositionInstructionProtocol

A protocol that defines the interface for a video composition instruction.

```
protocol AVVideoCompositionInstructionProtocol : NSObjectProtocol, Sendable
```

## Overview

A video composition maintains an array of instructions that describe how to compose its content.

## Topics

### Getting track ID settings

[`passthroughTrackID`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/passthroughTrackID)

An identifier of a source track to pass through without compositing.

[`requiredSourceTrackIDs`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/requiredSourceTrackIDs)

The identifiers of the video tracks the instruction requires to compose frames.

[`requiredSourceSampleDataTrackIDs`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/requiredSourceSampleDataTrackIDs)

The identifiers of the sample data tracks the instruction requires to compose frames.

### Getting tweening settings

[`containsTweening`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/containsTweening)

A Boolean value that indicates whether the composition contains tweening.

### Getting post-processing status

[`enablePostProcessing`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/enablePostProcessing)

A Boolean value that indicates whether the composition enables post-processing.

### Getting timing settings

[`timeRange`](/documentation/AVFoundation/AVVideoCompositionInstructionProtocol/timeRange)

The time range during which the instruction is effective.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)