<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/AVVideoCompositionCoreAnimationTool/Configuration",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "AVFoundation"
    ],
    "preciseIdentifier" : "s:So35AVVideoCompositionCoreAnimationToolC12AVFoundationE13ConfigurationV"
  },
  "title" : "AVVideoCompositionCoreAnimationTool.Configuration"
}
-->

# AVVideoCompositionCoreAnimationTool.Configuration

Configurable properties for initializing a new AVVideoCompositionCoreAnimationTool instance.

```
struct Configuration
```

## Topics

### Creating a configuration

[`init(postProcessingAsVideoLayer: CALayer, containingLayer: CALayer)`](/documentation/AVFoundation/AVVideoCompositionCoreAnimationTool/Configuration/init(postProcessingAsVideoLayer:containingLayer:))

Place composited video frames in videoLayer and render animationLayer
to produce the final frame. Normally videoLayer should be in animationLayer’s sublayer tree.
The animationLayer should not come from, or be added to, another layer tree.
Be aware that on iOS, CALayers backing a UIView usually have their content flipped (as defined by the
-contentsAreFlipped method). It may be required to insert a CALayer with its geometryFlipped property set
to YES in the layer hierarchy to get the same result when attaching a CALayer to a AVVideoCompositionCoreAnimationTool
as when using it to back a UIView.

[`init(postProcessingAsVideoLayers: [CALayer], containingLayer: CALayer)`](/documentation/AVFoundation/AVVideoCompositionCoreAnimationTool/Configuration/init(postProcessingAsVideoLayers:containingLayer:))

Duplicate the composited video frames in each videoLayer and render animationLayer
to produce the final frame. Normally videoLayers should be in animationLayer’s sublayer tree.
The animationLayer should not come from, or be added to, another layer tree.
Be aware that on iOS, CALayers backing a UIView usually have their content flipped (as defined by the
-contentsAreFlipped method). It may be required to insert a CALayer with its geometryFlipped property set
to YES in the layer hierarchy to get the same result when attaching a CALayer to a AVVideoCompositionCoreAnimationTool
as when using it to back a UIView.

### Inspecting the configuration

[`var containingLayer: CALayer`](/documentation/AVFoundation/AVVideoCompositionCoreAnimationTool/Configuration/containingLayer)

Containing layer to be rendered into, producing the final frame.

[`var layers: [CALayer]`](/documentation/AVFoundation/AVVideoCompositionCoreAnimationTool/Configuration/layers)

Layer(s) to contain the composited video frames. Frames are duplicated if there is more than one layer.



---

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)