CN109150945A - 一种实时分享画面的方法及系统 - Google Patents
一种实时分享画面的方法及系统 Download PDFInfo
- Publication number
- CN109150945A CN109150945A CN201710510917.XA CN201710510917A CN109150945A CN 109150945 A CN109150945 A CN 109150945A CN 201710510917 A CN201710510917 A CN 201710510917A CN 109150945 A CN109150945 A CN 109150945A
- Authority
- CN
- China
- Prior art keywords
- data
- center
- picture
- terminal
- user terminal
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5683—Storage of data provided by user terminals, i.e. reverse caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种实时分享画面的方法及系统,该方法包括:分享终端向信令服务器发送申请数据转发中心的申请信息,所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心;所述分享终端通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端。该发明的有益效果为:通过差异化计算和数据发送之前压缩,降低用户的带宽使用;画面采集,差异化计算和压缩,流程通畅,调度合理,CPU占用率平滑;多个数据转发中心,负载均衡,容错容灾,最大化的利用服务器的带宽和CPU处理能力。
Description
技术领域
本发明涉及图像处理及传输技术领域,尤其涉及一种实时分享画面的方法及系统。
背景技术
利用计算机和网络直接进行文档内容分享或者屏幕分享越来越深入到我们的生活和工作中,此类产品,种类繁多。目前的产品,或多或少存在以下问题:CPU占用率高,内存波动过大,容易产生碎片,出现网络延迟,画面不够清晰,无法自动扩容。因此对图像差异化算法以及一个架构合理的实时分享方法要求更高。
现有的画面实时共享方法有以下几种方案:
A、分享者定时采集全量画面,发送到数据中心,其他参与者定时从数据中心拉取数据,见图1。
B、服务器为单机服务器,业务处理和数据传输不分离。
C、对采集画面进行jpeg等有损压缩。
D、分享者1个前台线程,1个后台线程。后台线程负责画面采集、数据处理,数据发送等。
现有技术方案的主要缺点
现有方案A,采集的是全量数据。随着终端用户的增大,服务器的网络压力变大,容易出现图像延迟。即使全量数据量不大,也会由于主持人上传不及时,或者终端用户拉取不及时,造成画面丢失。
现有方案B,服务功能复杂。随着业务量的增多,无法通过自动扩容,增多部署的方式,分流业务压力。并且如果出现重启,掉电的情况,没有备用服务,整个系统瘫痪无法工作。
现有方案C,图片有损压力,画面不清晰。
现有方案D,每次采集图像,CPU占有率高,内存波动幅度很大,并且出现失帧情况。
发明内容
本发明要解决的技术问题在于,针对上述现有技术中传输量大而导致网络压力大、功能复杂导致扩容难,没有备用服务器、图片压缩格式差及采集图像易失真的问题,提供一种实时分享画面的方法及系统。
本发明解决其技术问题所采用的技术方案是:
一方面,构造一种实时分享画面的方法,包括:
分享终端向信令服务器发送申请数据转发中心的申请信息,所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心;
所述分享终端通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端。
在本发明所述的方法中,所述分享终端向信令服务器发送申请数据转发中心的申请信息,所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心,包括:
分享终端向信令服务器发送申请数据转发中心的申请信息,并建立分享空间与所述数据转发中心的对应关系;
所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心,并将所述数据转发中心的地址信息及所述对应关系返回至所述分享终端;
通过所述分享空间创建分享终端与一至多个所述用户终端的关系合集。
在本发明所述的方法中,所述通过所述分享空间创建分享终端与一至多个所述用户终端的关系合集,包括:
若有新增的用户终端向所述分享空间发出注册广播,则通过所述信令服务器通知所述数据转发中心,于所述关系合集中添加新增的用户终端的对应信息,从而使所述分享终端将所述画面数据发送至所述新增的用户终端;
若有所述用户终端退出所述分享空间,则通过所述信令服务器通知所述数据转发中心,于所述关系合集中删除退出的用户终端的对应信息,从而断开所述退出的用户终端的广播通道。
在本发明所述的方法中,所述分享终端通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端,包括:
通过所述分享终端采集画面数据并差异化计算;
通过所述分享终端对所述画面数据进行压缩;
通过所述分享终端对压缩后的画面数据发送至所述数据转发中心;
通过所述数据转发中心将所述画面数据转发至一至多个用户终端,一至多个所述用户终端分别对压缩后的画面数据进行解压。
在本发明所述的方法中,所述通过所述分享终端采集画面数据并差异化计算,包括:
依据所述分享终端的显示适配器申请两个第一缓存区;
实时采集图像信息,对所述图像信息进行分割以获取当前图像的分块数据,并取出前一图像的分块数据;
判断所述前一图像的分块数据是否缓存于两个所述第一缓存区的其中之一,若是,则将所述当前图像的分块数据缓存于两个所述第一缓存区的另一个;
对图像分块后的当前图像及前一图像进行比较以获取画面图像有变化的小切块增量数据;
将所述小切块增量数据缓存于第二缓存区;
将所述的前一图像的分块数据清空,保留所述当前图像的分块数据,以当做下次实时采集图像的前一图像的分块数据。
在本发明所述的方法中,所述通过所述分享终端对所述画面数据进行压缩,包括:
对缓存于所述第二缓存区的所述小切块增量数据进行压缩;
将压缩后的小切块增量数据存储至第三缓存区。
在本发明所述的方法中,所述通过所述分享终端对压缩后的画面数据发送至所述数据转发中心,包括:
从所述第三缓存区中取出压缩后的小切块增量数据;
将压缩后的小切块增量数据发送至所述数据转发中心。
在本发明所述的方法中,所述通过所述数据转发中心将所述画面数据转发至一至多个用户终端,一至多个所述用户终端分别对压缩后的画面数据进行解压,包括:
通过所述数据转发中心将压缩后的小切块增量数据转发至一至多个用户终端;
一至多个所述用户终端分别对压缩后的小切块增量数据进行解压;
按照预设的分块视图将解压后的小切块增量数据绘制到所述分块视图的对应位置。
另一方面,提供一种实时分享画面的系统,包括如上所述的方法的分享终端、信令服务器、一至多个数据中心服务器及一至多个用户终端。
上述公开的一种实时分享画面的方法及系统具有以下有益效果:差异化计算和数据发送之前压缩,接收之后解压缩,这两步骤极大程度上降低了用户的带宽使用;画面采集,差异化计算和压缩,数据发送分别为3个独立线程,流程通畅,调度合理,CPU占用率平滑;使用内存池技术,减少了内存碎片的产生;使用无损压缩,画面清晰;使用消息队列,减少开锁解锁的内核切换耗时;多个数据转发中心,负载均衡,容错容灾,最大化的利用服务器的的带宽和CPU处理能力。
附图说明
图1为现有技术的画面共享方案的架构示意图;
图2为本发明一实施例提供的一种实时分享画面的方法的流程图;
图3为本发明一实施例提供的一种实时分享画面的系统的架构示意图;
图4为本发明一实施例提供的分享终端工作线程的示意图;
图5为本发明一实施例提供的24位bmp图像内存数据组成示意图;
图6为本发明一实施例提供的图像切割示意图;
图7为本发明一实施例提供的全量内存示意图;
图8为本发明一实施例提供的B1内存示意图;
图9为本发明一实施例提供的B1分行分段内存示意图;
图10为本发明一实施例提供的B1按分段序号为组,重新组成小块内存和大块内存的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供了一种实时分享画面的方法及系统,其目的在于,通过业务服务(例如信令服务器2)和数据中心(例如数据中心服务器3)分离及数据中心可负载均衡部署的的画面共享方法的设计方案,支撑多用户,高并发,大流量的应用场景。根据具体的业务需要,进行弹性部署数据中心;业务服务根据各个数据中心的负载情况,为新的分享实例分配合理的数据中心;并且图像数据通过推送方式,减少了分享者和被分享者之前的时间差;在比较合理的整体架构基础上,本技术方案提供了以图像差异化为核心,配合无损压缩、消息队列、线程池等技术,将分享者的内容快速的广播到每个参与者终端(例如用户终端4及分享终端1)。
参见图2,图2为本发明一实施例提供的一种实时分享画面的方法的流程图,参见图3,图3为本发明一实施例提供的一种实时分享画面的系统100的架构示意图,该方法通过实时分享画面的系统100实现,该系统包括分享终端 1、信令服务器2、一至多个数据中心服务器3及一至多个用户终端4。具体的,该实时分享画面的方法包括步骤S1-S2:
S1、分享终端1向信令服务器2发送申请数据转发中心的申请信息,所述信令服务器2依据所述申请信息从一至多个数据中心服务器3中按照预设的机制选择负载最小的数据中心服务器3作为所述数据转发中心;即本发明设计采用信令服务器2和数据中心服务器3分离,差异化图像数据广播的设计方案,整体架构见图3。本方案可以根据业务需求,部署多个数据中心服务器3。主持人(持有分享终端1或其他具有操作权限的终端)向信令服务服务器申请分享空间,信令服务器2计算当前可用数据中心服务器3和选择最小负载的数据中心服务器3作为该分享空间的数据转发中心。步骤S1包括以下子步骤 S11-S13:
S11、分享终端1向信令服务器2发送申请数据转发中心的申请信息,并建立分享空间与所述数据转发中心的对应关系。
S12、所述信令服务器2依据所述申请信息从一至多个数据中心服务器3 中按照预设的机制选择负载最小的数据中心服务器3作为所述数据转发中心,并将所述数据转发中心的地址信息及所述对应关系返回至所述分享终端1;按照工作职能,服务器分为信令服务器2和数据中心服务器3,其部署比例是1: N,也就是数据中心服务器3可以部署多台。多数据中心服务器3的设计既可以进行负载均衡,无缝提高系统的业务处理能力,还可以作为容灾容错手段,防止一旦出现故障,系统瘫痪。
步骤S11-S12主要为信令服务器2执行,信令服务器2工作步骤为:
1、如果有用户通过用户终端4申请房间(分享空间),根据用户申请时的用户数据,以及计算每个数据中心服务器3的负载情况,计算出最优的可用数据中心服务器3,返回给申请者所持有的用户终端4,并通知给分享空间的参与者,并且将房间用户信息发送给数据中心服务器3。
2、如果有新用户通过用户终端4申请进房间或者被邀请进房间,通知数据中心服务器3有新的广播对象,并通知分享者通过分享终端1将画面图像全量发送至数据中心服务器3。
3、如果有用户退出或踢出房间,通知数据中心服务器3的分享空间中删除该广播对象。
S13、通过所述分享空间创建分享终端1与一至多个所述用户终端4的关系合集。步骤S13包括子步骤S131-S132:
S131、若有新增的用户终端4向所述分享空间发出注册广播,则通过所述信令服务器2通知所述数据转发中心,于所述关系合集中添加新增的用户终端4的对应信息,从而使所述分享终端1将所述画面数据发送至所述新增的用户终端4;
S132、若有所述用户终端4退出所述分享空间,则通过所述信令服务器2 通知所述数据转发中心,于所述关系合集中删除退出的用户终端4的对应信息,从而断开所述退出的用户终端4的广播通道。
步骤S13为作为分享空间的数据中心服务器3执行,其工作步骤为:
1、有新房间实例通知,创建房间(即分享空间)的用户和广播对象对应关系合集。
2、有用户通过用户终端4注册广播,标记用户标识和广播的对应信息。
3、接收分享终端1的数据,将数据广播到其他参与者的用户终端4。
4、有用户离开房间,根据用户标识,于分享空间中查找广播对象,断开其注册的广播通道。
如此,数据中心服务器3之间业务隔离,和信令服务器2的耦合度低,扩容简单。
S2、所述分享终端1通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端4。即分享者定时发送压缩后差异化增量数据到目标数据中心,数据中心将数据广播到该房间的其他终端用户。参见图4,步骤S2需申请三个工作线程:图像采集线程、数据加工消息线程及数据传输消息线程。其中,图像采集线程使用定时(1秒)采集的方式,数据采集完成,发送消息给数据加工消线程,数据加工完成,发送消息给数据传输线程。步骤S2包括以下子步骤S21-S25:
S21、通过所述分享终端1采集画面数据并差异化计算;步骤S21包括子步骤S211-S216:
S211、依据所述分享终端1的显示适配器申请两个第一缓存区;例如,图像采集线程根据当前计算机的显示适配器支持的最大分辨率,合理预申请两块缓存A和B,作用是交替缓存前一图像和当前图像。
S212、实时采集图像信息,对所述图像信息进行分割以获取当前图像的分块数据,并取出前一图像的分块数据;步骤S212中的分割动作包括子步骤 S2121-S2123:
S2121、以100行像素为单位大小,将采集到的当前图像分为n个大块;本发明图像优选地采用bmp,参见图5,一个24位bmp图像的内存数据包含文件头、位图信息头、数据区。
S2122、以100个像素点为单位大小,将100行大小的所述大块数据中的每一行分为m个小段,并将小段1进行编号(编码范围1~m);将所述大块数据中的100行中每行编号一致的小段组成内存连续的小块;参见图6,本设计是将一个全量图像数据切割成多个100*100像素的小块数据。其中,由于bmp 特性:数据是从下到上,24位bmp的1个像素使用3个字节表示,32位系统中为了使内存对齐,图像的数据区每一行的字节数必须是4的倍数。并且分块之间内存是不连续的。所以按照以下的方式切割画面,效率高,无内存碎片,并且相邻像素矩阵不受影响,压缩率高。
S2123、对每个所述大块数据中的所有小块数据重新组成内存连续的全量图。例如:全量图像切割规则为:
1、先将全量图看成连续的大块,按顺序编号。每块由100行像素组成,最后一块不足100的话,按照实际行数计算。参见图7,图7为本发明一实施例提供的全量内存示意图。
2、将每个大块看成连续的100行(最后的大块例外)。
3、将每行看成连续的小段,按顺序编号。每段由100个像素组成,最后一段不足100的话,按照实际像素计算。
4、将每个大块中每行编码一致的小段,组成内存连续的小块,即拼成了小块画面,并且在每个小块数据前保存其宽,高,当前小块字节数。每个大块由多个内存连续的小块组成,并且保存对应的宽,高,对应的字节数。参见图 8-图9,图8为本发明一实施例提供的B1内存示意图,图9为本发明一实施例提供的B1分行分段内存示意图。
5、多个重新组成的大块,重新组成内存连续的全新全量图,并保存全量对应的宽,高,全量字节数。参见图10,图10为本发明一实施例提供的B1按分段序号为组,重新组成小块内存和大块内存的示意图。
S213、判断所述前一图像的分块数据是否缓存于两个所述第一缓存区的其中之一,若是,则将所述当前图像的分块数据缓存于两个所述第一缓存区的另一个;例如,采集图像,判断前一图像分块数据的缓存区是A还是B,如果是B,将采集图像分块数据缓存在A;反之缓存在B。
S214、对图像分块后的当前图像及前一图像进行比较以获取画面图像有变化的小切块增量数据;假设目前缓存在A,那么将图像分块(原理请参考差异化算法中的全量图像切割规则),与缓存B比较,将画面图像有变化的小切块增量数据。
具体的,差异化比较步骤为:
1、采集画面。
2、假设前一画面保存在内存区1。
3、开始切图图片。每次组成的小块内存,保存到内存区2,并且和前一画面的中对应的相应序号的小块内存进行memcmp,如果不相等,将当前小块内存缓存到内存池。切图和比较在一个过程里面,减少了一层循环,提高共享效率。
S215、将所述小切块增量数据缓存于第二缓存区。如图将它保存在缓存C。步骤S21执行完之后,线程休眠,直到线程下一次采集周期的到来。
步骤S21申请缓存A及B交替使用,减少了每次采集重新申请内存步骤,降低耗时,防止内存碎片生成。内存池C的使用,进一步优化耗时和内存碎片问题。
S216、将所述的前一图像的分块数据清空,保留所述当前图像的分块数据以当做下次实时采集图像的前一图像的分块数据。
S22将所述的前一图像的分块数据清空,而当前图像分块数据保留,以当做下次实时采集图像的前一图像的分块数据。
S23、通过所述分享终端1对所述画面数据进行压缩;步骤S23包括子步骤S231-S232:
S231、对缓存于所述第二缓存区的所述小切块增量数据进行压缩;该步骤S23为数据加工线程工作步骤,该步骤首先从消息队列中取消息。例如:如果有新消息,判断内存池C是否为空,不为空,内存池取出数据,将数据进行无损压缩。
S232、将压缩后的小切块增量数据存储至第三缓存区。例如,压缩完成后,存入内存池D。然后,线程无限期的休眠,直到有新通知消息到达,唤醒流程,再重复执行步骤S231。
采集线程将图像画图的有变化区域截取出来,本线程再进行无损压缩,降低了网络传输的数据量,降低带宽负载。
S24、通过所述分享终端1对压缩后的画面数据发送至所述数据转发中心;步骤S24包括子步骤S241-S242:
S241、从所述第三缓存区中取出压缩后的小切块增量数据;例如:数据传输线程工作步骤为:从消息队列中取消息;如果有新消息,判断内存池D 是否为空,不为空,内存池取出数据。
S242、将压缩后的小切块增量数据发送至所述数据转发中心。将数据发送到数据中心,线程无限期的休眠,直到有新通知消息到达,唤醒流程,再重复执行步骤S241。
S25、通过所述数据转发中心将所述画面数据转发至一至多个用户终端4,一至多个所述用户终端4分别对压缩后的画面数据进行解压。步骤S25包括子步骤S251-S253:
S251、通过所述数据转发中心将压缩后的小切块增量数据转发至一至多个用户终端4;
S252、一至多个所述用户终端4分别对压缩后的小切块增量数据进行解压;
S253按照预设的分块视图将解压后的小切块增量数据绘制到所述分块视图的对应位置。
即接收端(即用户终端4)很简单,有通知处理通知,有图像数据处理图像数据。接收端工作步骤为:
1、如果被通知开会,根据通知里面的数据中心服务器3的信息,主动向数据中心注册广播通道。
2、如果收到数据中心服务器3的数据,将数据进行解压,按照分块视图,一块一块的往已展示的面板的对应位置绘制。
3、如果被通知解散房间或者主动退出房间,断开广播通道。
本文提供了实施例的各种操作。在一个实施例中,所述的一个或操作可以构成一个或计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X 使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的方法。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。
Claims (9)
1.一种实时分享画面的方法,其特征在于,包括:
分享终端向信令服务器发送申请数据转发中心的申请信息,所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心;
所述分享终端通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端。
2.根据权利要求1所述的方法,其特征在于,所述分享终端向信令服务器发送申请数据转发中心的申请信息,所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心,包括:
分享终端向信令服务器发送申请数据转发中心的申请信息,并建立分享空间与所述数据转发中心的对应关系;
所述信令服务器依据所述申请信息从一至多个数据中心服务器中按照预设的机制选择负载最小的数据中心服务器作为所述数据转发中心,并将所述数据转发中心的地址信息及所述对应关系返回至所述分享终端;
通过所述分享空间创建分享终端与一至多个所述用户终端的关系合集。
3.根据权利要求2所述的方法,其特征在于,所述通过所述分享空间创建分享终端与一至多个所述用户终端的关系合集,包括:
若有新增的用户终端向所述分享空间发出注册广播,则通过所述信令服务器通知所述数据转发中心,于所述关系合集中添加新增的用户终端的对应信息,从而使所述分享终端将所述画面数据发送至所述新增的用户终端;
若有所述用户终端退出所述分享空间,则通过所述信令服务器通知所述数据转发中心,于所述关系合集中删除退出的用户终端的对应信息,从而断开所述退出的用户终端的广播通道。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述分享终端通过差异化计算及压缩画面数据并实时向所述数据转发中心发送所述画面数据,通过所述数据转发中心将所述画面数据转发至一至多个用户终端,包括:
通过所述分享终端采集画面数据并差异化计算;
通过所述分享终端对所述画面数据进行压缩;
通过所述分享终端对压缩后的画面数据发送至所述数据转发中心;
通过所述数据转发中心将所述画面数据转发至一至多个用户终端,一至多个所述用户终端分别对压缩后的画面数据进行解压。
5.根据权利要求4所述的方法,其特征在于,所述通过所述分享终端采集画面数据并差异化计算,包括:
依据所述分享终端的显示适配器申请两个第一缓存区;
实时采集图像信息,对所述图像信息进行分割以获取当前图像的分块数据,并取出前一图像的分块数据;
判断所述前一图像的分块数据是否缓存于两个所述第一缓存区的其中之一,若是,则将所述当前图像的分块数据缓存于两个所述第一缓存区的另一个;
对图像分块后的当前图像及前一图像进行比较以获取画面图像有变化的小切块增量数据;
将所述小切块增量数据缓存于第二缓存区;
将所述的前一图像的分块数据清空,保留所述当前图像的分块数据以当做下次实时采集图像的前一图像的分块数据。
6.根据权利要求5所述的方法,其特征在于,所述通过所述分享终端对所述画面数据进行压缩,包括:
对缓存于所述第二缓存区的所述小切块增量数据进行压缩;
将压缩后的小切块增量数据存储至第三缓存区。
7.根据权利要求6所述的方法,其特征在于,所述通过所述分享终端对压缩后的画面数据发送至所述数据转发中心,包括:
从所述第三缓存区中取出压缩后的小切块增量数据;
将压缩后的小切块增量数据发送至所述数据转发中心。
8.根据权利要求7所述的方法,其特征在于,所述通过所述数据转发中心将所述画面数据转发至一至多个用户终端,一至多个所述用户终端分别对压缩后的画面数据进行解压,包括:
通过所述数据转发中心将压缩后的小切块增量数据转发至一至多个用户终端;
一至多个所述用户终端分别对压缩后的小切块增量数据进行解压;
按照预设的分块视图将解压后的小切块增量数据绘制到所述分块视图的对应位置。
9.一种实时分享画面的系统,其特征在于,包括如权利要求1-8任一项所述的方法的分享终端、信令服务器、一至多个数据中心服务器及一至多个用户终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710510917.XA CN109150945B (zh) | 2017-06-28 | 2017-06-28 | 一种实时分享画面的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710510917.XA CN109150945B (zh) | 2017-06-28 | 2017-06-28 | 一种实时分享画面的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109150945A true CN109150945A (zh) | 2019-01-04 |
CN109150945B CN109150945B (zh) | 2021-07-02 |
Family
ID=64803339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710510917.XA Active CN109150945B (zh) | 2017-06-28 | 2017-06-28 | 一种实时分享画面的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109150945B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130163812A1 (en) * | 2011-12-22 | 2013-06-27 | Ricoh Company, Ltd. | Information processor, information processing method, and recording medium |
CN104581219A (zh) * | 2014-12-22 | 2015-04-29 | 浙江工业大学 | 一种流媒体转发服务器的控制方法 |
CN105677279A (zh) * | 2016-01-08 | 2016-06-15 | 全时云商务服务股份有限公司 | 桌面区域共享方法、系统及相应的共享端和观看端 |
CN105959354A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体服务的负载调度方法及系统 |
CN106331756A (zh) * | 2016-09-05 | 2017-01-11 | 北京智能管家科技有限公司 | 视频转发的路由选择装置及方法 |
-
2017
- 2017-06-28 CN CN201710510917.XA patent/CN109150945B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130163812A1 (en) * | 2011-12-22 | 2013-06-27 | Ricoh Company, Ltd. | Information processor, information processing method, and recording medium |
CN104581219A (zh) * | 2014-12-22 | 2015-04-29 | 浙江工业大学 | 一种流媒体转发服务器的控制方法 |
CN105677279A (zh) * | 2016-01-08 | 2016-06-15 | 全时云商务服务股份有限公司 | 桌面区域共享方法、系统及相应的共享端和观看端 |
CN105959354A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体服务的负载调度方法及系统 |
CN106331756A (zh) * | 2016-09-05 | 2017-01-11 | 北京智能管家科技有限公司 | 视频转发的路由选择装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109150945B (zh) | 2021-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Feng et al. | Panoptes: scalable low-power video sensor networking technologies | |
US8943223B2 (en) | Adaptive session compression management method, compression manager and session management system | |
US9262986B2 (en) | Reference frame management for screen content video coding using hash or checksum functions | |
CN107360443B (zh) | 一种云桌面图像处理方法、云桌面服务器及客户端 | |
CN103686206B (zh) | 一种云环境下的视频转码方法和系统 | |
US9900167B2 (en) | Document sharing method, system, and device | |
CN110545327B (zh) | 一种信息推送方法及系统 | |
CN112035081A (zh) | 投屏方法、装置、计算机设备及存储介质 | |
CN113014608B (zh) | 一种流量分发控制方法、装置、电子设备及存储介质 | |
CN112055177A (zh) | 基于视频分层的协商传输方法、电子设备以及计存储介质 | |
CN109150945A (zh) | 一种实时分享画面的方法及系统 | |
CN114760490B (zh) | 视频流处理方法及装置 | |
CN105610979B (zh) | 一种基于虚拟化技术的网络资源传输系统及其方法 | |
CN109309695A (zh) | 图片处理方法、相应装置及存储介质 | |
CN103209255A (zh) | 移动终端网络游戏系统 | |
CN106126372B (zh) | 一种针对Oracle Exadata一体机的异构容灾装置及方法 | |
CN113259680B (zh) | 视频流解码方法、装置、计算机设备和存储介质 | |
CN117560369A (zh) | 资源渲染方法、装置和计算机可读存储介质 | |
JP6261020B2 (ja) | 画面画像転送方法及び画面画像復元方法 | |
CN113840229A (zh) | 位置信息上报方法、装置、可读存储介质和计算机设备 | |
WO2005109749A1 (en) | Methods and systems of monitoring images using mobile communication terminals | |
CN111432159B (zh) | 计算任务处理方法、装置、系统与计算机可读存储介质 | |
CN103095562A (zh) | 云计算智能网关 | |
KR101464263B1 (ko) | 무선 멀티미디어 센서 네트워크를 위한 에너지 효율적인 선택적 압축 장치 및 기법 | |
CN118413541A (zh) | 基于p2p技术的人工智能算力共享方法、系统和存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |