p.p1 { margin: 0; font: 20px ".PingFang SC"; color: rgba(69, 69, 69, 1) }
p.p2 { margin: 0; font: 20px ".PingFang SC"; color: rgba(69, 69, 69, 1); min-height: 21px }
p.p3 { margin: 0; font: 17px "Helvetica Neue"; color: rgba(228, 175, 10, 1) }

1、Airplay 投屏

手机系统兼容性:兼容iOS9、iOS10、iOS11(目前需要适配)系统,每次iOS系统升级,对应的Airplay Mirroring协议会更新,破解成本高。

运行环境:Airplay接收视频流端可以是PC或者是iOS手机上的App,手机App上面需要对视频流H264再次解码,性能消耗较大。

应用:目前主要录屏软件采用的方式是,将手机屏幕内容投屏到PC软件上。

2、ReplayKit2

手机系统兼容性:iOS11以上系统,官方提供的直播录屏方案,稳定性教好。

运行环境:需要App实现ReplayKit2框架的代码,跟随App,需要一定操作流程。

应用:直播App软件,在手机上面进行编码,对手机性能要求较高。

3、libimobiledevice方式

手机系统兼容性:iOS9(未验证)、iOS10、iOS11 以上系统,苹果的itunes USB协议破解版本,兼容性较好

运行环境:libimobiledevice代码开源,可以运行在MacOS、Windows、linux系统之上。需要USB将手机连接Mac。

应用:一些针对iOS手机的信息展示功能小软件

局限:libimobiledevice代码中有截屏功能,截屏每秒钟最多只有4帧,无法满足实时采集需求。

4、AVCaptureDevice deviceWithUniqueID 方式

手机运行环境:iOS系统都兼容

运行环境:MacOS系统,效果很好,QuickTime的采集方式。需要USB将手机连接Mac。

应用:暂时没有看到Mac上面的软件采用

相关代码:https://github.com/openstf/ios-minicap/blob/master/src/StreamClient.mm

其他平台实现:

该方式是最完美的方式,需要继续调研,Windows上面比较少见。有一个人宣称做出来了,但是没有公开代码。

  https://plus.google.com/114395554184391775867/posts/N3pKpzK8A6K

  https://github.com/huisinro/ios-usb-mirroring

iOS 系统级别录屏方式调研的更多相关文章

  1. iOS实现组件录屏视频不可见,用户肉眼可见(类似系统键盘效果)

    系统键盘在密码框输入时,如果用户开启录屏,键盘在录屏得到的视频里会不可见,但是用户在录屏时却能看到. 为了实现这个效果,利用UItextfield在录屏下视频不可见的特性,将实现这一效果的私有UIvi ...

  2. video 安卓ios系统 浏览器 全屏播放以及自动播放的问题

    ios自动播放 <body onload="load()"> <div class="result_box"> <div clas ...

  3. Android 和 iOS 实现录屏推流的方案整理

    一.录屏推流实现的步骤 1. 采集数据 主要是采集屏幕获得视频数据,采集麦克风获得音频数据,如果可以实现的话,我们还可以采集一些应用内置的音频数据. 2. 数据格式转换 主要是将获取到的视频和音频转换 ...

  4. linux系统如何进行录屏

    linux系统如何录屏安装SimpleScreenRecorder 按Ctrl+ALt+T打开终端 添加源: sudo add-apt-repository ppa:maarten-baert/sim ...

  5. 手游录屏直播技术详解 | 直播 SDK 性能优化实践

    在上期<直播推流端弱网优化策略 >中,我们介绍了直播推流端是如何优化的.本期,将介绍手游直播中录屏的实现方式. 直播经过一年左右的快速发展,衍生出越来越丰富的业务形式,也覆盖越来越广的应用 ...

  6. Android 4.4 KitKat终于支持录屏(Screen Recording)了!

    本文介绍了Android 4.4 KitKat系统新增加的录屏功能以及录屏方法,和限制因素.如果App由于版权方面的原因,不想被记录屏幕录像的话,APP只需要在相应的SurfaceView请求“Sur ...

  7. C#开源录音组件、录像组件、录屏组件及demo源码

    在多媒体系统中,一般都会涉及到录音.录像.录屏问题,采集得到的数据可以用来传输.播放.或存储.所以,对于像课件录制系统.语音视频录制系统.录屏系统等,多媒体数据的采集就是最基础的功能之一. MCapt ...

  8. ios手机录屏软件哪个好

    苹果手机中的airplay镜像,是苹果手机系统的一大特色,可以轻松把手机屏幕投射电脑,这个功能使苹果手机相较安卓手机投屏会更加轻松,那么如何实现苹果手机投射电脑屏幕?下面小编便来分享ios手机录屏软件 ...

  9. 搭建前端监控系统(六)JS截屏和录屏篇

    怎样定位前端线上问题,一直以来,都是很头疼的问题,因为它发生于用户的一系列操作之后.错误的原因可能源于机型,网络环境,接口请求,复杂的操作行为等等,在我们想要去解决的时候很难复现出来,自然也就无法解决 ...

  10. 录屏状态监听之防录屏 - iOS

    继之前接到电话.短信和截屏监听需求之后,在 iOS 11.0 系统之上新增了屏幕录制的新功能玩法,所以也随之迎来了新的屏幕录制监听的需求,即防录屏功能监听 ... 通过官方文档得知 capturedD ...

随机推荐

  1. EZHTTP(一键安装Nginx Apache PHP MySQL Memcached Pureftpd)安装【测试ing】

    EZHTTP(一键安装Nginx Apache PHP MySQL Memcached Pureftpd)安装 [复制链接] 本帖最后由 梁国平 于 2014-2-11 22:47 编辑 简介     ...

  2. js 是单线程吗?

    前言 在html5中,js中允许操作多个线程执行,但是不能操作dom元素,这是一个痛点. 但是在mvvm依然存在很大的作用力,因为我们只需要操作数据,在操作数据的时候委托机制在主线程中就实现了对dom ...

  3. RocketMQ 消息集成:多类型业务消息-普通消息

    简介: 本篇将从业务集成场景的诉求开始,介绍 RocketMQ 作为业务消息集成方案的核心能力和优势,通过功能场景.应用案例以及最佳实践等角度介绍 RocketMQ 普通消息类型的使用. 引言 Apa ...

  4. 动态尺寸模型优化实践之Shape Constraint IR Part I

    简介: 在本系列分享中我们将介绍BladeDISC在动态shape语义下做性能优化的一些实践和思考.本次分享的是我们最近开展的有关shape constraint IR的工作,Part I 中我们将介 ...

  5. PolarDB-X 高可用存储服务: 基于 X-Paxos 一致性协议

    简介: 摘自刘永平(慕少)阿里云 PolarDB-X 技术专家在PolarDB-X | 新品发布会中的讲解内容. 了解更多PolarDB-X 内容:https://developer.aliyun.c ...

  6. OSI模型之网络层

    一.简介 网络层是OSI参考模型中的第三层,同时也是TCP/IP模型的第二层.它介于传输层和数据链路层之间,主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务.网络层传输单位是数据 ...

  7. MacOS安装gprMax教程

    原文发布于:https://blog.zhaoxuan.site/archives/19.html: 第一时间获取最新文章请关注博客个人站:https://blog.zhaoxuan.site. 1. ...

  8. C#.Net筑基-运算符🔣Family

    C#运算符 内置了丰富的运算符操作类型,使用方便,极大的简化了编码,同时还支持多种运算符重载机制,让自定义的类型也能支持运算符行为. 01.运算符概览 运算符分类 描述 数学运算 基础的加减乘除,及+ ...

  9. VS Code侧边栏的“资源管理器”丢了

    选择"查看"下的"命令面板" 输入:View: Reset View Locations 所有的视图会恢复到默认的位置.

  10. 安全高效 | AIRIOT智慧工地管理解决方案

      建筑工地施工材料.机械设备.工程车.人员各个环节管理相对复杂.建筑业也是安全事故频发的高危行业,安全管控尤为重要.建筑施工单位想要保障安全生产,做好能源消耗管控降低生产成本,需要解决掉很多现状问题 ...