一种屏幕共享方法、系统、电子设备及存储介质与流程

文档序号:30300567发布日期:2022-06-04 23:12阅读:149来源:国知局
一种屏幕共享方法、系统、电子设备及存储介质与流程

1.本技术涉及通信技术领域,特别是涉及一种屏幕共享方法、系统、电子设备及存储介质。


背景技术:

2.如今,随着通信技术的不断发展,用户在进行在线通信的过程中,可以根据自身需求,将其所使用的用户设备的屏幕中显示的内容共享给参与在线通信的其他用户,实现屏幕共享,例如,用户在进行视频会议时,可以向参与视频会议的其他用户进行屏幕共享,以便于更好的进行通信。
3.现有方案中,在线通信过程中若用户需要进行屏幕共享,则用户设备需要额外再建立两条通信链路,一条通信链路用于传输屏幕共享任务的信令,另一条通信链路用于传输屏幕共享任务的数据,导致屏幕共享过程需要占用较多的链路资源。


技术实现要素:

4.本技术实施例的目的在于提供一种屏幕共享方法、系统、电子设备及存储介质,以节约链路资源。具体技术方案如下:
5.第一方面,本技术实施例提供了一种屏幕共享方法,应用于电子设备,所述电子设备创建有在线通信进程以及屏幕共享进程,所述方法包括:
6.所述在线通信进程通过信令共享链路向服务器发送屏幕共享请求;
7.所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令;
8.所述屏幕共享进程采集屏幕数据;
9.所述在线通信进程获得所述屏幕数据,通过数据共享链路向所述服务器发送所述屏幕数据。
10.本技术的一个实施例中,所述方法还包括:
11.所述在线通信进程获得通信数据,并对所述通信数据进行通信数据标记;
12.所述所述在线通信进程获得所述屏幕数据,通过数据共享链路向所述服务器发送所述屏幕数据,包括:
13.所述在线通信进程获得所述屏幕数据,并对所述屏幕数据进行屏幕数据标记;
14.所述在线通信进程通过数据共享链路向所述服务器发送标记后的通信数据、屏幕数据。
15.本技术的一个实施例中,所述在线通信进程获得通信数据,包括:
16.所述在线通信进程获得用户信息,基于所述用户信息生成在线通信请求,并通过所述信令共享链路向所述服务器发送所述在线通信请求,以使得所述服务器根据所述用户信息对所述在线通信请求进行认证;
17.所述在线通信进程在接收到所述服务器发送的在线通信许可后,获得通信数据;
18.所述在线通信进程通过信令共享链路向服务器发送屏幕共享请求,包括:
19.所述在线通信进程基于已获得的用户信息生成屏幕共享请求,通过所述信令共享链路向所述服务器发送所述屏幕共享请求。
20.本技术的一个实施例中,所述所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令,包括:
21.所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,通过信令通道向屏幕共享进程发送屏幕采集指令。
22.本技术的一个实施例中,所述所述在线通信进程获得所述屏幕数据,包括:
23.所述屏幕共享进程通过数据通道向所述在线通信进程发送所采集的屏幕数据;
24.所述在线通信进程通过所述数据通道接收所述屏幕数据。
25.第二方面,本技术实施例还提供了一种屏幕共享系统,所述系统包括电子设备、服务器,所述电子设备创建有在线通信进程以及屏幕共享进程,其中:
26.所述电子设备,用于利用所述在线通信进程,通过信令共享链路向所述服务器发送屏幕共享请求;
27.所述服务器,用于接收所述屏幕共享请求,并基于所述屏幕共享请求,在确定允许所述电子设备发起屏幕共享的情况下,通过所述信令共享链路向所述电子设备发送屏幕共享许可;
28.所述电子设备,还用于利用所述在线通信进程接收所述屏幕共享许可,并利用所述在线通信进程向所述屏幕共享进程发送屏幕采集指令,利用所述屏幕共享进程采集屏幕数据,利用所述在线通信进程获得所述屏幕数据,并利用所述在线通信进程通过数据共享链路向所述服务器发送所述屏幕数据;
29.所述服务器,还用于接收所述屏幕数据。
30.本技术的一个实施例中,所述电子设备,具体用于:
31.利用所述在线通信进程获得通信数据,并对所述通信数据进行通信数据标记,并在所述在线通信进程获得屏幕数据后,利用所述在线通信进程对所述屏幕数据进行屏幕数据标记,通过所述数据共享链路向所述服务器发送标记后的通信数据、屏幕数据;
32.所述服务器,具体用于接收标记后的通信数据、屏幕数据。
33.本技术的一个实施例中,所述电子设备,具体用于利用所述在线通信进程,获得用户信息,基于所述用户信息生成在线通信请求,并通过所述信令共享链路向所述服务器发送所述在线通信请求;
34.所述服务器,还用于获得所述在线通信请求,根据所述用户信息对所述在线通信请求进行认证,并在认证通过的情况下向所述电子设备发送在线通信许可;
35.所述电子设备,还用于在利用所述在线通信进程接收到所述在线通信许可后,利用所述在线通信进程,获得通信数据,并对所述屏幕数据进行屏幕数据标记;
36.所述电子设备,还用于利用所述在线通信进程,基于已获得的用户信息生成屏幕共享请求,并通过所述信令共享链路向所述服务器发送所述屏幕共享请求。
37.本技术的一个实施例中,所述电子设备,具体用于:
38.在所述在线通信进程接收到所述服务器发送的屏幕共享许可后,利用所述在线通信进程通过信令通道向屏幕共享进程发送屏幕采集指令。
39.本技术的一个实施例中,所述电子设备,具体用于:
40.利用所述屏幕共享进程通过数据通道向所述在线通信进程发送所采集的屏幕数据,利用所述在线通信进程,通过所述数据通道接收所述屏幕数据,并通过数据共享链路向所述服务器发送所述屏幕数据。
41.第三方面,本技术实施例还提供了一种屏幕共享装置,设置于电子设备,所述电子设备创建有在线通信进程以及屏幕共享进程,所述装置包括:
42.请求发送模块,用于在线通信进程通过信令共享链路向服务器发送屏幕共享请求;
43.指令发送模块,用于所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令;
44.数据采集模块,用于所述屏幕共享进程采集屏幕数据;
45.数据发送模块,用于所述在线通信进程获得所述屏幕数据,通过数据共享链路向所述服务器发送所述屏幕数据。
46.本技术的一个实施例中,所述装置还包括:
47.通信标记模块,用于所述在线通信进程获得通信数据,并对所述通信数据进行通信数据标记;
48.所述数据发送模块,具体用于:
49.所述在线通信进程获得所述屏幕数据,并对所述屏幕数据进行屏幕数据标记;
50.所述在线通信进程通过数据共享链路向所述服务器发送标记后的通信数据、屏幕数据。
51.本技术的一个实施例中,所述通信标记模块,具体用于:
52.所述在线通信进程获得用户信息,基于所述用户信息生成在线通信请求,并通过所述信令共享链路向所述服务器发送所述在线通信请求,以使得所述服务器根据所述用户信息对所述在线通信请求进行认证;
53.所述在线通信进程在接收到所述服务器发送的在线通信许可后,获得通信数据;
54.所述所述在线通信进程对所述屏幕数据进行屏幕数据标记;
55.所述请求发送模块,具体用于:
56.所述在线通信进程基于已获得的用户信息生成屏幕共享请求,通过所述信令共享链路向所述服务器发送所述屏幕共享请求。
57.本技术的一个实施例中,所述指令发送模块,具体用于:
58.所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,通过信令通道向屏幕共享进程发送屏幕采集指令。
59.本技术的一个实施例中,所述数据发送模块,具体用于:
60.所述屏幕共享进程通过数据通道向所述在线通信进程发送所采集的屏幕数据;
61.所述在线通信进程通过所述数据通道接收所述屏幕数据;
62.所述在线通信进程通过数据共享链路向所述服务器发送所述屏幕数据。
63.第四方面,本技术实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
64.存储器,用于存放计算机程序;
65.处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的方法步骤。
66.第五方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的方法步骤。
67.第六方面,本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面任一所述的方法步骤。
68.本发明实施例有益效果:
69.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,由在线通信进程通过信令共享链路向服务器发送屏幕共享请求,并且在线通信进程获得屏幕共享进程采集的屏幕数据,通过数据共享链路向服务器发送屏幕数据,这样屏幕共享进程与服务器之间无需额外再建立两条通信链路。因此,应用本技术实施例提供的屏幕共享方案,能够减少屏幕共享过程所占用的链路资源。
附图说明
70.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
71.图1为本技术实施例提供的第一种屏幕共享方法的流程示意图;
72.图2为本技术实施例提供的第二种屏幕共享方法的流程示意图;
73.图3为本技术实施例提供的第三种屏幕共享方法的流程示意图;
74.图4为本技术实施例提供的第四种屏幕共享方法的流程示意图;
75.图5为本技术实施例提供的第五种屏幕共享方法的流程示意图;
76.图6a为本技术实施例提供的第六种屏幕共享方法的流程示意图;
77.图6b为现有技术中的一种屏幕共享方法的数据交互示意图;
78.图6c为本技术实施例提供的一种屏幕共享方法的数据交互示意图;
79.图7为本技术实施例提供的第一种屏幕共享系统的结构示意图;
80.图8为本技术实施例提供的第一种屏幕共享装置的结构示意图;
81.图9为本技术实施例提供的第二种屏幕共享装置的结构示意图;
82.图10为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
83.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发明保护的范围。
84.参见图1,图1为本技术实施例提供的第一种屏幕共享方法的流程示意图,应用于电子设备,电子设备创建有在线通信进程以及屏幕共享进程,本实施例中,上述方法包括以下步骤s101-s104。
85.步骤s101:在线通信进程通过信令共享链路向服务器发送屏幕共享请求。
86.其中,上述在线通信进程为用户使用的用户设备中运行的进程。
87.例如,上述在线通信进程可以是视频会议进程、在线通话进程或者在线直播进程等。
88.上述用户设备可以是计算机、手机或平板电脑等电子设备。
89.上述信令共享链路为在线通信进程与服务器之间用于传输信令的链路。
90.上述屏幕共享请求用于请求服务器允许将上述用户设备的屏幕中显示的内容共享给参与在线通信的其他用户。
91.具体的,若用户需要将上述用户设备的屏幕内容共享给其他用户时,在线通信进程可以接收到用户通过点击、滑动等方式触发的屏幕共享指示,然后生成屏幕共享请求,并通过上述信令共享链路向服务器发送该屏幕共享请求。
92.步骤s102:在线通信进程在接收到服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令。
93.其中,上述屏幕共享进程为上述用户设备中运行的进程。
94.上述屏幕采集指令用于指示屏幕共享进程采集上述用户设备屏幕中显示的内容。
95.具体的,在线通信进程向服务器发送屏幕共享请求后,服务器可以通过上述信令共享链路向在线通信进程发送屏幕共享许可,允许用户向参与在线通信的其他用户进行屏幕共享,在线通信进程在接收到服务器发送的屏幕共享许可后,可以首先创建屏幕共享进程,并生成屏幕采集指令,然后向所创建的屏幕共享进程发送屏幕采集指令,指示屏幕共享进程采集上述用户设备屏幕中显示的内容。
96.本技术的一个实施例中,创建屏幕共享进程存在以下两种实现方式。
97.第一种实现方式中,在线通信进程可以直接创建屏幕共享进程。
98.第二种实现方式中,在线通信进程可以向上述用户设备发送创建屏幕共享进程的请求,上述用户设备获得该请求后创建屏幕共享进程。
99.本技术的一个实施例中,在线通信进程向屏幕共享进程发送屏幕采集指令存在以下三种实现方式。
100.第一种实现方式中,可以在上述用户设备中设置共享存储空间,在线通信进程和屏幕共享进程均可以对该共享存储空间进行读写操作。在线通信进程可以将屏幕采集指令存储至该共享存储空间,屏幕共享进程可以读取该共享存储空间中存储的屏幕采集指令。
101.第二种实现方式中,还可以基于在线通信进程和屏幕共享进程的本地套接口socket接口,实现在线通信进程向屏幕共享进程发送屏幕采集指令。
102.第三种实现方式中,还可以通过后续图2所示实施例中步骤s102a实现发送屏幕采集指令,这里暂不详述。
103.步骤s103:屏幕共享进程采集屏幕数据。
104.其中,上述屏幕数据可以是上述用户设备的整个屏幕所显示的内容的数据,还可以是上述用户设备的屏幕中一个窗口所显示的内容的数据。
105.具体的,屏幕共享进程在接收到在线通信进程发送的屏幕采集指令后,可以采集上述用户设备中显示的内容,所采集的数据即为屏幕数据。
106.本方案中,由于屏幕共享进程不需要与服务器进行数据交互,只需要基于屏幕采
集指令采集屏幕数据,因此,屏幕共享进程可以理解为屏幕采集进程,这样能够简化屏幕共享进程的结构以及所实现的功能,从而降低与在线通信进程之间交互的逻辑复杂度。
107.步骤s104:在线通信进程获得屏幕数据,通过数据共享链路向服务器发送屏幕数据。
108.其中,上述数据共享链路为在线通信进程与服务器之间用于传输数据的链路。
109.具体的,屏幕共享进程采集得到屏幕数据之后,可以向在线通信进程发送屏幕数据,在线通信进程可以获得屏幕数据,并通过数据共享链路将屏幕数据发送给服务器。
110.另外,服务器接收到在线通信进程发送的屏幕数据之后,可以基于其他用户设备发送的屏幕数据获得请求,将所接收的屏幕数据发送给其他用户设备,从而实现屏幕共享。
111.本技术的一个实施例中,与上述步骤s102中在线通信进程向屏幕共享进程发送屏幕共享指令相类似,在线通信进程获得屏幕数据同样存在以下三种实现方式。
112.第一种实现方式中,屏幕共享进程可以将屏幕数据存储至共享存储空间,在线通信进程可以读取该共享存储位置中存储的屏幕数据。
113.第二种实现方式中,还可以基于在线通信进程和屏幕共享进程的本地socket接口实现在线通信进程获得屏幕数据。
114.第三种实现方式中,还可以通过后续图3所示实施例中步骤s104a-s104b实现在线通信进程获得屏幕数据,这里暂不详述。
115.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,由在线通信进程通过信令共享链路向服务器发送屏幕共享请求,并且在线通信进程获得屏幕共享进程采集的屏幕数据,通过数据共享链路向服务器发送屏幕数据,这样屏幕共享进程与服务器之间无需额外再建立两条通信链路。因此,应用本技术实施例提供的屏幕共享方案,能够减少屏幕共享过程所占用的链路资源。
116.在线通信进程向屏幕共享进程发送屏幕采集指令时,除了可以采用上述图1所示实施例中步骤s102所提供的方式外,还可以通过以下图2所示实施例中步骤s102a实现发送屏幕采集指令。
117.本技术的一个实施例中,参见图2,提供了第二种屏幕共享方法的流程示意图,本实施例中,可以通过以下步骤s102a实现上述步骤s102。
118.步骤s102a:在线通信进程在接收到服务器发送的屏幕共享许可后,通过信令通道向屏幕共享进程发送屏幕采集指令。
119.其中,上述信令通道为在线通信进程与屏幕共享进程之间用于传输信令的通道。
120.具体的,可以预先在用户设备本地构建在线通信进程和屏幕共享进程之间用于传输信令的通道,作为信令通道,然后在在线通信进程接收到服务器发送的屏幕共享许可后,在线通信进程可以生成屏幕采集指令,进而通过所构建的信令通道,将屏幕采集指令发送给屏幕共享进程。
121.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过信令通道直接向屏幕共享进程发送屏幕采集指令,而无需借助其他进程或器件实现,因此,应用本技术实施例提供的屏幕共享方案,在线通信进程能够更加便捷的向屏幕共享进程发送屏幕采集指令,从而有利于实现屏幕共享。
122.在线通信进程获得屏幕数据时,除了可以采用上述图1所示实施例中步骤s104所
提供的方式外,还可以通过以下图3所示实施例中步骤s104a-s104b实现在线通信进程获得屏幕数据。
123.本技术的一个实施例中,参见图3,提供了第三种屏幕共享方法的流程示意图,本实施例中,可以通过以下步骤s104a-s104c实现上述步骤s104。
124.步骤s104a:屏幕共享进程通过数据通道向在线通信进程发送所采集的屏幕数据。
125.其中,上述数据通道为在线通信进程与屏幕共享进程之间用于传输数据的通道。
126.具体的,可以预先在用户设备本地构建在线通信进程和屏幕共享进程之间用于传输数据的通道,作为数据通道,然后在屏幕共享进程采集屏幕数据后,屏幕共享进程可以通过数据通道,将所采集的屏幕数据发送给在线通信进程。
127.步骤s104b:在线通信进程通过数据通道接收屏幕数据。
128.由于数据通道为屏幕共享进程和在线通信进程之间用于传输数据的通道,因此,屏幕共享进程通过数据通道发送屏幕数据后,在线通信进程可以通过数据通道接收屏幕数据。
129.步骤s104c:在线通信进程通过数据共享链路向服务器发送屏幕数据。
130.具体的,在线通信进程在接收到屏幕数据后,可以通过数据共享链路,将屏幕数据发送给服务器。另外,在线通信进程在向服务器发送屏幕数据之前,可以对屏幕数据进行标记、校验等处理,然后将处理后的屏幕数据通过数据共享链路发送给服务器。
131.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过数据通道直接获得屏幕共享进程采集的屏幕数据,并将屏幕数据通过数据共享链路发送给服务器,而无需借助其他进程或器件获得屏幕数据,因此,应用本技术实施例提供的屏幕共享方案,在线通信进程能够更加便捷的获得屏幕数据,从而有利于实现屏幕共享。
132.上述数据共享链路除了可以传输上述屏幕数据之外,还可以传输在线通信进程获得的通信数据,服务器在接收在线通信进程通过数据共享链路发送的数据时,可能难以辨别所接收的数据是哪一类型的数据。
133.鉴于上述情况,本技术的一个实施例中,参见图4,提供了第四种屏幕共享方法的流程示意图,本实施例中,上述方法还包括以下步骤s105,并且可以通过以下步骤s104d-s104e实现上述步骤s104。
134.步骤s105:在线通信进程获得通信数据,并对通信数据进行通信数据标记。
135.其中,上述通信数据可以是文字数据、音频数据、视频数据中的一种或多种。
136.具体的,上述在线通信进程可以有多种情况,不同在线通信进程所获得的通信数据也就不同。
137.下面分别以在线通信进程为视频会议进程、在线通话进程为例,对获得通信数据进行说明。
138.在上述在线通信进程为视频会议进程的情况下,视频会议进程可以获得上述用户设备中图像采集模块采集的图像数据作为通信数据。如,上述用户设备为手机时,视频会议进程可以获得由手机摄像头采集的视频数据作为通信数据。
139.在上述在线通信进程为在线通话进程的情况下,在线通话进程可以获得上述用户设备中录音模块采集的音频数据作为通信数据。
140.除上述视频会议进程和在线通话进程外,上述在线通信进程还存在其他情况,同
样的,获得通信数据也存在其他实现方式,本技术实施例对此并不限定。
141.在在线通信进程获得通信数据后,可以对通信数据进行通信数据标记,用于指示所标记的数据为通信数据。
142.对通信数据进行通信数据标记可以基于现有的数据标记技术实现,这里不再详述。
143.本技术实施例中,可以通过以下步骤步骤s104d-s104e实现上述步骤s104。
144.步骤s104d:在线通信进程获得屏幕数据,并对屏幕数据进行屏幕数据标记。
145.在线通信进程获得屏幕数据的实现方式可参见上述步骤s104的描述,这里不再赘述。
146.在线通信设备在获得屏幕数据后,可以对屏幕数据进行屏幕数据标记,用于指示所标记的数据为屏幕数据。
147.对屏幕数据进行屏幕数据标记也可以基于现有的数据标记技术实现,这里不再详述。
148.步骤s104e:在线通信进程通过数据共享链路向服务器发送标记后的通信数据、屏幕数据。
149.具体的,当在线通信进程获得通信数据后,可以对通信数据进行通信数据标记,并将标记后的通信数据通过数据共享链路发送给服务器,服务器在接收到在线通信进程发送的通信数据后,可以基于通信数据的标识,识别出所接收的数据为通信数据。
150.当在线通信进程获得屏幕数据后,可以对屏幕数据进行屏幕数据标记,并将标记后的屏幕数据通过数据共享链路发送给服务器,服务器再接收到在线通信进程发送的屏幕数据后,可以基于屏幕数据的标识,识别出所接收的数据为屏幕数据。
151.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以给所获得的屏幕数据、通信数据分别进行不同的标记处理,这样服务器可以基于所接收的数据的标识,识别出所接收的数据为哪一类型的数据,进而准确的对所接收的数据进行后续处理。因此,应用本技术实施例提供的屏幕共享方案,能够保证在线通信过程和屏幕共享过程的可靠性。
152.另外,对通信数据和屏幕数据进行标记是为了将这两种数据进行区分,以使得服务器能够识别出所接收的数据为哪一类型的数据。
153.出于这一目的,本技术的一个实施例中,可以仅对通信数据和屏幕数据中任一种数据进行标记,并在服务器侧规定有标记的数据的类型。
154.例如,在线通信进程可以对屏幕数据进行标记,并在服务器侧规定有标记的数据为屏幕数据,则服务器在接收到在线通信进程发送的数据后,可以确定有标记的数据为屏幕数据,无标记的数据为通信数据。
155.又例如,在线通信进程可以对通信数据进行标记,并在服务器侧规定有标记的数据为通信数据,则服务器在接收到在线通信进程发送的数据后,可以确定有标记的数据为通信数据,无标记的数据为屏幕数据。
156.本技术的一个实施例中,参见图5,提供了第五种屏幕共享方法的流程示意图,本实施例中,可以通过以下步骤s105a-s105c实现上述步骤s105,并且可以通过以下步骤s101a实现上述步骤s101。
157.步骤s105a:在线通信进程获得用户信息,基于用户信息生成在线通信请求,并通过信令共享链路向服务器发送在线通信请求,以使得服务器根据用户信息对在线通信请求进行认证。
158.其中,上述用户信息可以是用户的id、标识、认证密码等,上述用户信息还可以包括上述用户设备的标识、ip地址等。
159.具体的,在线通信进程在生成在线通信请求时,可以将所获得的用户信息添加至在线通信请求中。在线通信进程生成在线通信请求后,通过信令共享链路向服务器发送该在线通信请求。服务器接收到在线通信请求后,可以对在线通信请求进行解析,获得该用户信息,并根据该用户信息对在线通信请求进行认证,从而确定是否许可发送在线通信请求的用户加入在线通信。
160.将用户信息添加至在线通信请求中可以通过现有的信息添加技术实现,这里不再详述。
161.本技术的一个实施例中,服务器对在线通信请求进行认证,可以是基于用户信息,确定发送在线通信请求的用户,并判断该用户是否有权限加入在线通信。
162.例如,若服务器记录的在线通信列表中不包含该用户,或者该用户为服务器的白名单中记录的用户,或者用户信息中包含的认证密码正确,则服务器可以判断出该用户有权限加入在线通信,此时,服务器可以许可该用户加入在线通信。
163.又例如,若服务器中记录的在线通信用户中已包含该用户,或者该用户为服务器的黑名单中记录的用户,或者用户信息中包含认证密码错误,则服务器可以判断出该用户没有权限加入在线通信,此时,服务器可以不许可该用户加入在线通信。
164.步骤s105b:在线通信进程在接收到服务器发送的在线通信许可后,获得通信数据。
165.具体的,服务器对在线通信请求的认证通过后,可以通过信令共享链路向在线通信进程发送在线通信许可。在线通信进程获得该在线通信许可后,可以获得通信数据,从而后续将通信数据发送给服务器,实现在线通信。
166.在线通信进程获得通信数据可以参见上述图2所示实施例中步骤s105中的描述,这里不再赘述。
167.步骤s105c:在线通信进程对通信数据进行通信数据标记。
168.对通信数据进行通信数据标记可以通过现有的数据标记技术实现,这里不再详述。
169.本技术实施例中,上述步骤s101中在线通信进程向服务器发送屏幕共享请求可以通过以下步骤s101a实现。
170.步骤s101a:在线通信进程基于已获得的用户信息生成屏幕共享请求,通过信令共享链路向服务器发送屏幕共享请求。
171.具体的,在线通信进程在生成屏幕共享请求时,可以将已获得的用户信息添加至屏幕共享请求中。在线通信进程生成屏幕共享请求后,通过信令共享链路向服务器发送该屏幕共享请求。服务器接收到屏幕共享请求后,可以对屏幕共享请求进行解析,获得该用户信息,从而基于上述用户信息判断是否允许该用户发起屏幕共享。
172.将用户信息添加至屏幕共享请求中可以通过现有的信息添加技术实现,这里不再
详述。
173.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以基于用户信息生成在线通信请求以及屏幕共享请求,这样能够使得服务器可以根据所接收请求中的用户信息对所接收请求进行认证。由于现有技术中屏幕共享请求是由屏幕共享进程基于用户信息生成的,因此,现有技术中在线通信进程和屏幕共享请求均需要提前获得用户请求,然后生成相应请求,而本方案中由于屏幕共享请求是由在线通信进程生成的,因此屏幕共享进程无需获得用户信息,这样简化了实现屏幕共享的步骤,提高了屏幕共享的效率。
174.本技术的一个实施例中,参见图6a,提供了第六种屏幕共享方法的流程示意图,本实施例中,上述在线通信进程为视频会议进程,上述方法包括以下步骤s601-s609。
175.步骤s601:视频会议进程获得用户信息,基于用户信息生成视频会议请求,并通过信令共享链路向服务器发送视频会议请求,以使得服务器根据用户信息对视频会议请求进行认证。
176.步骤s602:视频会议进程在接收到服务器发送的视频会议许可后,获得音视频数据。
177.步骤s603:视频会议进程对音视频数据进行音视频数据标记。
178.上述步骤s601-s603分别与上述图5所示实施例中步骤s105a-s105c相类似,这里不再赘述。
179.步骤s604:视频会议进程基于已获得的用户信息生成屏幕共享请求,通过信令共享链路向服务器发送屏幕共享请求。
180.本步骤与上述图5所示实施例中步骤s101a相类似,这里不再赘述。
181.步骤s605:视频会议进程在接收到服务器发送的屏幕共享许可后,通过信令通道向屏幕共享进程发送屏幕采集指令。
182.本步骤与上述图2所示实施例中步骤s102a相类似,这里不再赘述。
183.步骤s606:屏幕共享进程采集屏幕数据。
184.本步骤与上述图1所示实施例中步骤s103相类似,这里不再赘述。
185.步骤s607:屏幕共享进程通过数据通道向视频会议进程发送所采集的屏幕数据。
186.本步骤与上述图3所示实施例中步骤s104a相类似,这里不再赘述。
187.步骤s608:视频会议进程通过数据通道获得屏幕数据,并对屏幕数据进行屏幕数据标记。
188.步骤s609:视频会议进程通过数据共享链路向服务器发送标记后的音视频数据、屏幕数据。
189.上述步骤s608-s609分别与上述图4所示实施例中步骤s104d-s104e相类似,这里不再赘述。
190.本技术的一个实施例中,下面将结合图6b和图6c对上述步骤s601-s609进行说明。
191.图6b为现有技术中的一种屏幕共享方法的数据交互示意图,如图6b所示,用户设备a中包含视频会议进程以及屏幕共享进程,信令链路a为视频会议进程与服务器之间用于传输信令的链路,数据链路a为视频会议进程与服务器之间用于传输数据的链路,信令链路b为屏幕共享进程与服务器之间用于传输信令的链路,数据链路b为屏幕共享进程与服务器
之间用于传输数据的链路。
192.用户设备a在进行视频会议时,视频会议进程可以首先获得用户信息,基于用户信息生成视频会议请求,并通过信令链路a向服务器发送视频会议请求,服务器应允该视频会议请求后,视频会议进程可以采集音视频数据,并通过数据链路a向服务器发送音视频数据。
193.若用户设备a在加入视频会议后,需要进行屏幕共享,则屏幕共享进程可以首先获得用户信息,基于用户信息生成屏幕共享请求,并通过信令链路b向服务器发送屏幕共享请求,服务器应允该屏幕共享请求后,屏幕共享进程可以采集屏幕数据,并通过数据链路b向服务器发送屏幕数据。
194.图6c为本技术实施例提供的一种屏幕共享方法的数据交互示意图,如图6c所示,用户设备b中同样包含视频会议进程以及屏幕共享进程,视频会议进程与服务器之间存在信令共享链路以及数据共享链路,视频会议进程与屏幕共享进程之间存在信令通道以及数据通道。
195.用户设备b在进行视频会议时,视频会议进程可以首先获得用户信息,基于用户信息生成视频会议请求,并通过信令共享链路向服务器发送视频会议请求,服务器应允该视频会议请求后,视频会议进程可以采集音视频数据,并对音视频数据进行音视频数据标记,通过信令共享链路向服务器发送音视频数据。
196.若用户设备b在加入视频会议后,需要进行屏幕共享,则此时,视频会议进程可以基于已获得的用户信息生成屏幕共享请求,并通过信令共享链路向服务器发送屏幕共享请求,服务器应允该屏幕共享请求后,视频会议进程可以通过信令通道向屏幕共享进程发送屏幕采集指令,屏幕共享进程基于该屏幕采集指令采集屏幕数据,并通过数据通道向视频会议进程发送屏幕数据,视频会议进程获得该屏幕数据后,可以对屏幕数据进行屏幕数据标记,并通过数据共享链路向服务器发送屏幕数据。
197.由以上可见,本技术实施例提供的方案相比于现有技术中的方案,在进行屏幕共享时,屏幕共享进程无需获得用户信息,也无需与服务器进行交互,并且用户设备b与服务器之间仅需建立两条链路,因此,应用本技术实施例提供的屏幕共享方案,能够简化屏幕共享进程的结构,节约链路资源。
198.与上述屏幕共享方法相对应,本技术实施例还提供了一种屏幕共享系统。
199.本技术的一个实施例中,参见图7,提供了第一种屏幕共享系统的结构示意图,本实施例中,上述系统包括电子设备701、服务器702,电子设备701创建有在线通信进程以及屏幕共享进程,其中:
200.电子设备701,用于利用在线通信进程,通过信令共享链路向服务器702发送屏幕共享请求。
201.服务器702,用于接收屏幕共享请求,并基于屏幕共享请求,在确定允许电子设备701发起屏幕共享的情况下,通过信令共享链路向电子设备701发送屏幕共享许可。
202.具体的,上述屏幕共享请求中可以携带有上述电子设备701的设备信息,或者是使用上述电子设备701的用户的用户信息。上述服务器702在接收到屏幕共享请求后,可以对屏幕共享请求进行解析,获得上述设备信息或用户信息,然后基于设备信息或者用户信息判断是否允许电子设备701发起屏幕共享,若允许,则生成屏幕共享许可,并通过信令共享
链路向电子设备701发送该屏幕共享许可。
203.上述设备信息可以是电子设备701的名称、标识、ip地址等,上述用户信息可以是用户的id、标识、认证密码等。
204.例如,在上述屏幕共享请求中包括用户的认证密码时,服务器702可以通过对屏幕共享请求进行解析,从而获得该认证密码,并检测该认证密码是否正确,若认证密码正确,则允许电子设备701发起屏幕共享。
205.电子设备701,还用于利用在线通信进程接收屏幕共享许可,并利用在线通信进程向屏幕共享进程发送屏幕采集指令,利用屏幕共享进程采集屏幕数据,利用在线通信进程获得屏幕数据,并利用在线通信进程通过数据共享链路向服务器702发送屏幕数据。
206.服务器702,还用于接收屏幕数据。
207.服务器702在接收到屏幕数据后,可以基于其他电子设备的获取屏幕数据的请求,将该屏幕数据发送给其他电子设备,这样其他用户即可在上述其他电子设备中观看到上述电子设备701的屏幕中的内容,实现屏幕共享。
208.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,由在线通信进程通过信令共享链路向服务器发送屏幕共享请求,并且在线通信进程获得屏幕共享进程采集的屏幕数据,通过数据共享链路向服务器发送屏幕数据,这样屏幕共享进程与服务器之间无需额外再建立两条通信链路。因此,应用本技术实施例提供的屏幕共享方案,能够减少屏幕共享过程所占用的链路资源。
209.本技术的一个实施例中,电子设备701,具体用于:
210.利用在线通信进程获得通信数据,并对通信数据进行通信数据标记,并在在线通信进程获得屏幕数据后,利用在线通信进程对屏幕数据进行屏幕数据标记,通过数据共享链路向服务器702发送标记后的通信数据、屏幕数据;
211.服务器702,具体用于接收标记后的通信数据、屏幕数据。
212.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以给所获得的屏幕数据、通信数据分别进行不同的标记处理,这样服务器可以基于所接收的数据的标识,识别出所接收的数据为哪一类型的数据,进而准确的对所接收的数据进行后续处理。因此,应用本技术实施例提供的屏幕共享方案,能够保证在线通信过程和屏幕共享过程的可靠性。
213.本技术的一个实施例中,电子设备701,具体用于利用在线通信进程,获得用户信息,基于用户信息生成在线通信请求,并通过信令共享链路向服务器702发送在线通信请求;
214.服务器702,还用于获得在线通信请求,根据用户信息对在线通信请求进行认证,并在认证通过的情况下向电子设备701发送在线通信许可;
215.电子设备701,还用于在利用在线通信进程接收到在线通信许可后,利用在线通信进程,获得通信数据,并对屏幕数据进行屏幕数据标记;
216.电子设备701,还用于利用在线通信进程,基于已获得的用户信息生成屏幕共享请求,并通过信令共享链路向服务器702发送屏幕共享请求。
217.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以基于用户信息生成在线通信请求以及屏幕共享请求,这样能够使得服务器可以根据所接收
请求中的用户信息对所接收请求进行认证。由于现有技术中屏幕共享请求是由屏幕共享进程基于用户信息生成的,因此,现有技术中在线通信进程和屏幕共享请求均需要提前获得用户请求,然后生成相应请求,而本方案中由于屏幕共享请求是由在线通信进程生成的,因此屏幕共享进程无需获得用户信息,这样简化了实现屏幕共享的步骤,提高了屏幕共享的效率。
218.本技术的一个实施例中,电子设备701,具体用于:
219.在在线通信进程接收到服务器702发送的屏幕共享许可后,利用在线通信进程通过信令通道向屏幕共享进程发送屏幕采集指令。
220.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过信令通道直接向屏幕共享进程发送屏幕采集指令,而无需借助其他进程或器件实现,因此,应用本技术实施例提供的屏幕共享方案,在线通信进程能够更加便捷的向屏幕共享进程发送屏幕采集指令,从而有利于实现屏幕共享。
221.本技术的一个实施例中,电子设备701,具体用于:
222.利用屏幕共享进程通过数据通道向在线通信进程发送所采集的屏幕数据,利用在线通信进程,通过数据通道接收屏幕数据,并通过数据共享链路向服务器702发送屏幕数据。
223.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过数据通道直接获得屏幕共享进程采集的屏幕数据,并将屏幕数据通过数据共享链路发送给服务器,而无需借助其他进程或器件获得屏幕数据,因此,应用本技术实施例提供的屏幕共享方案,在线通信进程能够更加便捷的获得屏幕数据,从而有利于实现屏幕共享。
224.与上述屏幕共享方法相对应,本技术实施例还提供了一种屏幕共享装置。
225.参见图8,提供了第一种屏幕共享装置的结构示意图,设置于电子设备,所述电子设备创建有在线通信进程以及屏幕共享进程,所述装置包括:
226.请求发送模块801,用于在线通信进程通过信令共享链路向服务器发送屏幕共享请求;
227.指令发送模块802,用于所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令;
228.数据采集模块803,用于所述屏幕共享进程采集屏幕数据;
229.数据发送模块804,用于所述在线通信进程获得所述屏幕数据,通过数据共享链路向所述服务器发送所述屏幕数据。
230.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,由在线通信进程通过信令共享链路向服务器发送屏幕共享请求,并且在线通信进程获得屏幕共享进程采集的屏幕数据,通过数据共享链路向服务器发送屏幕数据,这样屏幕共享进程与服务器之间无需额外再建立两条通信链路。因此,应用本技术实施例提供的屏幕共享方案,能够减少屏幕共享过程所占用的链路资源。
231.本技术的一个实施例中,参见图9,提供了第二种屏幕共享装置的结构示意图,本实施例中,所述装置还包括:
232.通信标记模块805,用于所述在线通信进程获得通信数据,并对所述通信数据进行通信数据标记;
233.所述数据发送模块804,具体用于:
234.所述在线通信进程获得所述屏幕数据,并对所述屏幕数据进行屏幕数据标记;
235.所述在线通信进程通过数据共享链路向所述服务器发送标记后的通信数据、屏幕数据。
236.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以给所获得的屏幕数据、通信数据分别进行不同的标记处理,这样服务器可以基于所接收的数据的标识,识别出所接收的数据为哪一类型的数据,进而准确的对所接收的数据进行后续处理。因此,应用本技术实施例提供的屏幕共享方案,能够保证在线通信过程和屏幕共享过程的可靠性。
237.本技术的一个实施例中,所述通信标记模块805,具体用于:
238.所述在线通信进程获得用户信息,基于所述用户信息生成在线通信请求,并通过所述信令共享链路向所述服务器发送所述在线通信请求,以使得所述服务器根据所述用户信息对所述在线通信请求进行认证;
239.所述在线通信进程在接收到所述服务器发送的在线通信许可后,获得通信数据;
240.所述所述在线通信进程对所述屏幕数据进行屏幕数据标记;
241.所述请求发送模块801,具体用于:
242.所述在线通信进程基于已获得的用户信息生成屏幕共享请求,通过所述信令共享链路向所述服务器发送所述屏幕共享请求。
243.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以基于用户信息生成在线通信请求以及屏幕共享请求,这样能够使得服务器可以根据所接收请求中的用户信息对所接收请求进行认证。由于现有技术中屏幕共享请求是由屏幕共享进程基于用户信息生成的,因此,现有技术中在线通信进程和屏幕共享请求均需要提前获得用户请求,然后生成相应请求,而本方案中由于屏幕共享请求是由在线通信进程生成的,因此屏幕共享进程无需获得用户信息,这样简化了实现屏幕共享的步骤,提高了屏幕共享的效率。
244.本技术的一个实施例中,所述指令发送模块802,具体用于:
245.所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,通过信令通道向屏幕共享进程发送屏幕采集指令。
246.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过信令通道直接向屏幕共享进程发送屏幕采集指令,而无需借助其他进程或器件实现,因此,应用本技术实施例提供的屏幕共享方案,在线通信进程能够更加便捷的向屏幕共享进程发送屏幕采集指令,从而有利于实现屏幕共享。
247.本技术的一个实施例中,所述数据发送模块804,具体用于:
248.所述屏幕共享进程通过数据通道向所述在线通信进程发送所采集的屏幕数据;
249.所述在线通信进程通过所述数据通道接收所述屏幕数据;
250.所述在线通信进程通过数据共享链路向所述服务器发送所述屏幕数据。
251.由以上可见,应用本技术实施例提供的方案进行屏幕共享时,在线通信进程可以通过数据通道直接获得屏幕共享进程采集的屏幕数据,并将屏幕数据通过数据共享链路发送给服务器,而无需借助其他进程或器件获得屏幕数据,因此,应用本技术实施例提供的屏
幕共享方案,在线通信进程能够更加便捷的获得屏幕数据,从而有利于实现屏幕共享。
252.本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,
253.存储器1003,用于存放计算机程序;
254.处理器1001,用于执行存储器1003上所存放的程序时,实现如下步骤:
255.在线通信进程通过信令共享链路向服务器发送屏幕共享请求;
256.所述在线通信进程在接收到所述服务器发送的屏幕共享许可后,向屏幕共享进程发送屏幕采集指令;
257.所述屏幕共享进程采集屏幕数据;
258.所述在线通信进程获得所述屏幕数据,通过数据共享链路向所述服务器发送所述屏幕数据。
259.上述处理器1001执行存储器1003所存放的程序而实现屏幕共享的其他方案,与前述方法实施例中提及的方案相同,这里不再赘述。
260.上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
261.通信接口用于上述电子设备与其他设备之间的通信。
262.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
263.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
264.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一屏幕共享方法的步骤。
265.在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一屏幕共享方法。
266.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字
用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
267.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
268.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
269.以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1