基于Qt+ffmpeg的跨平台安卓实时投屏软件的开发与设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种高分辨率实时屏幕共享硬件加速系统

摘要:建立一个支持超高分辨率(如4k)的交互式屏幕共享系统具有挑战性,因为延迟和帧速率在用户体验中扮演着重要角色。屏幕帧需要有效地压缩,而不需要消耗大量的计算资源。提出了一种实时屏幕共享的硬件加速系统,该系统通过利用连续屏幕帧间的内容冗余来减少编码工作量。提出了一种采用不同输入大小的H.264高级视频编码(H.264/AVC)的多个编码器,通过为更新的屏幕内容选择合适的编码方式,节省了编码时间。提出了一种优化的元数据处理方法。帧内的小而远的更新可以分割成独立的帧,以便进行更有效的压缩,这也有利于交互延迟。在评估中,在一般的屏幕共享场景中,该系统比一般的单个编解码器的编码时间更短。对延迟的测量表明,4K分辨率屏幕共享的端到端延迟仅为17-25ms,这使得该系统适合于本地有线和无线连接中的各种应用。

关键词:4K分辨率,硬件-加速编码,低延迟屏幕共享

目录

第1章绪论 (1)

1.1研究背景和意义 (1)

1.1.1 系统的开发背景分析 (1)

1.1.2 本课题的研究意义 (1)

1.2 国内外的研究 (2)

1.2.1 国内研究 (2)

1.2.2 国外研究 (2)

1.3课题研究方法和内容 (2)

1.3.1 研究方法和关键技术 (2)

第2章开发工具及安装 (4)

2.1 Qt (4)

2.1.1 Qt简介 (4)

2.1.2 Qt的安装 (4)

2.2 Visual Studio 2017 (6)

2.2.1 Visual Studio 2017的安装和环境配置 (6)

第3章系统功能需求 (10)

3.1 系统总体功能需求 (10)

3.2 系统总体功能描述 (10)

3.2.1.实时显示Android设备屏幕 (10)

3.2.2实时键鼠控制Android设备 (11)

3.2.3屏幕录制 (11)

3.2.4无线连接 (11)

3.2.5全屏显示 (11)

3.2.6常用功能按键 (11)

3.2.7传输文件/apk (11)

3.2.8后台录制 (11)

3.2.9复制粘贴 (12)

3.2.10在计算机和设备之间双向同步剪贴板 (12)

3.3 用户子系统的功能需求 (12)

第4章系统设计 (13)

4.1 系统总体设计 (13)

第5章 UML建模 (14)

5.1 用例图 (14)

5.1.1 用户用例图 (14)

5.2 用例规约表 (14)

5.2.1 启动服务用例规约表 (14)

5.2.2 相关配置用例规约表 (15)

5.2.3 无线连接用例规约表 (16)

5.3 类图 (18)

5.3.1 系统实现类图 (18)

5.4 顺序图 (19)

5.4.1 启动服务顺序图 (19)

5.4.3 无线连接顺序类图 (20)

5.5 状态图 (21)

5.5.1 用户状态图 (21)

5.6 活动图 (22)

5.6.1 用户连接活动图 (22)

5.7 组件图 (23)

5.8 部署图 (23)

第6章系统实现思路 (24)

6.1 adb reverse实现思路 (24)

6.2 server实现思路 (25)

6.3 解码器实现思路 (26)

6.4 渲染器实现思路 (27)

6.5 输入输出实现思路 (28)

第1章绪论

1.1研究背景和意义

1.1.1系统的开发背景分析

随着智能技术的渗透与迭代发展,小屏幕的画面逐渐满足不了人们的大屏幕的需求,于是各种大屏幕的智能设备应运而生。手机在人们的日常活中很常见,但是屏幕却是一个问题,屏幕太大,则不利于携带;屏幕过小,则不满足人们对于大屏幕手机的需求,所以很多商家看到了商机,BAT巨头纷纷打造硬件产品--投屏应用,以进入该市场抢占商机,投屏应用逐渐成为家庭场景下的流行应用。

微软(Microsoft)最早提出了「三端一云」概念,其主要问题是在各个屏幕间的互动连接,是许多用户曾渴望的功能,但却很少看到有良好的解抉方案。很多商家一直为这个问题尽心竭力地找解决办法,但是都原地踏步、踟蹰不前。所幸的是,无线区域网路联盟(Wi-Fi Alliance)注意到上述需求,因此对于家庭及企业在屏幕间互动的应用,提出以无线方式进行屏幕共享的技术Miracast。1

1.1.2 本课题的研究意义

本课题主要研究和开发移动设备的各个屏幕间的互动连接,让小型屏幕的移动设备可以将屏幕实时投屏到大屏幕的移动设备上,从而实现屏幕共享。

随着现代科技的快速发展,从最原始的触屏板砖手机到现在的智能手机,从最原始的小屏手机到现在各种各样的大屏手机,经过一代又一代的更新换代以及技术升级,经过一些人的不懈努力,我们终于成功地实现了手机投屏这一项技术,我们可以通过手机投屏技术将我们的手机连接到咱们电脑上,然后咱们可以看到咱们的电脑屏幕上会出现手机画面。

1.2 国内外的研究

1.2.1 国内研究

在国内,我们可以在《2019投屏行业市场研究报告》上明确知道消费类投屏应用经历了创业期(2012-2015年秋季)、快速成长期(2015年秋季-2017年底)、裂变期(2018年)和转折期(目前)这四个阶段。其中,我们可以认为2019年是投屏的转折期,原因有两个:一方面,中国移动家庭宽带与视频用户日渐庞大,并展现赶超过中国电信的势头;另一方面,智能手机的快速发展也逐渐加快手机投屏技术的研究。在此背景下,中国移动在年初发布了和家投屏产品,很受广大人们的青睐;这正式表明了运营商在投屏领域的积极参与姿态。同时,腾讯作为BAT后来者,也发布了“极光快投”正式进入投屏硬件产品市场这一消息。

更值得一提的是,华为发布的“智慧屏”将跨屏体验升级为智慧家庭下的常态应用,也就是说,投屏将进入广大人们的日常生活。此外,投屏针对用户端的商业模式也在加速推进中。2

1.2.2 国外研究

相对地,在国外,在投屏这方面最具有代表意义的是苹果(iPhone)的AirPlay 镜像,它可以无线投屏,而无线投屏是有线投屏的升级。近一些年来,iPhone公司再次技术创新,如今的iOS设备中已经自带投屏技术--AirPlay(苹果公司制定的无线通讯技术),该技术可以直接将iPhone、iPad中的图像数据传输到电脑/电视。

1.3课题研究方法和内容

1.3.1 研究方法和关键技术

以下是系统主要使用的研究方法和关键技术:

“安卓实时投屏软件”实时同屏的核心技术在于adb reverse搭建的反向代理。2

相关文档
最新文档