开源、跨平台投屏软件 Scrcpy 中文使用指南

https://www.jianshu.com/p/4585ce32a0af

Scrcpy 可以将手机画面投射到电脑上,让你可以在电脑上对手机进行操控。Scrcpy 通过 USB 或 Wi-Fi 与安卓手机相连,不需要在手机上安装任何 app,也不需要取得 ROOT 权限。 亮点

  • 轻量(原生,极简)
  • 高性能(30~60fps)
  • 高分辨率(1920×1080 或以上)
  • 低延迟(35~70ms)
  • 启动快(大约 1 秒就能得到画面)
  • 绿色便携(不需要安装到手机上)

Scrcpy 是开源软件,源码托管在 GitHub 上,立即 前往 ⇱

👉 要求

Scrcpy 要依靠 ADB 才能工作。ADB,安卓调试桥,是电脑上专门用来和安卓手机交互的工具。使用 ADB,不需要在手机上安装额外的 app,但手机上必须启用调试模式。

  1. Android 5.0 以上版本
  2. 在连接 USB 后启用调试模式(设置 > 开发者选项 > USB 调试)

ADB 支持通过网络和手机建立连接(这正是 Scrcpy 支持无线投屏的原因),但大多数手机默认都禁止 ADB 通过网络与之连接,因此第一次使用 ADB,只能通过 USB 数据线连接。

打开 USB 调试后,第一次和电脑连接,会出现如下提示,点击确定。

 

有些手机还需要再打开一个关于调试模式的附加选项——USB 调试(安全设置),否则将无法在电脑上操控手机。📦 下载软件包

对于 Windows 平台,官方提供了完整的软件包:

Scrcpy 的软件包是一个压缩包,里面包含了 Scrcpy 的主程序和所有需要用到的数据。用 解压缩工具 将它们解压出来即可使用。

Scrcpy 没有提供图形化的用户界面,要使用它,首先要在地址栏输入 cmd,然后回车,此时会弹出一个命令提示符窗口。下文介绍的所有命令都是要在命令提示符窗口中执行的,比如输入 scrcpy,然后按回车,即可启动 Scrcpy

 

🎯 基本用法

用 USB 数据线把手机和电脑连接起来后,执行命令 scrcpy 即可:

 

📡 无线投屏

ADB 支持通过网络和手机建立连接,因此 Scrcpy 也支持无线投屏。

但是大多数手机默认都没有启动相关的服务,导致 ADB 无法通过网络与之连接,因此在使用无线投屏之前,需要先把手机上的相关服务打开。打开的方式也很简单,在手机已经通过 USB 数据线连接到电脑的情况下,执行命令 adb tcpip 5555 即可。

 

现在就可以拔下 USB 数据线了!

通过网络连接的前提是,手机与电脑处在同一局域网中。ADB 需要根据手机的 IP 地址找到手机,为此需要先知道手机的 IP 地址(设置 > WLAN)

知道了手机的 IP 地址,就可以让 ADB 通过网络和手机建立连接了,只需执行命令 adb connect 手机的 IP 地址:5555 即可。

 

执行下面命令,可以查看已成功连接的手机。

> adb devices

通过网络连接成功后,同样只要执行命令 scrcpy 就可以启动 Scrcpy

如果投屏已经结束,需要下面执行命令,让 ADB 断开和手机的连接。

> adb disconnect 手机的 IP 地址:5555

🎨 功能特性

在启动 Scrcpy 时,可以通过在命令 scrcpy 后面跟上一些选项和参数来改变一些功能特性。

捕获配置

减小尺寸

在投屏过程中,有时希望用较低的清晰度换取更高的性能。为此,可以使用 --max-size 选项设定一个最大尺寸,将宽度和高度限制为这个值以下,以 1024 为例:

> scrcpy --max-size 1024  
> scrcpy -m 1024  # 作用同上

Scrcpy 在对画面进行缩放时,会根据屏幕比例进行处理。也就是说,缩放后,比例不会改变,图像不会产生变形。例如 1920×1080,将被缩小到 1024×576,比例仍然是 16:9

更改比特率

比特率默认是 8 Mbps,可以使用 --bit-rate 选项重新设定, 以 2Mbps 为例:

> scrcpy --bit-rate 2M
> scrcpy -b 2M  # short version

限制帧速率

Android 10 及以上可以对帧速率进行限制:

> scrcpy --max-fps 15

裁切画面

有时需要对画面进行裁切,以实现只对屏幕的部分区域进行投屏。比如在使用 VR 眼镜时。

> scrcpy --crop 1224:1440:0:0   # 1224x1440 at offset (0,0)

注:前两位是指定裁切区域的大小,后两位指定裁切区域在整个屏幕中的位置。

如果同时还使用了 --max-size,会在裁切后再进行缩放。

录屏配置

可以边投屏,边录屏。

> scrcpy --record file.mp4
> scrcpy -r file.mkv

也可以只录屏,而不投屏。

> scrcpy --no-display --record file.mp4
> scrcpy -Nr file.mkv

连接配置

无线连接

在上文的「无线投屏」一节中已有详细介绍,这里不再赘述。

多部手机

如果同时连接了多部手机,执行 adb devices 可以看到 ADB 为每部手机分配了不同的字符串。

> adb devices
List of devices attached
c0359acf0504    device
b3gsdf5f45ag    device

这时要用 --serial 选项指出需要投屏的那一部。

> scrcpy --serial b3gsdf5f45ag
> scrcpy -s b3gsdf5f45ag # short version

通过网络连接的,则跟上它的网络地址。

> scrcpy --serial 192.168.0.1:5555
> scrcpy -s 192.168.0.1:5555  # short version

有多少部手机要进行投屏,就启动多少个投屏任务。

🏹 快捷键&手势

在对手机进行操控时,可以使用下列快捷键。

作用按键或手势
Home 键Ctrl + H
返回键Ctrl + B | 鼠标右键单击
近期任务Ctrl + S
展开通知栏Ctrl + N
收起通知栏Ctrl + Shift + N
菜单键Ctrl + M
音量 +Ctrl +
音量 -Ctrl +
电源键Ctrl + P
熄屏,但继续投屏Ctrl + O
点亮屏幕鼠标右键单击
传文件到手机将文件拖入显示窗口

注:若屏幕是因为长时间无操作而熄灭,鼠标右键单击即可点亮;若是因为按了 Ctrl + O 而熄灭,先按一次 Ctrl + P,之后即可正常点亮。

 

71人点赞

 

开发环境

 



作者:旅行之间
链接:https://www.jianshu.com/p/4585ce32a0af
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Scrcpy是一个用于在计算机上控制和显示Android设备屏幕的开源工具。它通过USB连接将Android设备与计算机进行通信,并使用ADB(Android Debug Bridge)协议来发送和接收设备屏幕的图像和输入事件。 Scrcpy投屏原理可以简单概括为以下几个步骤: 1. 连接设备:Scrcpy首先通过ADB连接到Android设备。ADB是一个用于与Android设备通信的命令行工具,它允许Scrcpy发送和接收设备屏幕的数据。 2. 获取设备屏幕信息:Scrcpy获取设备屏幕的分辨率、像素格式等信息,以便正确地显示设备屏幕。 3. 创建显示窗口:Scrcpy在计算机上创建一个显示窗口,用于显示设备屏幕的图像。 4. 接收和解码视频流:Scrcpy通过ADB接收设备屏幕的视频流数据,并使用FFmpeg库对视频流进行解码。解码后的视频帧可以在计算机上进行显示。 5. 显示视频帧:Scrcpy将解码后的视频帧显示在计算机上的显示窗口中,实现实时显示设备屏幕。 6. 处理输入事件:Scrcpy通过ADB发送计算机上的输入事件(如鼠标点击、键盘输入)到Android设备,实现对设备的控制。 7. 循环处理事件:Scrcpy使用一个事件循环来处理设备屏幕的变化和用户输入事件。它等待来自设备的事件,并根据事件类型执行相应的操作,如更新显示窗口、发送输入事件等。 总结起来,Scrcpy通过ADB连接到Android设备,接收和解码设备屏幕的视频流,并将解码后的视频帧显示在计算机上的窗口中,同时将计算机上的输入事件发送到Android设备,实现对设备屏幕的控制。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值