<!--
{
  "availability" : [
    "iOS: 26.4.0 -",
    "iPadOS: 26.4.0 -",
    "macCatalyst: 26.4.0 -",
    "macOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ImmersiveMediaSupport",
  "identifier" : "/documentation/ImmersiveMediaSupport/PresentationCommand",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "Immersive Media Support"
    ],
    "preciseIdentifier" : "s:21ImmersiveMediaSupport19PresentationCommandO"
  },
  "title" : "PresentationCommand"
}
-->

# PresentationCommand

A set of properties that define the interface for a presentation command.

```
enum PresentationCommand
```

## Overview

These are commands that dictate part of the presentation of the video frames during immersive media playback. These commands have all the necessary properties like command identifier, command type, command time in seconds (when it needs to be processed), command duration in seconds, command offset from the start of the command time (if they are offset based), a flag to indicate if commands are offset based or not, command argument list, which might carry additional properties based on the type of the presentation command.

## Topics

### Instance Properties

[`var duration: CMTime`](/documentation/ImmersiveMediaSupport/PresentationCommand/duration)

[`var id: Int`](/documentation/ImmersiveMediaSupport/PresentationCommand/id)

[`var offset: CMTime?`](/documentation/ImmersiveMediaSupport/PresentationCommand/offset)

[`var time: CMTime`](/documentation/ImmersiveMediaSupport/PresentationCommand/time)

### Enumeration Cases

[`case fade(FadeCommand)`](/documentation/ImmersiveMediaSupport/PresentationCommand/fade(_:))

A value that represents a command that adds fade-in and fade-out effects during scene transitions.

[`case fadeEnvironment(FadeEnvironmentCommand)`](/documentation/ImmersiveMediaSupport/PresentationCommand/fadeEnvironment(_:))

A value that represents a command that adds fade-in and fade-out effects to backdrop transitions.

[`case setCamera(SetCameraCommand)`](/documentation/ImmersiveMediaSupport/PresentationCommand/setCamera(_:))

A value that represents a command that specifies the camera ID for a specific frame during playback.

[`case shotFlip(ShotFlipCommand)`](/documentation/ImmersiveMediaSupport/PresentationCommand/shotFlip(_:))

A value that represents a command that mirrors a whole frame vertically for the duration of the command.

[`case shotFlop(ShotFlopCommand)`](/documentation/ImmersiveMediaSupport/PresentationCommand/shotFlop(_:))

A value that represents a command that mirrors a whole frame horizontally for the duration of the command.

## Relationships

### Conforms To

[`Encodable`](/documentation/Swift/Encodable)

[`Decodable`](/documentation/Swift/Decodable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Sendable`](/documentation/Swift/Sendable)

---

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)