A comprehensive graphical user interface for scrcpy — mirror, record, and control your Android device with a single click.
No setup required. The installer bundles everything — scrcpy, Java runtime, and all dependencies. Just download and run.
Scrcpy GUI provides an intuitive, tabbed interface for every scrcpy option, making it easy to configure and launch scrcpy without memorizing complex commands. Download the app, open it, and you're ready to go.
⬇️ Download the latest release
Using the Scrcpy GUI comes with significant benefits over the raw command-line interface:
- Zero Setup: Everything is bundled in the installer — scrcpy, Java runtime, and all dependencies. No configuration required.
- No Command Memorization: Stop typing long strings of flags. Every scrcpy option is available visually.
- Error Reduction: The UI automatically formats commands correctly, eliminating typos and syntax errors.
- Workflow Efficiency: Save and load different configuration profiles for distinct devices or use cases.
- Real-Time Feedback: View exactly what command is being executed and read the output logs directly within the app.
- Accessibility: Lowers the barrier to entry for users who want to leverage scrcpy's powerful features but aren't comfortable with the terminal.
-
Organized Options: All scrcpy options organized into logical categories:
- Connection (device selection, TCP/IP, tunnels)
- Video (codec, quality, FPS, orientation)
- Audio (source, codec, bit rate)
- Control (keyboard, mouse, gamepad)
- Device (display, power, touches)
- Window (size, position, fullscreen)
- Recording (file format, orientation)
- Camera (facing, size, FPS)
- Advanced (verbosity, render driver)
-
Configuration Management: Save and load configuration profiles
-
Real-time Command Display: See the exact scrcpy command that will be executed
-
Process Output: View scrcpy output in real-time
-
Auto-save: Last used configuration is automatically saved
- Download the
.exeinstaller - Run the installer
- Launch Scrcpy GUI from the Start menu or desktop shortcut
That's it. The installer includes scrcpy, the Java runtime, and all required dependencies — no additional setup needed.
A cross-platform JAR is also available on the releases page for Linux and macOS.
-
Configure Options: Select your desired options from the tabs:
- Connection: Choose device (USB/TCP/IP) and connection settings
- Video: Configure video quality, codec, and size
- All Options: Access all other scrcpy features
-
View Command: The generated scrcpy command is displayed in the "Generated Command" area
-
Start scrcpy: Click the "Start scrcpy" button to launch scrcpy with your configuration
-
Monitor Output: View scrcpy's output in real-time in the output panel
-
Save Configuration: Save your current settings as a named profile for later use
-
Load Configuration: Load previously saved configurations
Configurations are saved as JSON files in:
- Windows:
C:\Users\<username>\.scrcpy-gui\ - Linux/macOS:
~/.scrcpy-gui/
The default configuration (default.json) is automatically saved when you start scrcpy.
- Leave all options at default
- Click "Start scrcpy"
- Set Video Codec to "h265"
- Set Max Size to "1920"
- Set Max FPS to "60"
- Go to Recording tab, set Record File to "output.mp4"
- Click "Start scrcpy"
- Go to Connection tab
- Enter your device IP in "TCP/IP Address" (e.g.,
192.168.1.100:5555) - Click "Start scrcpy"
- Set Video Source to "camera"
- Go to Camera tab
- Select Camera Facing (front/back)
- Set Camera Size if needed
- Click "Start scrcpy"
- Enable USB Debugging on your Android device (Settings → Developer Options)
- Connect your device via USB or set up a TCP/IP wireless connection
- Run
adb devicesin a terminal to verify your device is recognized
- Try re-downloading the installer from the releases page
- Make sure you're using the official
.exeinstaller or the full JAR from the releases page
- Lower Max Size to
1280and reduce the bitrate - Switch codec from
h265toh264for lower CPU usage - Check the output panel inside the app for detailed error messages
This section is for developers who want to contribute or build the app themselves.
Requirements: Java 11+, Maven
cd gui
mvn clean packageThis creates:
target/scrcpy-gui-1.3.0.jar— Simple JARtarget/scrcpy-gui-1.3.0-jar-with-dependencies.jar— Fat JAR with all dependencies
For CI/CD setup, see JENKINS_SETUP.md. The pipeline automatically packages:
- JAR with dependencies
- Windows
.exeinstaller (includes Java runtime and scrcpy)
- The GUI itself doesn't have keyboard shortcuts
- Once scrcpy is running, use scrcpy's built-in shortcuts (see scrcpy documentation)
gui/
├── pom.xml
├── README.md
└── src/main/java/com/scrcpy/gui/
├── ScrcpyGUI.java # Main application
├── config/
│ ├── ScrcpyConfig.java # Configuration data model
│ └── ConfigurationManager.java # Save/load profiles
├── core/
│ ├── CommandBuilder.java # Build scrcpy command
│ └── ProcessExecutor.java # Execute and monitor scrcpy
└── panels/
├── ConnectionPanel.java # Connection options
├── VideoPanel.java # Video options
└── AllOptionsPanel.java # All other options
This is a community-created GUI for scrcpy. Contributions of all kinds are welcome — code, documentation, testing, and feature suggestions.
Open an issue or submit a pull request →
For issues with scrcpy itself, please visit the official scrcpy repository.
This GUI application is provided as-is. scrcpy itself is licensed under Apache License 2.0.
- scrcpy by Romain Vimont and contributors
- All scrcpy command-line options are documented in the official documentation
Made with Love by Bennerdoo ❤️