当测试一些物联网产品使用安卓系统,但系统界面没有像手机那么方便操作时,可以考虑使用adb命令实现对测试产品的截屏/录屏,adb shell screenrecord可以实现对安卓系统的录屏功能,截屏则使用screencap命令。查看帮助命令,参数 --help

adb shell screenrecord --help

参数说明:

  1. 开始录制命令:

adb shell screenrecord /sdcard/demo.mp4

说明:录制手机屏幕,视频格式为mp4,存放到手机sd卡里,默认录制时间为180s。

screenrecord是一个shell命令,支持Android4.4(API level 19)以上,支持视频格式: mp4

2. 指定视频分辨率大小,参数 --size

adb shell screenrecord --size 1280*720 /sdcard/demo.mp4

说明:录制视频,分辨率为1280*720,如果不指定默认使用手机的分辨率,为获得最佳效果,请使用设备上的高级视频编码(AVC)支持的大小

3. 指定视频的比特率, 参数 --bit-rate

adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4

说明:指定视频的比特率为6Mbps,如果不指定,默认为4Mbps. 你可以增加比特率以提高视频质量或为了让文件更小而降低比特率

4. 旋转90度,参数: --rotate

adb shell screenrecord --rotate /sdcard/demo.mp4

说明:此功能为实验性的,在nexus6设备上实验,录制的视频播放时也是旋转90度播放,体验不太友好。

5. 导出视频:

adb pull /sdcard/demo.mp4 D:/

说明:导出视频的位置在D盘根目录下,名称为demo.mp4

也可以结合python实现代码如下:

import os
import datetime
import subprocessclass ADB:def __init__(self, device, target_path):self.target_path = target_pathsubprocess.Popen(f"adb connect {device}")   # adb连接安卓设备def screenshot(self):# 使用 && 隔开。file_name = datetime.datetime.now().strftime("%Y-%m-%d %H-%M-%S")step1 = rf"cd {self.target_path}"step2 = f"adb shell screencap /sdcard/{file_name}.png"step3 = f"adb pull sdcard/{file_name}.png ./"   # 将截屏图片传到电脑设备command = fr"{step1} && {step2} && {step3}"os.popen(command)def video(self, record_time):   # 录制时间单位为秒# 采集file_name = datetime.datetime.now().strftime("%Y%m%d_%H%M%S")step1 = rf"cd {self.target_path}"step2 = f"adb shell screenrecord  --time-limit {record_time} /sdcard/{file_name}.mp4"command = fr"{step1} && {step2}"os.system(command)# 拉取录屏文件到电脑设备step4 = rf"adb pull sdcard/{file_name}.mp4 ./"command2 = fr"{step1} && {step4}"os.system(command2)if __name__ == '__main__':deviceIp = "10.32.3.51"target_path = r"C:\Users\DM\Desktop\录屏视频"adb = ADB(deviceIp, target_path)# adb.screenshot()adb.video(60)

python+adb实现截屏/录屏功能相关推荐

  1. iphone屏幕镜像如何全屏_苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)

    苹果系统中的截屏和录屏.标记和剪辑功能一如它的其他产品设计,做得非常细致.在我们日常的工作中,不免会遇到这些功能,今天小编就给大家详细讲解下苹果系统截屏录屏.标记剪辑功能,希望对大家有所帮助! 001 ...

  2. 苹果xr截屏怎么截_苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)

    苹果系统中的截屏和录屏.标记和剪辑功能一如它的其他产品设计,做得非常细致.在我们日常的工作中,不免会遇到这些功能,今天小编就给大家详细讲解下苹果系统截屏录屏.标记剪辑功能,希望对大家有所帮助! 001 ...

  3. android 禁止截屏录屏功能,android 应用禁止截屏录屏

    更新记录 1.0.0(2021-02-01) Android 应用禁止截屏录屏 平台兼容性 Android iOS 适用版本区间:4.4 - 11.0 × 原生插件通用使用流程: 购买插件,选择该插件 ...

  4. Android 禁止截屏录屏

    一.应用中禁止截屏录屏 @Overrideprotected void onCreate(Bundle savedInstanceState) {getWindow().addFlags(Window ...

  5. 截屏录屏和屏幕颜色抓取

    分享截屏录屏和屏幕颜色抓取两个工具 这两个工具都是我常用的,觉得还不错 下面分享链接以及使用方法 截屏录屏取色工具链接: https://pan.baidu.com/s/1GA75-5oX4yuujU ...

  6. Win10怎么截屏录屏?Win10截图方法大全 超强大的工具!

    转载自奇它博客,原文链接:[http://qitablog.com/tips/win10怎么截屏录屏?win10截图方法大全-超强大的工具!.html ‎] [infobox title=" ...

  7. 【Ubuntu20.04】好用的快捷键\截屏录屏

    unbuntu20.04好用的快捷键 快捷键很大程度上决定了一个产品的使用体验,作为一个刚刚接触linux的小白根据自身需求学习了一下在编码过程中ubuntu20.04可能会用到的一些,在这里和大家分 ...

  8. 咔咔截屏录屏大师如何录制手机视频

    首先确保你的 Android 已经 ROOT ,那么接下来 小米手机需要开发版,并且需要在"授权管理"中开启"咔咔截屏录屏大师"的 ROOT 权限 具体操作:小 ...

  9. webrtc性能优化:MacOS下的快速截屏录屏方式

    截屏和录屏现在已经变成了各个系统中最最基础的功能了,特别是直播的兴起和疫情促进的会议系统,诸如远程办公,都会使用到系统录屏的功能,录屏的快慢又决定了我们直播和会议的流畅程度. 最近各个大厂商也推出了很 ...

最新文章

  1. html:text中readonly,HTML Input Text readOnly用法及代码示例
  2. 【Flutter】Flutter 调试 ( 调试回退功能 | Debug 调试中查看变量的方式 | 控制台信息 )
  3. [BUUCTF-pwn]——bjdctf_2020_babystack2
  4. [机器学习] Boosting算法4 --- LightGBM介绍与分布式
  5. 关于F5的一些基础话题
  6. iPhone 13有搞头,经典功能或将回归!
  7. 问卷调查模块实现的过程中的历程
  8. 123f是什么c语言,123RF博客
  9. 面试产品经理,参考题目,考察点,简历筛选标准,总结
  10. 国产Si24R2F+2.4GHz超低功耗有源RFID无线发射芯片
  11. i9023 中国联通 3G 西安信息中心号码
  12. 基本输入输出系统BIOS
  13. html风琴图片展示,炫酷的jQuery手风琴图片和菜单插件及源码
  14. c语言重复测试,C语言检测过零的方法--等待过零检测法
  15. Flight_Simulator(DHC-2‘Beaver’aircraft )
  16. 趣图:程序员到底是一群什么样的人?
  17. 「Gitee篇」如何用Git平台账号登录建木CI
  18. 音乐播放器小程序(音乐搜索)
  19. python 英语分词_基于Python NLTK库进行英文文本预处理
  20. 免费Web接口调用大全

热门文章

  1. 高端的python培训
  2. 模型评价ROC\AUC\查准率\查全率\F-score\混淆矩阵\KS曲线\PR曲线等
  3. 射雕英雄传ol显示服务器断开,射雕英雄传OL5月28日维护更新内容
  4. gta5服务器多久维护,各位大佬问一下GTA5 股票里的BAWSAQ为什么一直维护啊
  5. MAC端 微信同时登录多个账号
  6. 计算机与科学唐家琪,基于网络分析的蛋白质功能预测方法研究
  7. 计算机奥林匹克竞赛题库,美国计算机奥林匹克竞赛题库分享
  8. jdk1.8 HashMap扩容机制变化
  9. 怎么设置计算机硬盘密码,怎么设置硬盘密码
  10. 学习笔记:使用opencv做双目测距(相机标定+立体匹配+测距).