scrcpy 指南

Table of Contents

老文新写,距离第一次用 scrcpy 竟然也已经两三年了。后来手机商推出的所谓“联动软件”,用后才发现其投屏的逻辑和 scrcpy 一模一样,顿感失望。

Installation

sudo apt install scrcpy

Preparation

On the phone

打开“开发者选项”和“USB 调试”。

此时已经可以在有线的情况下运行scrcpy了。

ADB Settings

Do it if you would like to use scrcpy via wireless method, every time your computer starts.

  1. 在终端中键入adb shell ip route | awk '{print $9}'查看手机在当前 Wi-Fi 网络中的 IP 地址。也可以手动在手机中查看。e.g., 192.168.2.3
  2. 启用设备的网络 adb 功能:adb tcpip 5555
  3. 断开设备的 USB 连接。
  4. adb连接设备,例如:adb connect 192.168.2.3:5555

Running

直接在终端中运行scrcpy即可;我更习惯scrcpy -S --window-title Vivy,其中-S参数使得手机在投屏以后自动灭屏,--window-title参数可以指定投屏的窗口的标题。“Vivy”是我手机的名字,by the way。

有线情况下的延迟表现非常优秀。

详细命令参数如下表(引自异次元的文章):

关闭手机屏幕 scrcpy -S
限制画面分辨率 scrcpy -m 1024 (比如限制为 1024)
修改视频码率 scrcpy -b 4M (默认 8Mbps,改成 4Mbps)
裁剪画面 scrcpy -c 1224:1440:0:0 表示分辨率 1224×1440 并且偏移坐标为 (0,0)
多设备切换 scrcpy -s 设备ID (使用 adb devices 命令查看设备 ID)
窗口置顶 scrcpy -T
显示触摸点击 scrcpy -t 在演示或录制教程时,可在画面上对应显示出点击动作
全屏显示 scrcpy -f
文件传输默认路径 scrcpy --push-target /你的/目录 将文件拖放到 scrcpy 可以传输文件,此命令指定默认保存目录
只读模式 (仅显示不控制) scrcpy -n
屏幕录像 scrcpy -r 视频文件名.mp4.mkv
屏幕录像 (禁用电脑显示) scrcpy -Nr 文件名.mkv
设置窗口标题 scrcpy --window-title '异次元好棒!'
同步传输声音 可借助 USBaudio 这个开源项目实现,但仅支持 Linux 系统

更多参数,可见官方中文文档官方英文文档。英文文档是最新的,但是中文文档也够用。

Quick Running Script

#!/bin/bash
clear
echo "请用 USB 连接手机并打开调试模式"
sleep 5
adb tcpip 5555
sleep 3
adb connect `adb shell ip route | awk '{print $9}'`:5555
echo "请断开手机的 USB 连接"
sleep 5
scrcpy -S --window-title Vivy
Share