SCRCPY is super customisable allowing you to adjust just about any setting or option you want including screen orientation. By default it will simply open in the vertical, portrait position, however, you can configure it to open in any orientation you want as well as use hotkeys to change the rotation once it is already open and running. So in this guide, we're going to show you how to use both of these features.

Takeaways:

  1. Learn how to change the screen orientation that SCRCPY opens by default.
  2. How to quickly rotate the screen when using SCRCPY to screen mirror to Windows?

How to Change Screen Orientation in SCRCPY - SCRCPY Screen Rotation

In SCRCPY, orientation can be adjusted at three distinct levels:

  1. Device Orientation: Controls the orientation of the device itself (portrait to landscape and vice versa).

  2. Mirroring Orientation: This option controls the orientation of the mirrored video on the computer.

  3. Client-side Orientation: Applied directly on the client computer. This orientation can be adjusted dynamically to affect both display and recording.

Each method has unique commands and uses, so understanding when and how to apply them can make a big difference in your SCRCPY experience.

Change Device Orientation using a Shortcut

If you don't want SCRCPY to open your device in a specific position you can use Keyboard shortcuts to adjust it on the fly.

  • Press MOD + r (where MOD is usually Ctrl on Windows/Linux or Command on macOS).

This command toggles the device between portrait and landscape modes. Annoyingly Some apps may not support specific orientations and might refuse to change when prompted. This is especially common with apps that are locked to a single orientation. Generally, this would happen on the device anyway and isn't a limitation in SCRCPY.

Lock Mirroring Orientation in SCRCPY

Sometimes, you may want the mirrored video on your computer to remain in a specific orientation, regardless of the device's physical orientation. This is useful if you’re recording or streaming and want to ensure a consistent orientation throughout the session. The below steps will be using SCRCPY commands to get the desired effects, so if you aren't familiar with using Commands in SCRCPY you'll need to read this guide first.

To lock the mirroring orientation, use the --lock-video-orientation option with one of the following parameters:

scrcpy --lock-video-orientation

This locks the mirroring to the current orientation when the command is run. Alternatively, you can specify a specific angle:

  • scrcpy --lock-video-orientation=0 – Lock to the device's natural orientation (usually portrait).

  • scrcpy --lock-video-orientation=90 – Lock to 90° clockwise.

  • scrcpy --lock-video-orientation=180 – Lock to 180° (upside-down).

  • scrcpy --lock-video-orientation=270 – Lock to 270° clockwise.

This option ensures that the video orientation remains stable on the computer regardless of how the device is rotated.

Example Usage:

To lock the video in landscape mode (90°), use:

scrcpy --lock-video-orientation=90

This command will prevent the mirrored video from rotating even if you change the device’s physical orientation.

Adjust Orientation on the Client Side with --orientation

For flexibility with display and recording, SCRCPY allows client-side orientation adjustments using the --orientation command. This command lets you set how the display appears on your computer, and it can be adjusted in real-time with shortcuts.

Use --orientation followed by the desired angle to set the orientation. Here are the options:

  • scrcpy --orientation=0 – Default (natural) orientation.

  • scrcpy --orientation=90 – Rotate display 90° clockwise.

  • scrcpy --orientation=180 – Rotate display 180°.

  • scrcpy --orientation=270 – Rotate display 270° clockwise.

You can also flip the display (mirroring it horizontally or vertically) with the following options:

  • scrcpy --orientation=flip0 – Horizontal flip.

  • scrcpy --orientation=flip90 – Horizontal flip + 90° clockwise.

  • scrcpy --orientation=flip180 – Vertical flip (horizontal flip + 180°).

  • scrcpy --orientation=flip270 – Horizontal flip + 270° clockwise.

Example Usage:

To rotate the display 180° with a vertical flip:

scrcpy --orientation=flip180

This option is useful when you want to change the mirrored display dynamically without changing the device's orientation.

Separate Display and Recording Orientations

If you want to set different orientations for display and recording, SCRCPY allows this through --display-orientation and --record-orientation. This is particularly useful when you want to monitor in one orientation but record in another.

  • --display-orientation: Sets the orientation of the display only.

  • --record-orientation: Sets the orientation of the recorded output file.

To rotate a recorded file, SCRCPY writes a transformation into the MP4 or MKV file. However, flipping is not supported, so only the following options are allowed: 0, 90, 180, and 270.

Here's an example command you can use

To display in natural orientation but record in landscape:

scrcpy --display-orientation=0 --record-orientation=90

This setup would let you view the mirrored screen in its default orientation on the computer but have the recording saved in landscape.