---
title: AVCaptureVideoPreviewLayer
framework: avfoundation
role: symbol
role_heading: Class
path: avfoundation/avcapturevideopreviewlayer
---

# AVCaptureVideoPreviewLayer

A Core Animation layer that displays video from a camera device.

## Declaration

```swift
class AVCaptureVideoPreviewLayer
```

## Mentioned in

Setting up a capture session

## Overview

Overview Use this layer to provide a preview of the content the camera captures. A convenient way to use this class in iOS is to set it as the backing layer for a view as shown below. class PreviewView: UIView {     // Use a capture video preview layer as the view's backing layer.     override class var layerClass: AnyClass {         AVCaptureVideoPreviewLayer.self     }          var previewLayer: AVCaptureVideoPreviewLayer {         layer as! AVCaptureVideoPreviewLayer     }          // Connect the layer to a capture session.     var session: AVCaptureSession? {         get { previewLayer.session }         set { previewLayer.session = newValue }     } }

## Topics

### Creating a preview layer

- [init(session:)](avfoundation/avcapturevideopreviewlayer/init(session:).md)
- [init(sessionWithNoConnection:)](avfoundation/avcapturevideopreviewlayer/init(sessionwithnoconnection:).md)

### Layer configuration

- [isPreviewing](avfoundation/avcapturevideopreviewlayer/ispreviewing.md)
- [videoGravity](avfoundation/avcapturevideopreviewlayer/videogravity.md)

### Configuring deferred start

- [isDeferredStartSupported](avfoundation/avcapturevideopreviewlayer/isdeferredstartsupported.md)
- [isDeferredStartEnabled](avfoundation/avcapturevideopreviewlayer/isdeferredstartenabled.md)

### Session configuration

- [session](avfoundation/avcapturevideopreviewlayer/session.md)
- [connection](avfoundation/avcapturevideopreviewlayer/connection.md)
- [setSessionWithNoConnection(_:)](avfoundation/avcapturevideopreviewlayer/setsessionwithnoconnection(_:).md)

### Converting between coordinate spaces

- [layerPointConverted(fromCaptureDevicePoint:)](avfoundation/avcapturevideopreviewlayer/layerpointconverted(fromcapturedevicepoint:).md)
- [captureDevicePointConverted(fromLayerPoint:)](avfoundation/avcapturevideopreviewlayer/capturedevicepointconverted(fromlayerpoint:).md)
- [layerRectConverted(fromMetadataOutputRect:)](avfoundation/avcapturevideopreviewlayer/layerrectconverted(frommetadataoutputrect:).md)
- [metadataOutputRectConverted(fromLayerRect:)](avfoundation/avcapturevideopreviewlayer/metadataoutputrectconverted(fromlayerrect:).md)
- [transformedMetadataObject(for:)](avfoundation/avcapturevideopreviewlayer/transformedmetadataobject(for:).md)

### Deprecated

- [Deprecated symbols](avfoundation/avcapturevideopreviewlayer-deprecated-symbols.md)

## Relationships

### Inherits From

- [CALayer](quartzcore/calayer.md)

### Conforms To

- [CAMediaTiming](quartzcore/camediatiming.md)
- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Capture preview

- [AVCaptureAudioPreviewOutput](avfoundation/avcaptureaudiopreviewoutput.md)
