CN112035081A - 投屏方法、装置、计算机设备及存储介质 - Google Patents
投屏方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112035081A CN112035081A CN202010904050.8A CN202010904050A CN112035081A CN 112035081 A CN112035081 A CN 112035081A CN 202010904050 A CN202010904050 A CN 202010904050A CN 112035081 A CN112035081 A CN 112035081A
- Authority
- CN
- China
- Prior art keywords
- screen projection
- data
- screen
- projection display
- browser program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000008569 process Effects 0.000 claims description 30
- 230000006835 compression Effects 0.000 claims description 26
- 238000007906 compression Methods 0.000 claims description 26
- 230000005540 biological transmission Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010276 construction Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 18
- 238000005266 casting Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Abstract
本发明提供一种投屏方法、装置、计算机设备及存储介质,通过多个投屏设备分别对待投屏数据编码生成相应的投屏数据并发送至服务器,服务器将接收到的投屏数据发送至浏览器程序中,由浏览器程序对投屏数据进行解码以得到投屏显示数据,浏览器程序基于投屏显示数据生成与投屏设备个数对应的投屏显示区域,采用投屏显示区域显示相应的投屏显示数据。本发明的方案采用有线连接将多个投屏设备分别对待投屏数据编码生成相应的投屏数据,从而对多个投屏设备进行投屏,解码后投屏显示数据,由浏览器程序根据投屏显示数据显示对应的投屏显示数据,扩展了投屏的管理能力,保证投屏的流畅性。本发明可应用于智慧教育的场景中,从而推动智慧城市的建设。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种投屏方法、装置、计算机设备及存储介质。
背景技术
随着移动终端设备的使用越来越多频繁,将手机等投屏设备进行投屏的运用也越来越多。现有的投屏方法中的如iOS移动设备的Airplay无线投屏方式中,在进行交互时数据传输不稳定容易出现卡顿或中断投屏等情况。另一种投屏方式是通过不断截屏并发送图片的方式,会出现占用的带宽较大的问题,运动中的图像也无法流畅播放。尤其当有多个投屏设备进行投屏时,无法正常流畅展示,因此如何较高质量的实现投屏成为本领域技术人员亟待解决的问题。
发明内容
本发明的目的在于提供一种投屏方法、装置、计算机设备及存储介质,以解决上述现有技术中的多个设备投屏时质量不高的问题。
为了实现上述目的,本发明提供一种投屏方法,应用于iOS系统中,多个投屏设备与接收制备有线连接,包括:
多个投屏设备分别对待投屏数据编码生成相应的投屏数据,并分别将相应的所述投屏数据发送至服务器;
所述服务器将接收到的多个所述投屏数据发送至接收设备的浏览器程序中;
所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据;
所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
进一步的,所述多个投屏设备分别对待投屏数据编码生成相应的投屏数据,并分别将相应的所述投屏数据发送至服务器,包括:
每一所述投屏设备均采用H264格式对所述待投屏数据编码生成相应的所述投屏数据,并将相应的所述投屏数据发送至服务器;所述投屏数据包括元数据和目标投屏数据;
其中,元数据包括目标投屏数据的分辨率、帧率和比特率。
进一步的,所述H264格式采用的算法包括帧内压缩和帧间压缩,所述帧内压缩生成全部编码的图像帧,所述帧间压缩去除相邻帧之间的冗余信息生成部分编码的图像帧。
进一步的,所述服务器将接收到的多个所述投屏数据发送至接收设备的浏览器程序中,包括:
所述服务器分别对接收到的每一所述投屏数据添加预设界面配置信息,再对所有的所述投屏数据按照时间戳生成视频流;
将所述视频流发送至所述接收设备的所述浏览器程序中。
进一步的,所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据,包括:
所述浏览器采用websocket协议获取所述服务器发送的所述视频流,对所述视频流进行解码,以得到多个与所述待投屏数据对应的携带预设界面配置信息的所述投屏显示数据。
进一步的,所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,包括:
所述浏览器程序基于所述投屏显示数据,生成相应个数的投屏任务;
基于所述投屏任务创建相应个数的进程,其中,每一个所述投屏任务对应一个所述进程,每一所述进程对应一个所述投屏显示数据;
根据所述进程创建相应的投屏显示区域;
采用所述投屏显示区域显示相应的投屏显示数据。
进一步的,所述浏览器程序基于所述投屏显示数据,生成相应个数的投屏任务,包括:
所述浏览器程序根据所述投屏显示数据中的所述预设界面配置信息的个数生成相应个投屏任务,每一投屏任务对应一显示控件,所述显示控件与相应的进程对应。
为了实现上述目的,本发明提供一种投屏装置,包括接收设备,所述接收设备与多个投屏设备有线连接,所述接收设备包括获取模块、传输模块、解码模块和显示模块,所述获取模块用于获取多个所述投屏设备发送的投屏数据,所述传输模块用于将接收到的多个所述投屏数据发送至浏览器程序中,所述解码模块用于控制所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据,所述显示模块用于控制所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
为了实现上述目的,本发明还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,存储介质上存储有计算机程序,所述存储介质存储的所述计算机程序被处理器执行时实现前述方法的步骤。
本发明提供的投屏方法、装置、计算机设备及存储介质采用有线连接将多个投屏设备分别对待投屏数据编码生成相应的投屏数据,从而对多个投屏设备进行投屏,通过浏览器程序进行接收,解码后投屏显示数据,由浏览器程序根据投屏设备的个数生成对应的投屏显示区域,在投屏显示区域显示对应的投屏显示数据,扩展了投屏的管理能力,保证投屏的流畅性。
附图说明
图1为本发明的投屏方法一个实施例的流程框图;
图2为本发明的投屏装置一个实施例的结构框图;
图3为本发明计算机设备的一个实施例的硬件架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的投屏方法、装置、计算机设备及存储介质,适用于医疗业务领域。本发明采用有线连接将多个投屏设备分别对待投屏数据编码生成相应的投屏数据,从而对多个投屏设备进行投屏,通过浏览器程序进行接收,解码后投屏显示数据,由浏览器程序根据投屏设备的个数生成对应的投屏显示区域,在投屏显示区域显示对应的投屏显示数据,扩展了投屏的管理能力,保证投屏的流畅性。
实施例一
参阅图1,示出了本实施的一种投屏方法,应用于iOS系统中,多个投屏设备与接收设备有线连接,包括如下步骤:
S1.多个投屏设备分别对待投屏数据编码生成相应的投屏数据,并分别将相应的所述投屏数据发送至服务器;
其中,投屏设备是用于投屏的电子设备,如各种移动设备,包括手机和平板等,将投屏设备的投屏内容通过有线连接方式连接到接收设备,有线连接方式可采用常用的UBS数据连接方式,也可以采用其它专用接口,有线连接方式具有速度快、稳定性高和延迟低等优点,能够传输更高清的图像和更高的帧率。待投屏数据包括投屏设备的屏幕所显示的内容,可以是图片如PPT投影,也可以是视频文件的视频流,将这些内容进行编码,通过初始化创建的编码器,将采集到的每一帧数据进行编码,分别将相应的投屏数据发送至服务器。
通过数据编码生成用于传输的数据形式,对待投屏数据进行编码时,每一投屏设备均采用H264格式对待投屏数据编码生成相应的投屏数据,并将相应的所述投屏数据发送至服务器。将待投屏数据转化编码成可用于传输的数据类型。相比于采用截图的方式,采用H264格式产生的数据将大大减少,因为H264格式除了关键帧是完整数据,其它视频帧数都是存储的帧图像之间的变化量,这就大大减少了数据大小,尤其是屏幕静止不动时。
H264格式采用的算法包括帧内(Intraframe)压缩和帧间(Interframe)压缩,帧内压缩生成全部编码的图像帧,其是生成I帧的算法,I帧是指一个完整的图像帧,帧间压缩去除相邻帧之间的冗余信息生成部分编码的图像帧,其包括生成B帧和P帧的算法,P帧是参考I帧而生成的不编码全部图像的帧,B帧是参考I帧和P帧而生成的不编码全部图像的帧。帧内压缩也称为空间压缩(Spatialcompression)。当压缩一帧图像时,仅考虑本帧的数据而不考虑相邻帧之间的冗余信息,这实际上与静态图像压缩类似。帧内一般采用有损压缩算法,由于帧内压缩是编码一个完整的图像,所以可以独立的解码、显示。帧内压缩一般达不到很高的压缩,跟编码jpeg差不多。帧间压缩的原理是:相邻几帧的数据有很大的相关性,或者说前后两帧信息变化很小的特点。也即连续的视频其相邻帧之间具有冗余信息,根据这一特性,压缩相邻帧之间的冗余量就可以进一步提高压缩量,减小压缩比。帧间压缩也称为时间压缩(Temporalcompression),它通过比较时间轴上不同帧之间的数据进行压缩。帧间压缩一般是无损的。帧差值(Framedifferencing)算法是一种典型的时间压缩法,它通过比较本帧与相邻帧之间的差异,仅记录本帧与其相邻帧的差值,这样可以大大减少数据量。
在本实施例中,投屏数据包括元数据和目标投屏数据,元数据位于目标投屏数据之前,元数据包括目标投屏数据的分辨率、帧率和比特率,由元数据提供视频信息以用于接收,元数据包括用来描述一个文件的特征的系统数据,用于描述数据属性的信息。对于元数据的管理方式可包括集中式管理和分布式管理。其中,集中式管理是指在系统中有一个节点专门司职元数据管理,所有元数据都存储在该节点的存储设备上,所有客户端对文件请求前,都要先对该元数据管理器请求元数据。分布式管理是指将元数据存放在系统的任意节点并且能动态的迁移,对元数据管理的职责也分布到各个不同的节点上,大多数集群文件系统都采用集中式的元数据管理。因为集中式管理实现简单,一致性维护容易,在一定的操作频繁度内可以提供较满意的性能。分布式元数据管理的好处是解决了集中式管理的单一失效点问题,而且性能不会随着操作频繁而出现瓶颈。
S2.所述服务器将接收到的多个所述投屏数据发送至接收设备的浏览器程序中;
具体地,所述服务器分别对接收到的每一所述投屏数据添加预设界面配置信息,再对所有的所述投屏数据按照时间戳顺序生成视频流;将所述视频流发送至所述接收设备的所述浏览器程序中。
其中,预设界面配置信息可包括投屏数据的分辨率,尺寸以及投屏数据对应的显示控件。每一投屏数据对应一唯一的预设界面配置信息。
在本实施例中,服务器可以是接收设备,如:采用OS X系统的Mac电脑,服务器也可以是浏览器的后台服务器。通过服务器将投屏数据发送至浏览器程序中,以实现提供数据传输服务的目的。相比于Airplay无线投屏方式需要额外的推流服务器处理转发,且不能通过浏览器直接展示。
S3.所述浏览器程序对多个所述投屏数据分别进行解码,以得到相应的投屏显示数据;
在本实施例中,投屏数据可包括音频数据和图像数据,投屏数据也可只包括图像数据。解码的过程是编码过程的反向处理,解码的过程是将数字音频数据流解析成模拟音视频信号来显示图像和声音,可通过创建的解码器进行初始化,传入描述视频的基本信息参数即可实现对视频的解码,解码后可进行视频展示,浏览器程序会对每一投屏数据分别进行解码,每一投屏数据形成一道视频展示,得到的投屏显示数据即可以用来播放视频。
为了得到相应的投屏显示数据,所述浏览器采用websocket协议获取所述服务器发送的所述视频流,对所述视频流进行解码,以得到多个与所述待投屏数据对应的携带预设界面配置信息的所述投屏显示数据,websocket协议是一种全双工通信协议,允许投屏设备的服务端主动推送数据,可通过浏览器不同的端口分别进行接收。
S4.所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据;其中,每一所述投屏显示区域对应一所述投屏设备。
具体的,所述浏览器程序基于所述投屏显示数据,生成相应个数的投屏任务,基于所述投屏任务创建相应个数的进程,其中,每一个所述投屏任务对应一个所述进程,每一所述进程对应一个所述投屏显示数据,通过第一进程对投屏任务进行管理,可通过不同的浏览页面来实现,即每个浏览页面作为一个投屏显示区域;根据所述进程创建相应的投屏显示区域;采用所述投屏显示区域显示相应的投屏显示数据,可使得每一个浏览页面显示投屏显示数据。在每一进程刚建立时,对所有的进程进行串行管理,依次接入执行;当进程建立后,所有的进程并行处理,各进程之间独立运行,使每个投屏设备独立完成投屏不受干扰。
生成投屏任务时,所述浏览器程序根据所述投屏显示数据中的所述预设界面配置信息的个数生成相应个投屏任务,每一投屏任务对应一显示控件,所述显示控件与相应的进程对应,通过显示控件对显示内容进行设置,使投屏任务都可以进行有效的管理。
在具体的实施方式中,可通过一台Mac电脑连接多个iOS视频同时投屏的方法,各个视频流互相独立,浏览器通过不同的端口访问不同的设备,可将各个连接设备通过开启子进程部署服务在不同的端口上,浏览器通过这些相应的端口去访问投屏设备。电脑端的程序可定时检查通过数据线连接的设备,如果有新的投屏设备连接,将记录新的设备信息,并通知给设备管理服务器,最终用户侧浏览器将展示新的可用设备,进行投屏。有设备断开的情况,同样通知给管理服务器,管理服务器推送给浏览器,通知用户设备断开,退出投屏。
为了实现在投屏显示区域的操作,在投屏的基础上还可以实现对投屏设备的远程控制,例如对于iOS移动设备,可采用移动测试框架webDriverAgent来进行远程控制,在前端的浏览器程序进行监听输入的控制指令(如:通过鼠标输入的控制指令),通过诸如点击和滑动视图等操作确认屏幕上的视图状态,由发送接口告知后台的服务器,后台的服务器收到监听的指令后转发指令到webDriver服务,通过这个服务给投屏设备下发对应的控制指令,可通过调用对应API来直接在投屏设备上执行命令,在投屏显示区域进行操作,可实时对投屏设备的内容进行控制,还可实现启动和终止应用程序的操作,从而可应用于投屏设备的远程使用以及设备测试等技术实施例。
进一步的,可添加输出设置功能,可支持用户在浏览器端设置视频参数,比如标清还是高清,为不同的带宽提供流畅的服务。为了更好的节约带宽,在交互模式下,当一定时间不操作后,可将视频帧率将逐步下降,直到执行任意操作,保证带宽的利用率。当一定时间不操作后,可暂停对应投屏设备。此举可以进一步降低服务端传输压力。
本技术实施例采用有线连接将多个投屏设备分别对待投屏数据编码生成相应的投屏数据,从而对多个投屏设备进行投屏,通过浏览器程序进行接收,解码后投屏显示数据,由浏览器程序根据投屏设备的个数生成对应的投屏显示区域,在投屏显示区域显示对应的投屏显示数据,扩展了投屏的管理能力,保证投屏的流畅性。
实施例二
参阅图2,示出了本发明一种投屏装置10,包括接收设备,所述接收设备与多个投屏设备有线连接,所述接收设备包括获取模块11、传输模块12、解码模块13和显示模块14,所述获取模块11用于获取多个所述投屏设备发送的投屏数据,所述传输模块12用于将接收到的多个所述投屏数据发送至浏览器程序中,所述解码模块13用于控制所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据,所述显示模块14用于控制所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
在本实施例中,可通过数据线获取投屏设备的投屏数据,同有速度快、延迟低等特点,作为一种最高效的获取方式,相比于无线的方式还更加稳定。通过将投屏数据编码为H264格式,降低了网络传输的数据量,相对截图的方式,在同样的带宽下,可以提供更高清的图像和更高的帧率。经过这些优化,在同样的带宽下,最大程度上增加了视频质量,降低了直播延迟,较佳的提升了用户体验。
首先,通过获取模块11获取投屏设备的投屏数据,可通过USB通道传输视频流数据,如采用编码为H264格式的视频流,设置好分辨率、帧率、比特率等参数,并发送至服务器,然后通过传输模块12将投屏数据发送至接收设备的浏览器程序中,可将H264格式的视频流以帧为单元进行拆分,将每一个帧数据发送浏览器,并可以发送第一帧之前发送视频的元数据至浏览器程序,浏览器程序可通过websocket协议获取服务器发送的信息数据,再通过解码模块,13进行解码,可通过解码器来实现,解码器是将数字视音频数据流解码还原成模拟视音频信号来显示图像和声音,其初始化过程就是创建一个解码器,传入描述视频基本信息的参数以完成对应视频的解码,从而得到相应的投屏显示数据,最后在显示模块15中基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
在本实施例中,所述投屏数据包括元数据和目标投屏数据,所述元数据位于所述目标投屏数据之前,其中,元数据包括目标投屏数据的分辨率、帧率和比特率。元数据可以为投屏数据说明其元素或属性(名称、大小、数据类型等),或其结构(长度、字段、数据列),或其相关数据(位于何处、如何联系、拥有者)。
进一步的,投屏装置10还可包括控制模块,来进行远程控制,通过对鼠标控制指令的监听,通过诸如点击和滑动视图等操作确认屏幕上的视图状态,由发送接口告知给后台的服务器,后台的服务器收到监听的指令后转发指令到webDriver服务,通过这个服务给投屏设备下发对应的控制指令,可通过调用对应API来直接在投屏设备上执行命令,在投屏显示区域进行操作,可实时对投屏设备的内容进行控制,还可实现启动和终止应用程序的操作,从而可应用于投屏设备的远程使用以及设备测试等技术实施例。
在具体实现中采用服务器框架设计方面,通过实现一台Mac接入多个终端设备并行运行,降低了服务端成本。可通过多个Mac水平扩展的方式,使得服务端可以灵活的根据使用量进行扩展。
本实施例可应用于智慧教育的场景中,老师可通过上述技术方式将教学内容进行投屏处理,将多个投屏设备内的教学内容进行投屏,并可实现对学员的分类管理,从而推动智慧城市的建设。
实施例三
本实施例还提供一种计算机设备20,实施例二的投屏装置10的组成部分可设置在计算机设备20中,计算机设备20可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22以及存储在存储器21上并可在处理器22上运行的计算机程序,如图3所示。需要指出的是,图3仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于电子设备的操作系统和各类应用代码。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据。本实施例中计算机设备20的处理器22执行计算机程序时实现实施例一的投屏方法。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例计算机可读存储介质存储实施例二的投屏装置10,被处理器执行时实现实施例一的投屏方法。
本实施例的计算机可读存储介质用于投屏装置,该计算机可读存储介质被处理器执行时实现实施例一的投屏方法。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等,如可将上述实施例中的投屏数据存储于区块链节点中。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本发明可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种投屏方法,应用于iOS系统中,其特征在于,多个投屏设备与接收设备有线连接,包括:
多个投屏设备分别对待投屏数据编码生成相应的投屏数据,并分别将相应的所述投屏数据发送至服务器;
所述服务器将接收到的多个所述投屏数据发送至接收设备的浏览器程序中;
所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据;
所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
2.根据权利要求1所述的投屏方法,其特征在于,所述多个投屏设备分别对待投屏数据编码生成相应的投屏数据,并分别将相应的所述投屏数据发送至服务器,包括:
每一所述投屏设备均采用H264格式对所述待投屏数据编码生成相应的所述投屏数据,并将相应的所述投屏数据发送至服务器;
所述投屏数据包括元数据和目标投屏数据;
其中,元数据包括目标投屏数据的分辨率、帧率和比特率。
3.根据权利要求2所述的投屏方法,其特征在于,所述H264格式采用的算法包括帧内压缩和帧间压缩,所述帧内压缩生成全部编码的图像帧,所述帧间压缩去除相邻帧之间的冗余信息生成部分编码的图像帧。
4.根据权利要求1所述的投屏方法,其特征在于,所述服务器将接收到的多个所述投屏数据发送至接收设备的浏览器程序中,包括:
所述服务器分别对接收到的每一所述投屏数据添加预设界面配置信息,再对所有的所述投屏数据按照时间戳生成视频流;
将所述视频流发送至所述接收设备的所述浏览器程序中。
5.根据权利要求4所述的投屏方法,其特征在于,所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据,包括:
所述浏览器采用websocket协议获取所述服务器发送的所述视频流,对所述视频流进行解码,以得到多个与所述待投屏数据对应的携带预设界面配置信息的所述投屏显示数据。
6.根据权利要求5所述的投屏方法,其特征在于,所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,包括:
所述浏览器程序基于所述投屏显示数据,生成相应个数的投屏任务;
基于所述投屏任务创建相应个数的进程,其中,每一个所述投屏任务对应一个所述进程,每一所述进程对应一个所述投屏显示数据;
根据所述进程创建相应的投屏显示区域;
采用所述投屏显示区域显示相应的投屏显示数据。
7.根据权利要求6所述的投屏方法,其特征在于,所述浏览器程序基于所述投屏显示数据,生成相应个数的投屏任务,包括:
所述浏览器程序根据所述投屏显示数据中的所述预设界面配置信息的个数生成相应个投屏任务,每一投屏任务对应一显示控件,所述显示控件与相应的进程对应。
8.一种投屏装置,其特征在于,包括接收设备,所述接收设备与多个投屏设备有线连接,所述接收设备包括:
获取模块,用于获取多个所述投屏设备发送的投屏数据;
传输模块,用于将接收到的多个所述投屏数据发送至浏览器程序中;
解码模块,用于控制所述浏览器程序对多个所述投屏数据进行解码,以得到相应的投屏显示数据;
显示模块,用于控制所述浏览器程序基于所述投屏显示数据,生成与所述投屏设备个数对应的投屏显示区域,采用所述投屏显示区域显示相应的投屏显示数据,其中,每一所述投屏显示区域对应一所述投屏设备。
9.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述存储介质存储的所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010904050.8A CN112035081A (zh) | 2020-09-01 | 2020-09-01 | 投屏方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010904050.8A CN112035081A (zh) | 2020-09-01 | 2020-09-01 | 投屏方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112035081A true CN112035081A (zh) | 2020-12-04 |
Family
ID=73590771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010904050.8A Pending CN112035081A (zh) | 2020-09-01 | 2020-09-01 | 投屏方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035081A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112653913A (zh) * | 2020-12-25 | 2021-04-13 | 深圳市网旭科技有限公司 | 投屏方法、装置、客户端设备及可读存储介质 |
CN112866749A (zh) * | 2021-02-18 | 2021-05-28 | 北京仁光科技有限公司 | 多终端信号上屏显示控制系统和方法 |
CN113079578A (zh) * | 2021-03-29 | 2021-07-06 | 成都飞鱼星科技股份有限公司 | 一种智慧屏无线投屏数据的优先传输方法及系统 |
CN113127122A (zh) * | 2021-04-15 | 2021-07-16 | 深圳乐播科技有限公司 | 基于虚拟应用的投屏方法、装置、设备及存储介质 |
CN114697731A (zh) * | 2020-12-31 | 2022-07-01 | 华为技术有限公司 | 投屏方法、电子设备及存储介质 |
CN116828242A (zh) * | 2023-08-30 | 2023-09-29 | 亿咖通(湖北)技术有限公司 | 长链路投屏方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191350A (zh) * | 2019-05-28 | 2019-08-30 | 上海哔哩哔哩科技有限公司 | 多端投屏方法、计算机设备及存储介质 |
CN110221798A (zh) * | 2019-05-29 | 2019-09-10 | 华为技术有限公司 | 一种投屏方法、系统及相关装置 |
CN110389736A (zh) * | 2019-06-05 | 2019-10-29 | 华为技术有限公司 | 一种投屏显示方法及电子设备 |
-
2020
- 2020-09-01 CN CN202010904050.8A patent/CN112035081A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191350A (zh) * | 2019-05-28 | 2019-08-30 | 上海哔哩哔哩科技有限公司 | 多端投屏方法、计算机设备及存储介质 |
CN110221798A (zh) * | 2019-05-29 | 2019-09-10 | 华为技术有限公司 | 一种投屏方法、系统及相关装置 |
CN110389736A (zh) * | 2019-06-05 | 2019-10-29 | 华为技术有限公司 | 一种投屏显示方法及电子设备 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112653913A (zh) * | 2020-12-25 | 2021-04-13 | 深圳市网旭科技有限公司 | 投屏方法、装置、客户端设备及可读存储介质 |
CN114697731A (zh) * | 2020-12-31 | 2022-07-01 | 华为技术有限公司 | 投屏方法、电子设备及存储介质 |
CN112866749A (zh) * | 2021-02-18 | 2021-05-28 | 北京仁光科技有限公司 | 多终端信号上屏显示控制系统和方法 |
CN112866749B (zh) * | 2021-02-18 | 2022-02-18 | 北京仁光科技有限公司 | 多终端信号上屏显示控制系统和方法 |
CN113079578A (zh) * | 2021-03-29 | 2021-07-06 | 成都飞鱼星科技股份有限公司 | 一种智慧屏无线投屏数据的优先传输方法及系统 |
CN113127122A (zh) * | 2021-04-15 | 2021-07-16 | 深圳乐播科技有限公司 | 基于虚拟应用的投屏方法、装置、设备及存储介质 |
CN116828242A (zh) * | 2023-08-30 | 2023-09-29 | 亿咖通(湖北)技术有限公司 | 长链路投屏方法、系统及存储介质 |
CN116828242B (zh) * | 2023-08-30 | 2023-12-05 | 亿咖通(湖北)技术有限公司 | 长链路投屏方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112035081A (zh) | 投屏方法、装置、计算机设备及存储介质 | |
US9866656B2 (en) | System and method for single KVM client accommodating multiple different video compression technologies | |
US9693080B2 (en) | Distribution control system, distribution control method, and computer-readable storage medium | |
US9860285B2 (en) | System, apparatus, and method for sharing a screen having multiple visual components | |
CN105577819A (zh) | 一种虚拟化桌面的分享系统、分享方法以及分享装置 | |
CN113489805B (zh) | 一种云桌面系统的对接方法、装置、设备及存储介质 | |
EP3806462A1 (en) | Image encoding and decoding method , related device and storage medium | |
CN111954028B (zh) | 音频数据的投屏方法、装置、设备及存储介质 | |
CN115866356A (zh) | 一种视频的水印添加方法、装置、设备及存储介质 | |
CN102664939A (zh) | 一种屏幕镜像移动终端的方法及设备 | |
CN108989845A (zh) | 一种基于spice协议的视频传输方法 | |
WO2021057697A1 (zh) | 视频编解码方法和装置、存储介质及电子装置 | |
CN111327921A (zh) | 视频数据处理方法及设备 | |
CN110730364B (zh) | 一种云手机数据传输方法、装置及存储介质 | |
CN113973224A (zh) | 媒体信息的传输方法、计算设备及存储介质 | |
CN103929682A (zh) | 一种在视频直播系统中设置关键帧的方法及装置 | |
CN112188285A (zh) | 视频转码方法、装置、系统及存储介质 | |
EP3474530A1 (en) | Image compressing method, image reconstructing method, image compressing device, image reconstructing device, image compressing program product, and image reconstructing program product | |
CN116546210A (zh) | 直播数据处理方法、装置、计算机设备和存储介质 | |
CN113766266A (zh) | 音视频处理方法、装置、设备以及存储介质 | |
CN108989767B (zh) | 一种网络自适应的多路h264视频流存储转播方法及系统 | |
US20140055471A1 (en) | Method for providing scalable remote screen image and apparatus thereof | |
CN114640849B (zh) | 直播视频编码方法、装置、计算机设备及可读存储介质 | |
CN116781973B (zh) | 视频编解码方法、装置、存储介质和电子设备 | |
KR101251879B1 (ko) | 멀티미디어 클라우드 시스템에서 화면변화에 따른 광고영상 출력 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201204 |
|
RJ01 | Rejection of invention patent application after publication |