美文网首页
Scrcpy无线连接测试机

Scrcpy无线连接测试机

作者: 资本家大恶人 | 来源:发表于2020-07-16 08:06 被阅读0次

    这个应用程序提供了USB(或TCP/IP)上连接的Android设备的显示和控制。它不需要任何根访问,它适用于GNU/Linux、Windows和macOS

    它专注于:

    1. 精致 (本机,仅显示设备屏幕)
    2. 性能 (30 ~ 60 fps)
    3. 质量 (1920 × 1080或以上)
    4. 低延迟 (35 ~ 70毫秒)
    5. 快速启动 (显示第一张图片约1秒)
    6. 非侵入性 (不在设备上安装任何软件)

    需求

    Android设备至少需要API 21 (Android 5.0)

    确保在设备上启用adb调试

    在某些设备上,还需要启用一个附加选项来使用键盘和鼠标控制它

    获取

    Linux

    关于Debian和Ubuntu (20.04)

    apt install scrcpy
    
    

    也可以自己编译

    Windows

    对于Windows,为了简单起见,可以使用预构建的存档,其中包含所有依赖项(包括adb)

    scrcpy-win64-v1.14.zip

    也可以使用Chocolatey进行安装

    choco install scrcpy
    choco install adb # 如果你还没有
    
    

    Scoop

    scoop install scrcpy
    scoop install adb # 如果你还没有
    
    

    macOS

    该应用程序可以在Homebrew中使用,可以直接安装它

    brew install scrcpy
    
    

    您需要ADB,并且可以从系统路径PATH访问它,如果你还没有

    brew cask install android-platform-tools
    
    

    运行

    插入一个Android设备,然后执行

    scrcpy
    
    

    它接受命令行参数

    scrcpy --help
    
    

    特性

    获取配置

    减少尺寸

    有时,将Android设备镜像成低分辨率是很有用的,可以提高性能

    将宽度和高度限制为某个值 (例如1024)

    scrcpy --max-size 1024
    scrcpy -m 1024  # 短的版本
    
    

    计算另外一边以保证设备的高宽比被保留,例如 1920×1080的设备镜像为1024×576

    改变码率

    默认的比特率是8mbps,改变视频比特率 (例如:2mbps)

    scrcpy --bit-rate 2M
    scrcpy -b 2M  # 短的版本
    
    

    限制帧率

    捕获帧速率可以被限制

    scrcpy --max-fps 15
    
    

    这是Android 10以来的官方支持,但在更早的版本上可能也可以工作

    裁切

    设备屏幕可以裁剪成只反映屏幕的一部分

    这是有用的,例如反映只有一只眼睛的虚拟现实眼镜

    scrcpy --crop 1224:1440:0:0   # 1224x1440 偏移量 (0,0)
    
    

    如果--max-size也指定了,则在裁剪之后应用调整大小

    锁定视频方向

    锁定镜像的方向

    scrcpy --lock-video-orientation 0   # 自然方向
    scrcpy --lock-video-orientation 1   # 逆时针90°
    scrcpy --lock-video-orientation 2   # 180°
    scrcpy --lock-video-orientation 3   # 顺时针90°
    
    

    这会影响录制方向

    录屏

    可以在镜像时录屏

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

    在录屏时禁用镜像

    scrcpy --no-display --record file.mp4
    scrcpy -Nr file.mkv
    # 用Ctrl+C中断录制
    
    

    “跳过的帧”被记录,即使它们没有实时显示(出于性能原因)

    帧是设备上的时间戳,因此包延迟变化不会影响记录的文件

    连接

    无线

    Scrcpy使用adb与设备通信,adb可以通过TCP/IP连接到设备

    1. 将设备连接到与计算机相同的Wi-Fi
    2. 获取设备IP地址(设置→关于手机→状态)
    3. 在设备上通过TCP/IP启用adb adb tcpip 5555
    4. 拔掉设备
    5. 连接到您的设备 adb connect DEVICE_IP:5555 ,其中DEVICE_IP为设备ip地址
    6. 像往常一样运行scrcpy

    减少比特率可能会有用

    scrcpy --bit-rate 2M --max-size 800
    scrcpy -b2M -m800  # 短的版本
    
    

    多设备

    如果adb设备中列出了多个设备,则必须指定序列

    scrcpy --serial 0123456789abcdef
    scrcpy -s 0123456789abcdef  # 短的版本
    
    

    如果设备通过TCP/IP连接

    scrcpy --serial 192.168.0.1:5555
    scrcpy -s 192.168.0.1:5555  # 短的版本
    
    

    可以为多个设备启动多个scrcpy实例

    SSH隧道

    要连接到远程设备,可以将本地adb客户机连接到远程adb服务器 (前提是它们使用相同版本的adb协议)

    adb kill-server    # 在5037端口上关闭本地adb服务器
    ssh -CN -L5037:localhost:5037 -R27183:localhost:27183 your_remote_computer
    # 保持开放
    
    

    从另一个终端

    scrcpy
    
    

    为了避免启用远程端口转发,可以强制一个转发连接 (注意 -L 而不是 -R )

    adb kill-server    # 在5037端口上关闭本地adb服务器
    ssh -CN -L5037:localhost:5037 -L27183:localhost:27183 your_remote_computer
    # 保持开放
    
    

    从另一个终端

    scrcpy --force-adb-forwrad
    
    

    就像无线连接一样,降低视频质量或许会更好用

    scrcpy -b2M -m800 --max-fps 15
    
    

    窗口配置

    标题

    默认情况下,窗口标题是设备模型,它是可以改变的

    scrcpy --window-title 'My device'
    
    

    位置和大小

    可以指定初始窗口位置和大小

    scrcpy --window-x 100 --window-y 100 --window-width 800 --window-height 600
    
    

    无边界

    禁用窗口装饰

    scrcpy --window-borderless
    
    

    总是置顶

    保持scrcpy窗口总是在顶部

    scrcpy --always-on-top
    
    

    全屏

    应用程序可以直接在全屏启动

    scrcpy --fullscreen
    scrcpy -f  # 短的版本
    
    

    然后可以用 ctrl + f 动态切换全屏

    旋转

    窗口可以旋转

    scrcpy --rotation 1
    
    
    • 0: 不旋转
    • 1: 逆时针旋转90度
    • 2: 旋转180度
    • 3: 顺时针旋转90度

    还可以通过 Ctrl + ←Ctrl + → 动态更改旋转

    其他镜像选项

    只读

    禁用控件 (可以与设备交互的所有东西,如输入键、鼠标事件、拖放文件)

    scrcpy --no-control
    scrcpy -n
    
    

    显示

    如果有多个显示器可用,可以选择要镜像的显示器

    scrcpy --display 1
    
    

    可以检索显示id列表

    adb shell dumpsys display   # 在输出中查找我的显示id
    
    

    只有当设备至少运行Android 10时才能控制辅助显示(否则以只读方式镜像)

    关闭屏幕

    可以使用命令行选项关闭设备屏幕

    scrcpy --turn-screen-off
    scrcpy -S
    
    

    或在任何时候按 Ctrl + o

    Ctrl + Shift + o (或者 POWER, Ctrl + p) 恢复

    它还可以防止设备休眠

    scrcpy --turn-screen-off --stay-awake
    scrcpy -Sw
    
    

    显示触摸

    对于演示,显示物理触摸(在物理设备上)可能很有用

    Scrcpy提供了一个选项来在启动时启用该特性,并在退出时恢复初始值

    scrcpy --show-touches
    scrcpy -t
    
    

    输入控制

    旋转设备的屏幕

    Ctrl + r 在纵向和横向模式之间切换

    注意,它只在前台应用程序支持所请求的方向时才旋转

    复制粘贴

    可以在计算机和设备之间双向同步剪贴板

    • Ctrl + c 将设备剪贴板复制到计算机剪贴板
    • Ctrl + Shift + v 将电脑剪贴板复制到设备剪贴板(如果设备运行Android >= 7则粘贴)
    • Ctrl + v 将计算机剪贴板粘贴为文本事件序列

    此外,每当Android剪贴板发生变化时,它都会自动同步到计算机剪贴板

    文件拖动

    安装APK

    要安装APK,请将APK文件(以.apk结尾)拖放到scrcpy窗口

    推送文件到设备

    要将文件推送到设备上的 /sdcard/,请将一个(非apk)文件拖放到scrcpy窗口

    目标目录可以在启动时更改

    scrcpy --push-target /sdcard/foo/bar/
    
    

    快捷键

    Action 快捷键 快捷键 (macOS)
    切换全屏模式 Ctrl+f Cmd+f
    向左旋转屏幕 Ctrl+ (left) Cmd+ (left)
    向右旋转屏幕 Ctrl+ (right) Cmd+ (right)
    将窗口大小调整为1:1 Ctrl+g Cmd+g
    调整窗口大小以移除黑色边框 Ctrl+x Double-click¹ Cmd+x Double-click¹
    点击 HOME Ctrl+h Middle-click Ctrl+h Middle-click
    点击 BACK Ctrl+b Right-click² Cmd+b Right-click²
    点击 APP_SWITCH Ctrl+s Cmd+s
    点击 MENU Ctrl+m Ctrl+m
    点击 VOLUME_UP Ctrl+ (up) Cmd+ (up)
    点击 VOLUME_DOWN Ctrl+ (down) Cmd+ (down)
    点击 POWER Ctrl+p Cmd+p
    开机 Right-click² Right-click²
    关闭设备屏幕 Ctrl+o Cmd+o
    点亮设备屏幕 Ctrl+Shift+o Cmd+Shift+o
    旋转设备屏幕 Ctrl+r Cmd+r
    展开通知面板 Ctrl+n Cmd+n
    折叠通知面板 Ctrl+Shift+n Cmd+Shift+n
    将设备剪贴板复制到计算机 Ctrl+c Cmd+c
    将电脑剪贴板粘贴到设备上 Ctrl+v Cmd+v
    将计算机剪贴板复制到设备并粘贴 Ctrl+Shift+v Cmd+Shift+v
    启用/禁用帧率显示 Ctrl+i Cmd+i

    自定义路径

    要使用特定的adb二进制文件,在环境变量adb中配置其路径

    ADB=/path/to/adb scrcpy
    
    

    要覆盖scrcpy-server文件的路径,需要在SCRCPY_SERVER_PATH中配置它的路径

    相关文章

      网友评论

          本文标题:Scrcpy无线连接测试机

          本文链接:https://www.haomeiwen.com/subject/rucgcktx.html