菜单

使用指南

相关源文件

本指南将介绍 scrcpy 安装到系统后如何使用。它涵盖了命令行用法、常用选项和实用示例,以帮助您充分利用 scrcpy。有关安装说明,请参阅 安装与设置

基本用法

Scrcpy 主要是一个命令行应用程序,允许您通过 USB 或 TCP/IP 显示和控制已连接的 Android 设备。运行 scrcpy 的最基本方式是键入

scrcpy

此命令将

  1. 搜索已连接的 Android 设备
  2. 在该设备上启动 scrcpy 服务器
  3. 将设备屏幕镜像到您的计算机
  4. 允许您使用计算机的鼠标和键盘控制设备

如果连接了多个设备,您需要使用 -s 选项指定要使用的设备

scrcpy -s DEVICE_ID

您可以使用 adb devices 获取已连接设备列表。

来源:README.md92-103 app/src/main.c25-151

命令行结构和选项

Scrcpy 提供了许多命令行选项来定制其行为。通用命令结构为:

scrcpy [options]

要查看所有可用选项,请使用:

scrcpy --help

连接选项

选项描述
-s, --serial=SERIAL指定要镜像的设备(如果连接了多个)
-d, --select-usb选择 USB 设备(当连接了多个时)
-e, --select-tcpip选择 TCP/IP 设备(当连接了多个时)
--tcpip[=[+]IP[:PORT]]通过 TCP/IP 连接到设备
--tunnel-host=HOST设置 adb 隧道主机(默认:localhost)
--tunnel-port=PORT设置 adb 隧道端口

来源:app/scrcpy.116-573 app/src/cli.c22-226

显示选项

选项描述
-f, --fullscreen以全屏模式启动
-m, --max-size=SIZE将宽度和高度都限制为 SIZE
--window-title=TITLE设置自定义窗口标题
--window-x=X设置初始窗口 X 坐标
--window-y=Y设置初始窗口 Y 坐标
--window-width=WIDTH设置初始窗口宽度
--window-height=HEIGHT设置初始窗口高度
--window-borderless禁用窗口装饰
--always-on-top将 scrcpy 窗口保持在最前面
--display-orientation=ORIENTATION设置显示方向(0, 90, 180, 270)
--no-display禁用计算机上的视频显示

来源:app/scrcpy.116-573 app/src/cli.c22-226

视频选项

选项描述
-b, --video-bit-rate=BITRATE设置视频比特率(默认:8M)
--video-codec=CODEC选择视频编解码器(h264, h265, av1)
--video-encoder=NAME使用特定的 MediaCodec 编码器
--video-source=SOURCE选择视频源(display, camera)
--max-fps=FPS限制帧率
--crop=WIDTHxHEIGHT:X:Y裁剪设备屏幕
--no-mipmaps禁用 mipmaps
--video-buffer=MS添加视频缓冲延迟(毫秒)

来源:app/scrcpy.116-573 app/src/cli.c22-226

音频选项

选项描述
--no-audio禁用音频转发
--audio-bit-rate=BITRATE设置音频比特率(默认:128K)
--audio-codec=CODEC选择音频编解码器(opus, aac, flac, raw)
--audio-encoder=NAME使用特定的 MediaCodec 音频编码器
--audio-source=SOURCE选择音频源(output, playback, mic, etc.)
--audio-buffer=MS配置音频缓冲延迟
--audio-output-buffer=MS配置 SDL 音频输出缓冲区
--audio-dup复制音频(捕获并播放到设备)

来源:app/scrcpy.116-573 app/src/cli.c22-226

控制选项

选项描述
-n, --no-control禁用设备控制(只读)
-K使用 UHID 键盘模式
-M使用 UHID 鼠标模式
-G使用 UHID 游戏手柄模式
--keyboard=MODE设置键盘输入模式(disabled, sdk, uhid, aoa)
--mouse=MODE设置鼠标输入模式(disabled, sdk, uhid, aoa)
--gamepad=MODE设置游戏手柄输入模式(disabled, uhid, aoa)
--no-key-repeat不转发重复的按键事件
--mouse-bind=MAPPING配置次要鼠标按钮映射
--no-mouse-hover不转发鼠标悬停事件
--otg使用 OTG 模式(直接 USB 键盘/鼠标控制)

来源:app/scrcpy.116-573 app/src/cli.c22-226

录制选项

选项描述
-r, --record=FILE将屏幕录制到 FILE
--record-format=FORMAT强制录制格式(mp4, mkv, etc.)
--no-playback录制时禁用播放
--record-orientation=ORIENTATION设置录制方向

来源:app/scrcpy.116-573 app/src/cli.c22-226

其他选项

选项描述
-t, --show-touches在屏幕上显示物理触摸
-w, --stay-awake连接时保持设备唤醒
-S, --turn-screen-off立即关闭设备屏幕
--power-off-on-close关闭 scrcpy 时关闭设备屏幕
--prefer-text将 alpha 字符注入为文本(更适合打字)
--push-target=PATH为文件传输设置目标目录
--time-limit=SECONDS设置最大镜像时间
--no-clipboard-autosync禁用自动剪贴板同步
--shortcut-mod=MODIFIER指定快捷键修饰键
--v4l2-sink=/dev/videoN将视频转发到 v4l2loopback 设备

来源:app/scrcpy.116-573 app/src/cli.c22-226

程序架构和流程

命令行到执行流程

来源:app/src/main.c104-151 app/src/scrcpy.c368-1057 app/src/server.c466-742

客户端-服务器通信架构

来源:app/src/main.c104-151 app/src/scrcpy.c48-91 app/src/server.c47-204 app/src/server.h16-141

常见用法示例

基本显示和控制

要使用默认设置简单地镜像您的设备

scrcpy

镜像多个已连接设备中的特定一个

scrcpy --serial=G1AZF2XXXXXX

来源:README.md92-103

显示配置

限制显示尺寸(适用于高分辨率设备)

scrcpy --max-size=1024

以全屏模式启动

scrcpy --fullscreen

旋转显示(值:0、90、180、270)

scrcpy --display-orientation=90

来源:README.md92-103 app/scrcpy.116-573

视频质量和性能

为了获得更好的性能(较低的分辨率但更高的帧率)

scrcpy --max-size=800 --max-fps=60

使用 H.265 编码以获得更好的质量

scrcpy --video-codec=h265

来源:README.md100-103 app/scrcpy.1602-616

音频配置

禁用音频

scrcpy --no-audio

捕获麦克风音频而非设备音频

scrcpy --audio-source=mic

来源:README.md100-103 app/scrcpy.116-573

录制

将屏幕录制到文件

scrcpy --record=myrecording.mp4

使用特定格式进行录制

scrcpy --record=myrecording.mkv --record-format=mkv

仅录制(不在计算机上显示)

scrcpy --no-display --record=myrecording.mp4

来源:README.md100-103 app/scrcpy.1469-485

控制选项

仅用于只读镜像(无控制)

scrcpy --no-control

使用物理键盘模拟(UHID)

scrcpy --keyboard=uhid

显示设备屏幕上的触摸

scrcpy --show-touches

来源:README.md100-103 app/scrcpy.1330-477

OTG 模式

直接控制设备而不镜像(就像通过 OTG 连接了键盘和鼠标一样)

scrcpy --otg

来源: README.md125-137 app/scrcpy.1417-430

相机镜像

要镜像设备相机而非屏幕

scrcpy --video-source=camera

要指定特定相机

scrcpy --video-source=camera --camera-id=1

要指定相机朝向

scrcpy --video-source=camera --camera-facing=front

来源: README.md111-124 app/scrcpy.1285-316 app/scrcpy.1623-629

键盘快捷键

Scrcpy 提供了一些用于控制镜像设备的键盘快捷键

快捷键操作
MOD+f切换全屏
MOD+g切换可调整窗口大小
MOD+i切换帧率计数器
MOD+p切换保持唤醒
MOD+o关闭设备屏幕
MOD+O打开设备屏幕
MOD+Shift+o关闭设备屏幕并保持关闭
MOD+x旋转显示(顺时针90°)
MOD+h主页
MOD+b 或右键单击返回
MOD+s应用切换
MOD+m菜单
MOD+n展开通知面板
MOD+Shift+n折叠通知面板
MOD+c复制到剪贴板(电脑 → 设备)
MOD+v从剪贴板粘贴(设备 → 电脑)
MOD+Shift+v将电脑剪贴板文本粘贴为按键事件

注意:默认情况下,MOD 是 Alt 键或 Super 键(Windows 键),但可以通过 --shortcut-mod 选项进行更改。

来源: README.md81-88 app/scrcpy.1515-522

鼠标控制

在默认模式下,scrcpy 窗口中的鼠标操作会控制设备

  • 左键单击:轻触
  • 右键单击:返回(或打开屏幕)
  • 中键单击:主页
  • 鼠标滚轮:滚动
  • 按住左键单击并移动:滑动/拖动

您可以使用 --mouse-bind 来自定义辅助单击的行为。

对于 HID 模式(UHID/AOA),计算机鼠标将被捕获以直接控制设备(相对鼠标模式)。使用 LAlt、LSuper 或 RSuper 切换捕获模式。

来源: app/scrcpy.1307-328

文件传输

您可以将文件从电脑拖放到 scrcpy 窗口,将其复制到设备。默认情况下,文件保存在设备上的 /sdcard/Download/ 目录中。

更改目标目录

scrcpy --push-target=/sdcard/Movies/

来源: app/scrcpy.1462-467

使用虚拟显示器

创建新的虚拟显示器而不是镜像现有显示器

scrcpy --new-display=1920x1080

这会创建一个具有指定分辨率的新虚拟显示器。

在虚拟显示器上启动应用程序

scrcpy --new-display=1920x1080 --start-app=org.videolan.vlc

来源: README.md105-109 app/scrcpy.1339-348

故障排除

连接多台设备

如果您连接了多台设备,scrcpy 会因多台设备的消息而失败。使用带设备序列号的 -s

scrcpy -s DEVICE_SERIAL

或使用 -d 选择 USB 设备或 -e 选择 TCP/IP 设备。

性能问题

如果您遇到延迟或性能不佳的问题

  1. 降低分辨率: scrcpy -m800
  2. 更改视频编解码器: scrcpy --video-codec=h265
  3. 限制帧率: scrcpy --max-fps=30
  4. 禁用音频: scrcpy --no-audio

连接问题

如果 scrcpy 无法连接

  1. 确保设备上已启用 USB 调试
  2. 检查您的设备是否被 adb devices 检测到
  3. 尝试使用 --force-adb-forward 选项
  4. 对于某些设备,您可能需要启用其他权限:“USB 调试(安全设置)”

来源: README.md57-71

高级特性

TCP/IP 连接

通过 Wi-Fi 连接到设备

scrcpy --tcpip=192.168.1.2

您也可以使用 scrcpy 在已连接 USB 的设备上启用 TCP/IP 模式,然后连接到它

scrcpy --tcpip

来源: app/scrcpy.1546-554

使用 V4L2 接收器(仅限 Linux)

将设备屏幕输出到 v4l2loopback 设备(作为网络摄像头)

scrcpy --v4l2-sink=/dev/video2 --no-playback

来源: README.md122-123 app/scrcpy.1582-592

限时会话

在特定时间后自动停止镜像

scrcpy --time-limit=600  # Stop after 10 minutes

来源: app/scrcpy.1556-558