When working with OpenHarmony or Android devices, screen mirroring is often treated as a small helper tool. In daily debugging, it affects much more than convenience: remote screen viewing, issue reproduction, demos, and observing several devices at the same time all depend on a stable screen entry point.

ohscrcpy targets Windows 10/11 x64 and provides screen mirroring and remote control for OpenHarmony and Android devices. Device selection, platform detection, quality options, and installation choices all go through the same command-line launcher, reducing the back-and-forth between ADB, HDC, and device-specific commands.

ohscrcpy multi-device mirroring

Project release page:

https://github.com/snowlyg/ohscrcpy-releases

The examples below use v0.0.1-alpha4 as the current reference release.

Repeated Work in Mixed Device Debugging

Android devices usually use ADB, while OpenHarmony devices usually use HDC. Each tool is manageable on its own, but mixed device debugging creates repeated friction:

  • one Windows workstation may connect to both Android and OpenHarmony devices.
  • device serials may come from network addresses, ports, or USB connections.
  • one debugging session may need several mirrored screens.
  • demos and investigations often need quick quality, frame rate, or bitrate changes.
  • offline environments cannot always rely on online package sources.

When these steps are spread across ADB, HDC, and separate launch parameters, every device switch needs another round of checking. With ohscrcpy, the stable input is the device serial: by default the launcher chooses the platform path from current device state, and explicit Android or OHOS mode is still available when a test needs fixed conditions.

Installation

The release repository provides three types of files:

ohscrcpy-windows-x64-<version>.zip
ohscrcpy.<version>.nupkg
SHA256SUMS-v<version>.txt

With the ZIP package, unzip it and run:

ohscrcpy.cmd

With the offline Chocolatey package, open PowerShell as administrator in the directory that contains the .nupkg file:

choco install ohscrcpy --version <version> --source . --yes

To update, use:

choco upgrade ohscrcpy --version <version> --source . --yes

For preview versions, append:

--prerelease

The package contains the complete Windows ZIP, so installation and updates do not require network access. SHA256SUMS-v<version>.txt is provided for package verification.

ohscrcpy offline installation flow

Environment Requirements

ohscrcpy currently targets Windows 10/11 x64.

OpenHarmony devices require:

hdc.exe in PATH

Android devices require:

adb.exe in PATH

In other words, ohscrcpy unifies the launcher and parameter surface, while device connectivity still depends on each platform tool. If a connection fails, first verify that hdc.exe or adb.exe can discover the device directly.

Single-Device and Multi-Device Usage

The simplest form is to specify one device:

ohscrcpy -s <ohos-device-serial>

An Android TCP device can also be passed directly:

ohscrcpy -s <android-device-serial>:5555

For multiple devices, use -m:

ohscrcpy -m "<android-device-a>:5555,<android-device-b>:5555"

OpenHarmony devices can be passed the same way:

ohscrcpy -m "<ohos-device-a>,<ohos-device-b>" -q Clear

According to the project documentation, -Serials supports up to 9 comma-separated devices. Device demos, compatibility checks, and multi-screen observation can use the same parameter shape.

Auto-Detecting Android and OpenHarmony

By default, the launcher detects whether the target should use Android or OpenHarmony:

ohscrcpy -s <device-serial>

When the same serial is visible through both ADB and HDC, Android is preferred. If ADB reports offline or unauthorized while HDC is online, OpenHarmony is selected.

If auto-detection is not desired, specify the platform explicitly:

ohscrcpy -s <ohos-device-serial> -p OHOS
ohscrcpy -s <android-device-serial>:5555 -p Android

In a mixed device lab, automatic mode covers day-to-day connection work, while explicit mode keeps experiments and troubleshooting deterministic.

ohscrcpy automatic platform routing

Quality, Codec, and Frame Rate Options

Common parameters include:

ShortFull parameterDescription
-s-SerialOne device serial
-m-SerialsUp to 9 comma-separated devices
-p-PlatformAuto, OHOS, or Android
-q-QualityBalanced or Clear
-c-Codech264 or h265
-f-FpsFrame rate
-b-BitrateVideo bitrate in bps
-v--versionShow version and developer information
-h--helpShow all options and examples

For example, to use clear quality:

ohscrcpy -s <device-serial> -q Clear

For Android, Clear uses a maximum long edge of 1920, 20 fps, and 8 Mbps by default. Lower-resolution devices keep their native size and use a higher bitrate to reduce compression artifacts.

To see the complete help:

ohscrcpy -h

Suitable Workflows

ohscrcpy is useful for:

  • OpenHarmony application debugging.
  • mixed Android and OpenHarmony device environments.
  • screen viewing and demos on a Windows workstation.
  • observing several device states at the same time.
  • installing and updating the tool without online package access.

It still depends on ADB and HDC for the underlying connection. The difference is that screen entry points and common parameters for both device families use the same command shape. As device count grows, fewer tool switches and fewer parameter edits remove a lot of repeated work.

Release and License

The release repository provides ZIP packages, offline Chocolatey packages, and checksum files. The packages include license, copyright, and third-party attribution files.

The project uses Apache License 2.0.

Release page:

https://github.com/snowlyg/ohscrcpy-releases/releases/tag/v0.0.1-alpha4

If you work with OpenHarmony device debugging, or need to manage Android and OpenHarmony screen mirroring from Windows, start from the release page and run ohscrcpy -h to inspect the full command surface.