scrcpy 使用学习日志(帮助文档汉化)(全)

--always-on-top

  • 作用:使 scrcpy 窗口始终保持在其他窗口之上。

--audio-bit-rate=value

  • 作用:以指定的比特率编码音频,单位是比特/秒。支持单位后缀:'K'(x1000)和 'M'(x1000000)。
  • 默认值:128K(即128000比特/秒)。

--audio-buffer=ms

  • 作用:配置音频缓冲延迟(以毫秒为单位)。
  • 较低的值会减少延迟,但增加音频缓冲下溢(导致音频出现瑕疵)的可能性。
  • 默认值:50毫秒。

--audio-codec=name

  • 作用:选择音频编解码器(opus, aac, flac 或 raw)。
  • 默认值:opus。

--audio-codec-options=key[:type]=value[,...]

作用:为设备的音频编码器设置一系列逗号分隔的 key:type=value 选项。

type 的可能值有 'int'(默认)、'long'、'float' 和 'string'。

可以在 Android 文档中找到可能的编解码器选项列表:https://d.android.com/reference/android/media/MediaFormat

--audio-encoder=name

作用:使用特定的 MediaCodec 音频编码器(取决于通过 --audio-codec 提供的编解码器)。

可用编码器可以通过 --list-encoders 列出。

--audio-source=source

作用:选择音频源(输出或麦克风)。

默认值:输出。

--audio-output-buffer=ms

作用:配置 SDL 音频输出缓冲区的大小(以毫秒为单位)。

如果听到“机器人般”的音频播放,应尝试使用更高的值(例如 10)。

除非有必要,否则不要更改此设置。

默认值:5。

-b--video-bit-rate=value

  • 作用:以指定的比特率编码视频,单位是比特/秒。支持单位后缀:'K'(x1000)和 'M'(x1000000)。
  • 默认值:8M(即8000000比特/秒)。

--camera-ar=ar

  • 作用:通过其纵横比(正负10%范围内)选择摄像头尺寸。
  • 可能的值有 "sensor"(使用摄像头传感器的纵横比)、"<num>:<den>"(例如 "4:3")或 "<value>"(例如 "1.6")。

--camera-id=id

  • 作用:指定要镜像的设备摄像头ID。
  • 可用摄像头ID可以通过运行 scrcpy --list-cameras 列出。

--camera-facing=facing

  • 作用:根据摄像头的朝向选择设备摄像头。
  • 可能的值有 "front"(前置摄像头)、"back"(后置摄像头)和 "external"(外部摄像头)。

--camera-high-speed

  • 作用:启用高速摄像头捕获模式。
  • 此模式仅限于特定分辨率和帧率,可以通过 --list-camera-sizes 列出。

--camera-size=<width>x<height>

  • 作用:指定明确的摄像头捕捉尺寸,格式为 <width>x<height>

--camera-fps=value

  • 作用:指定摄像头捕捉的帧率。
  • 如果未指定,将使用 Android 的默认帧率(通常为 30 帧/秒)。

--crop=width:height:x:y

  • 作用:在服务器端裁剪设备屏幕。
  • 裁剪的尺寸和位置以设备的自然方向表示(通常,手机为竖屏,平板为横屏)。
  • 任何 --max-size 值都是基于裁剪后的尺寸计算的。

-d--select-usb

  • 作用:使用 USB 设备(如果只有一个设备,类似于 adb -d)。
  • 也请参见 -e 或 --select-tcpip,用于选择 TCP/IP 设备。

--disable-screensaver

  • 作用:在 scrcpy 运行期间禁用屏幕保护程序。

--display-buffer=ms

  • 作用:在显示之前添加一个缓冲延迟(以毫秒为单位)。这会增加延迟以补偿抖动。
  • 默认值是 0(无缓冲)。

--display-id=id

  • 作用:指定要镜像的设备显示ID。
  • 可用显示ID可以通过运行 scrcpy --list-displays 列出。
  • 默认值是 0。

--display-orientation=value

  • 作用:设置初始显示方向。
  • 可能的值有 0、90、180、270、flip0、flip90、flip180 和 flip270。数字代表顺时针旋转的度数;“flip” 关键字在旋转之前应用水平翻转。
  • 默认值是 0。

-e--select-tcpip

  • 作用:使用 TCP/IP 设备(如果只有一个设备,类似于 adb -e)。
  • 也请参见 -d 或 --select-usb,用于选择 USB 设备。

-f--fullscreen

  • 作用:以全屏模式启动。

--force-adb-forward

  • 作用:不尝试使用 "adb reverse" 来连接到设备。
  • 在某些网络配置下,使用 "adb forward" 可能更可靠。这个选项强制 scrcpy 使用 "adb forward" 而不是 "adb reverse"。

--forward-all-clicks

  • 作用:默认情况下,右键点击会触发返回键(或电源键),中键点击会触发主页键。这个选项禁用这些快捷键,并将点击事件转发到设备。

-K

  • 作用:与 --keyboard=uhid 相同,即使用 Linux UHID 内核模块模拟物理 HID 键盘向设备发送键盘输入。

--keyboard=mode

  • 作用:选择如何向设备发送键盘输入。
  • 可选的值有 "disabled"(不向设备发送键盘输入)、"sdk"(使用 Android 系统 API 将键盘事件传递给应用程序)、"uhid"(使用设备上的 Linux UHID 内核模块模拟物理 HID 键盘)和 "aoa"(使用 AOAv2 协议模拟物理键盘,可能仅适用于 USB 连接)。
  • 对于 "uhid" 和 "aoa" 模式,键盘布局必须在设备上通过 "设置 -> 系统 -> 语言和输入 -> 物理键盘" 进行配置。这个设置页面可以通过快捷键 MOD+k 直接打开(OTG 模式下除外),或者通过执行 adb shell am start -a android.settings.HARD_KEYBOARD_SETTINGS 命令打开。
  • 这个选项只有在启用了 HID 键盘(或连接了物理键盘)时可用。同时,请参见 --mouse 选项。

--kill-adb-on-close

  • 作用:当 scrcpy 终止时,结束 adb 进程。

--legacy-paste

  • 作用:当按下 Ctrl+v 时,将计算机剪贴板中的文本作为一系列键盘事件注入(类似于 MOD+Shift+v)。
  • 这是一个针对某些设备在程序化设置设备剪贴板时表现不佳的解决方案。

--list-cameras

  • 作用:列出设备上的摄像头。

--list-camera-sizes

  • 作用:列出设备摄像头有效的捕获尺寸。

--list-displays

  • 作用:列出设备上的显示器。

--list-encoders

  • 作用:列出设备上可用的视频和音频编码器。

--lock-video-orientation[=value]

  • 作用:锁定捕获视频的方向为指定值。
  • 可选的值有 "unlocked"(不锁定)、"initial"(锁定为初始方向)、0、90、180 和 270。这些值代表从设备自然方向开始的顺时针旋转度数。
  • 默认值是 "unlocked"。
  • 如果只提供选项而不带参数,则相当于传递 "initial"。

-m--max-size=value

  • 作用:限制视频的最大宽度和高度为指定的值。另一个维度会根据设备的纵横比自动计算。
  • 默认值是 0(无限制)。

-M

  • 作用:与 --mouse=uhid 相同,即使用 Linux UHID 内核模块模拟物理 HID 鼠标向设备发送鼠标输入。

--max-fps=value

  • 作用:限制屏幕捕获的帧率。从 Android 10 开始官方支持此功能,但可能在更早的版本上也能工作。

--mouse=mode

  • 作用:选择如何向设备发送鼠标输入。
  • 可选的值有 "disabled"(不向设备发送鼠标输入)、"sdk"(使用 Android 系统 API 将鼠标事件传递给应用程序)、"uhid"(使用设备上的 Linux UHID 内核模块模拟物理 HID 鼠标)和 "aoa"(使用 AOAv2 协议模拟物理鼠标,可能仅适用于 USB 连接)。
  • 在 "uhid" 和 "aoa" 模式下,计算机鼠标被捕获以直接控制设备(相对鼠标模式)。通过按下左 Alt、左 Super 或右 Super 键,可以切换捕获模式,将鼠标控制权交还给计算机。
  • 同时请参见 --keyboard 选项。

-n--no-control

  • 作用:禁用设备控制,使设备处于只读镜像状态。

-N--no-playback

  • 作用:禁用计算机上的视频和音频播放(等同于 --no-video-playback --no-audio-playback)。

--no-audio

  • 作用:禁用音频转发。

--no-audio-playback

  • 作用:禁用计算机上的音频播放。

--no-cleanup

  • 作用:默认情况下,scrcpy 会在退出时从设备中删除服务器二进制文件,并恢复设备状态(如显示触摸点、保持唤醒和电源模式)。此选项禁用这些清理操作。

--no-clipboard-autosync

  • 作用:默认情况下,scrcpy 在注入 Ctrl+v 之前会自动将计算机剪贴板的内容同步到设备剪贴板,并在设备剪贴板内容发生变化时自动将其同步回计算机剪贴板。此选项禁用这种自动同步功能。

--no-downsize-on-error

  • 作用:默认情况下,当发生 MediaCodec 错误时,scrcpy 会自动尝试以较低的分辨率再次捕获屏幕。此选项禁用这种自动调整分辨率的行为。

--no-key-repeat

  • 作用:当某个键被持续按下时,不转发重复的键盘事件。

--no-mipmaps

  • 作用:如果渲染器是 OpenGL 3.0+ 或 OpenGL ES 2.0+,则会自动生成 mipmaps 以提高降采样质量。此选项禁用 mipmaps 的生成。

--no-power-on

  • 作用:在启动时不自动为设备供电。

--no-video

  • 作用:禁用视频转发,即不将设备的屏幕内容显示在计算机上。

--no-video-playback

  • 作用:禁用计算机上的视频播放。这通常用于仅转发音频而不显示视频内容的场景。

--orientation=value

  • 作用:设置设备的方向,等同于同时设置 --display-orientation=value 和 --record-orientation=value。这允许用户指定设备屏幕的方向,如横屏或竖屏。

--otg

  • 作用:启用 OTG 模式,模拟物理键盘和鼠标,就像计算机键盘和鼠标直接通过 OTG 线缆连接到设备一样。在这种模式下,不需要 adb(USB 调试),并且屏幕镜像功能被禁用。用户可以通过按 LAlt、LSuper 或 RSuper 键来切换鼠标捕获模式,将鼠标控制权交还给计算机。键盘和鼠标可以分别通过 --keyboard=disabled 和 --mouse=disabled 禁用。请注意,OTG 模式可能仅适用于 USB 连接。

-p--port=port[:port]

  • 作用:设置客户端监听的 TCP 端口(范围)。默认范围是 27183:27199。这允许用户指定用于客户端和服务器之间通信的端口号,尤其是在多个 scrcpy 实例同时运行或需要特定端口时。

--pause-on-exit[=mode]

  • 作用:配置退出时的暂停行为。可能的值有 "true"(退出时总是暂停)、"false"(退出时从不暂停)和 "if-error"(仅在发生错误时暂停)。这有助于防止终端窗口自动关闭,以便用户能够读取错误消息。默认值是 "false"。如果不带参数传递该选项,则等同于传递 "true"。

--power-off-on-close

  • 作用:关闭 scrcpy 时关闭设备屏幕。这有助于节省设备电量,特别是在不需要保持屏幕亮起的场景中。

--prefer-text

  • 作用:优先以文本事件的形式注入字母字符和空格,而不是按键事件。这可以避免在组合多个按键以输入特殊字符时出现的问题,但会破坏游戏中字母键的预期行为(如 WASD 键)。

--print-fps

  • 作用:启动帧率计数器,将帧率日志打印到控制台。用户可以在任何时候使用 MOD+i 组合键来启动或停止此功能。这有助于用户监控和调试性能问题。

--push-target=path

  • 作用:设置通过拖放将文件推送到设备的目标目录。该路径直接传递给 "adb push" 命令。默认路径是 "/sdcard/Download/"。这允许用户自定义文件保存的位置。

-r--record=file.mp4

  • 作用:将屏幕录制到文件中。录制格式由 --record-format 选项或文件扩展名决定。用户可以通过指定不同的文件扩展名来选择不同的输出格式。

--raw-key-events

  • 作用:对所有输入键注入按键事件,并忽略文本事件。这可能会影响文本输入的行为,但在某些情况下可能更适用于游戏或其他应用。

--record-format=format

  • 作用:强制设置录制格式(mp4、mkv、m4a、mka、opus、aac、flac 或 wav)。这允许用户明确指定所需的输出格式,而不是依赖文件扩展名进行推断。

--record-orientation=value

  • 作用:设置录制视频的方向。可能的值包括 0、90、180 和 270,分别代表顺时针旋转的度数。默认值是 0,即无旋转。这有助于确保录制的视频与设备屏幕的实际方向一致。

--render-driver=name

  • 作用:请求 SDL(Simple DirectMedia Layer,简单直接媒体层)使用指定的渲染驱动程序(这只是一个提示)。当前支持的名称包括 "direct3d"、"opengl"、"opengles2"、"opengles"、"metal" 和 "software"。这个选项有助于用户根据他们的系统和需求选择最佳的渲染方式。

--require-audio

  • 作用:默认情况下,如果设备上的音频捕获失败,scrcpy 只会镜像视频。这个选项使得当音频被启用但不工作时,scrcpy 会失败。这有助于用户确保音频功能正常工作。

-s--serial=serial

  • 作用:指定设备的序列号。这个选项只在有多个设备连接到 adb 时是必需的,用于区分不同的设备。

-S--turn-screen-off

  • 作用:立即关闭设备屏幕。这有助于节省设备电量,特别是在不需要设备屏幕保持亮起的场景中。

--shortcut-mod=key[+...][,...]

  • 作用:指定用于 scrcpy 快捷方式的修饰键。可能的键包括 "lctrl"(左 Ctrl)、"rctrl"(右 Ctrl)、"lalt"(左 Alt)、"ralt"(右 Alt)、"lsuper"(左 Super)和 "rsuper"(右 Super)。一个快捷方式可以由多个键组成,用 '+' 分隔。可以指定多个快捷方式,用 ',' 分隔。例如,要使用 LCtrl+LAlt 或 LSuper 作为 scrcpy 快捷方式,可以传递 "lctrl+lalt,lsuper"。默认值是 "lalt,lsuper"(左 Alt 或左 Super)。

-t--show-touches

  • 作用:在启动时启用“显示触摸”功能,并在退出时恢复初始值。这个功能只显示物理触摸(不是来自 scrcpy 的点击)。

--tcpip[=ip[:port]]

  • 作用:配置并通过 TCP/IP 重新连接设备。如果提供了目标地址,那么 scrcpy 会在启动前连接到这个地址。设备必须在给定的 TCP 端口上监听(默认是 5555)。如果没有提供目标地址,那么 scrcpy 会尝试找到当前设备的 IP 地址(通常是通过 USB 连接的),启用 TCP/IP 模式,然后在启动前连接到这个地址。这允许用户通过网络远程连接和控制设备。

--time-limit=seconds

  • 作用:设置镜像的最大时间,以秒为单位。当达到这个限制时,scrcpy 将停止镜像。

--tunnel-host=ip

  • 作用:设置adb隧道到达 scrcpy 服务器的IP地址。这个选项会自动启用 --force-adb-forward。默认值是 localhost,这意味着隧道将尝试连接到本地计算机。

--tunnel-port=port

  • 作用:设置adb隧道到达 scrcpy 服务器的TCP端口。这个选项会自动启用 --force-adb-forward。默认值是 0(不强制):用于建立隧道的本地端口将被使用。

-v--version

  • 作用:打印 scrcpy 的版本号。

-V--verbosity=value

  • 作用:设置日志级别(verbose、debug、info、warn或error)。这允许用户控制 scrcpy 在运行时输出到控制台的日志信息的详细程度。默认值是 info

--v4l2-sink=/dev/videoN

  • 作用:将输出发送到v4l2loopback设备。这需要锁定视频方向(参见 --lock-video-orientation)。这个特性仅在Linux上可用。v4l2loopback是一个在Linux上创建虚拟视频设备的内核模块,允许用户空间程序(如 scrcpy)将视频流发送到虚拟设备,然后其他应用程序(如视频录制或直播软件)可以从这个虚拟设备读取视频流。

--v4l2-buffer=ms

  • 作用:在推送帧之前添加一个缓冲延迟(以毫秒为单位)。这增加了延迟,以补偿抖动。这个选项类似于 --display-buffer,但专用于 V4L2 sink。默认值是 0(无缓冲)。这个选项仅在 Linux 上可用。

--video-codec=name

  • 作用:选择视频编解码器(h264、h265 或 av1)。默认是 h264。

--video-codec-options=key[:type]=value[,...]

  • 作用:为设备视频编码器设置一系列以逗号分隔的 key:type=value 选项。'type' 的可能值是 'int'(默认)、'long'、'float' 和 'string'。可能的编解码器选项列表可以在 Android 文档中找到:https://d.android.com/reference/android/media/MediaFormat

--video-encoder=name

  • 作用:使用特定的 MediaCodec 视频编码器(取决于通过 --video-codec 提供的编解码器)。可用的编码器可以通过 --list-encoders 列出。

--video-source=source

  • 作用:选择视频源(显示或相机)。相机镜像需要 Android 12 或更高版本。默认是显示。

-w--stay-awake

  • 作用:当设备插入电源时,scrcpy 运行期间保持设备处于唤醒状态。

--window-borderless

  • 作用:禁用窗口装饰(显示无边框窗口)。

--window-title=text

  • 作用:设置自定义窗口标题。这允许用户为 scrcpy 窗口指定一个特定的标题。

--window-x=value

  • 作用:设置窗口的初始水平位置。value 应该是窗口左边缘相对于屏幕左边缘的像素位置。默认值是 "auto",这意味着窗口将自动选择一个位置。

--window-y=value

  • 作用:设置窗口的初始垂直位置。value 应该是窗口上边缘相对于屏幕顶边缘的像素位置。默认值是 "auto",即窗口将自动选择一个位置。

--window-width=value

  • 作用:设置窗口的初始宽度。value 应该是窗口的宽度,以像素为单位。默认值是 0,表示窗口将自动调整宽度。

--window-height=value

  • 作用:设置窗口的初始高度。value 应该是窗口的高度,以像素为单位。默认值是 0,表示窗口将自动调整高度。

快捷键列表:

  • MOD 键:这是快捷键的修饰键。默认情况下,它是(左)Alt 键或(左)Super 键(通常是 Windows 键或 macOS 上的 Command 键),但可以通过 --shortcut-mod 参数进行配置。

屏幕操作:

  • MOD+f:切换全屏模式。
  • MOD+Left:向左旋转屏幕显示。
  • MOD+Right:向右旋转屏幕显示。
  • MOD+Shift+Left 或 MOD+Shift+Right:水平翻转屏幕显示。
  • MOD+Shift+Up 或 MOD+Shift+Down:垂直翻转屏幕显示。

窗口大小调整:

  • MOD+g:将窗口大小调整为 1:1(像素完美)。
  • MOD+w 或双击黑色边框:调整窗口大小以去除黑色边框。

设备按键模拟:

  • MOD+h 或中键点击:模拟点击 HOME 键。
  • MOD+bMOD+Backspace 或屏幕开启时的右键点击:模拟点击 BACK 键。
  • MOD+s 或第四次点击:模拟点击 APP_SWITCH 键(用于切换应用)。
  • MOD+m:模拟点击 MENU 键。
  • MOD+Up:模拟点击 VOLUME_UP 键。
  • MOD+Down:模拟点击 VOLUME_DOWN 键。
  • MOD+p:模拟点击 POWER 键(用于开关屏幕)。
  • 屏幕关闭时的右键点击:开机。

设备屏幕控制:

  • MOD+o:关闭设备屏幕(保持镜像)。
  • MOD+Shift+o:打开设备屏幕。
  • MOD+r:旋转设备屏幕。

快捷键:

  • MOD+n 或 第五次点击:展开通知面板。
  • MOD+Shift+n:收起通知面板。

剪贴板操作:

  • MOD+c:复制到剪贴板(注入 COPY 键码,仅适用于 Android 7 及更高版本)。
  • MOD+x:剪切到剪贴板(注入 CUT 键码,仅适用于 Android 7 及更高版本)。
  • MOD+v:将电脑剪贴板的内容复制到设备,然后粘贴(注入 PASTE 键码,仅适用于 Android 7 及更高版本)。
  • MOD+Shift+v:将电脑剪贴板的文本作为一系列键盘事件注入到设备。

设备设置和调试:

  • MOD+k:在设备上打开键盘设置(仅适用于 HID 键盘)。
  • MOD+i:启用/禁用 FPS 计数器(在日志中打印每秒帧数)。

鼠标控制:

  • Ctrl+点击并拖动:从屏幕中心进行缩放和旋转(模拟双指操作)。
  • Shift+点击并拖动:倾斜(模拟两指垂直滑动)。

文件操作:

  • 拖拽并放下 APK 文件:从电脑安装 APK 到设备。
  • 拖拽并放下非 APK 文件:将文件推送到设备(见 --push-target)。

环境变量:

  • ADB:adb 可执行文件的路径。
  • ANDROID_SERIAL:如果没有指定选择器(-s、-d、-e 或 --tcpip=<addr>),则使用此设备序列号。
  • SCRCPY_ICON_PATH:程序图标的路径。
  • SCRCPY_SERVER_PATH:服务器二进制文件的路径。

退出状态:

  • 0:程序正常退出。
  • 1:启动失败。
  • 2:程序运行时设备断开连接。

  • 20
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值