CN108933965B - Screen content sharing method and device and storage medium - Google Patents

Screen content sharing method and device and storage medium Download PDF

Info

Publication number
CN108933965B
CN108933965B CN201710386972.2A CN201710386972A CN108933965B CN 108933965 B CN108933965 B CN 108933965B CN 201710386972 A CN201710386972 A CN 201710386972A CN 108933965 B CN108933965 B CN 108933965B
Authority
CN
China
Prior art keywords
sharing
screen
identifier
video
content
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.)
Active
Application number
CN201710386972.2A
Other languages
Chinese (zh)
Other versions
CN108933965A (en
Inventor
张扬超
李斌
徐饶
王俊山
易薇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710386972.2A priority Critical patent/CN108933965B/en
Publication of CN108933965A publication Critical patent/CN108933965A/en
Application granted granted Critical
Publication of CN108933965B publication Critical patent/CN108933965B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4438Window management, e.g. event handling following interaction with the user interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • H04N21/4858End-user interface for client configuration for modifying screen layout parameters, e.g. fonts, size of the windows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A screen content sharing method, apparatus and storage medium, the method of one embodiment comprising: when a screen content sharing instruction is received through a video session interface, sending a screen content sharing request comprising a first user identifier to a background server; switching to a content sharing interface when a sharing confirmation message of the background server is received, and setting a screen sharing video source of the content sharing interface; sending a screen sharing notification message to a background server, and sending the screen sharing notification message to each second user terminal corresponding to each second user identifier by the background server, wherein the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface; and acquiring the screen content data to be shared of the screen sharing video source, displaying the screen content data to be shared in a sharing content display sub-window of the content sharing interface, and sending the screen content data to be shared to each second user terminal. According to the embodiment, the interactive performance and interactive performance of the shared content during information sharing are improved.

Description

Screen content sharing method and device and storage medium
Technical Field
The present invention relates to the field of network information technologies, and in particular, to a screen content sharing method, a screen content sharing apparatus, and a computer storage medium.
Background
With the rapid development of network information technology, the demand and applications of information sharing between multiple terminals are increasing, for example, applications such as multi-user video sessions between multiple terminals. In the multi-person video session, the local camera equipment of each terminal collects video images and distributes the collected video images to other terminals through the background server. In the process of multi-person video session, each terminal distributes local video images to other terminals through a server in real time, so that the terminal is used in various network video conferences. However, in such a multi-user video session, only the video image acquired by the camera device of the terminal can be distributed to other terminals, and interaction of more shared contents cannot be provided, so that application of multi-party information sharing is restricted.
Disclosure of Invention
Based on this, embodiments of the present invention provide a screen content sharing method, a screen content sharing apparatus, and a storage medium, so as to improve interaction performance and interaction performance of shared content during information sharing.
In order to achieve the purpose, the following technical scheme is adopted in one embodiment:
a screen content sharing method, comprising the steps of:
when a screen content sharing instruction is received through a video session interface, sending a screen content sharing request to a background server, wherein the screen content sharing request comprises a first user identifier;
when a sharing confirmation message returned by the background server is received, switching to a content sharing interface, and setting a screen sharing video source of the content sharing interface;
sending a screen sharing notification message to the background server, and sending the screen sharing notification message to each second user terminal corresponding to each second user identifier by the background server, wherein the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
and acquiring to-be-shared screen content data of the screen sharing video source, displaying the to-be-shared screen content data on a sharing content display sub-window of the content sharing interface, and sending the to-be-shared screen content data to each second user terminal.
A screen content sharing method, comprising:
receiving a screen content sharing request sent by a first user terminal, wherein the screen content sharing request comprises a first user identifier of the first user terminal;
acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal;
receiving a screen sharing notification message sent by the first user terminal after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface;
and sending the screen sharing notification message to second user terminals which are associated with the video session room identification and correspond to second user identifications except the first user identification.
A screen content sharing apparatus, comprising:
the sharing request module is used for sending a screen content sharing request to a background server when a screen content sharing instruction is received through a video session interface, wherein the screen content sharing request comprises a first user identifier;
the first interface switching module is used for switching to a content sharing interface when receiving a sharing confirmation message returned by the background server, and setting a screen sharing video source of the content sharing interface;
the first sharing notification module is used for sending a screen sharing notification message to the background server, and the background server sends the screen sharing notification message to each second user terminal corresponding to each second user identifier, wherein the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
and the content sharing module is used for acquiring the screen content data to be shared of the screen sharing video source, displaying the screen content data to be shared on a sharing content display sub-window of the content sharing interface, and sending the screen content data to be shared to each second user terminal.
A screen content sharing apparatus, comprising:
the system comprises a sharing request response module, a sharing request sending module and a sharing module, wherein the sharing request response module is used for receiving a screen content sharing request sent by a first user terminal, and the screen content sharing request comprises a first user identifier of the first user terminal; acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal;
and the second sharing notification module is used for receiving a screen sharing notification message which is sent after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface, and sending the screen sharing notification message to second user terminals which are associated with the video session room identifier and correspond to second user identifiers except the first user identifier.
A storage medium having stored thereon a computer program which, when executed by a processor, implements a screen content sharing method as described above.
According to the scheme of the embodiment, the terminal can receive the screen content sharing instruction through the video session interface and send the screen content sharing request to the background server, the terminal can switch to the content sharing interface after receiving the sharing confirmation message of the background server, set the screen sharing video source and notify other second user terminals for screen sharing through the background server, so that the content sharing between the current user terminal and other second user terminals in the video session process is realized, namely when the screen content sharing is required, the sharing of the screen content can be initiated directly based on the video session process, and based on the user terminals associated with the video session room identifier for video session, the sharing parties for screen content sharing can be determined without using a specific screen content sharing system, and special registration, connection and other processing are not required for sharing the screen content, so that the interactive performance and interactive performance of the shared content during information sharing are improved, and the convenience and quickness of sharing the screen content are improved.
Drawings
FIG. 1 is a schematic illustration of an operating environment for an embodiment of the present invention;
FIG. 2 is a diagram illustrating the component structure of a user terminal according to one embodiment;
FIG. 3 is a schematic diagram of the component structure of a server of an embodiment;
FIG. 4 is a flow diagram that illustrates a method for screen content sharing, in one embodiment;
FIG. 5 is a flowchart illustrating a screen content sharing method in another embodiment;
FIG. 6 is a flowchart illustrating a screen content sharing method in another embodiment;
FIG. 7 is a diagram illustrating interaction flow during screen content sharing for an exemplary application;
fig. 8 is a schematic diagram of a processing framework of a terminal in screen content sharing in a specific application example;
FIG. 9 is a flow diagram illustrating the initiation of screen content sharing in one example of a particular application;
FIG. 10 is a flow diagram illustrating the ending of screen content sharing in an example embodiment of a particular application;
FIG. 11 is a diagrammatic illustration of a video session interface in an example specific application;
FIG. 12 is a diagram of a content sharing interface in an example embodiment;
FIG. 13 is a block diagram of a screen content sharing apparatus in one embodiment;
FIG. 14 is a schematic configuration diagram of a screen content sharing apparatus in another embodiment;
fig. 15 is a schematic configuration diagram of a screen content sharing apparatus in another embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the detailed description and specific examples, while indicating the scope of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terminology used in the description herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the term "or/and" includes any and all combinations of one or more of the associated listed items.
Fig. 1 shows a schematic diagram of an operating environment in an embodiment of the present invention, as shown in fig. 1, the operating environment relates to a terminal 101, a terminal 102, and a background server 103, and may also relate to a video data server 104. The terminal 101, the terminal 102 and the background server 103 can communicate through a network, and the terminal 101 and each terminal 102 can communicate with each other in an instant mode through the background server 103, and then a video session is carried out on the basis. In a video session, video data of the terminal 101 may be transmitted to each terminal 102 via the backend server 103, and video data of each terminal 102 may also be transmitted to the terminal 101 via the backend server 103. In some embodiments, at the time of a video session, video data of the terminal 101 may be transmitted to each terminal 102 via a video data server, and video data of each terminal 102 may also be transmitted to the terminal 102 via the video data server. Not through a background server but directly to the terminal 102 via the network. In the embodiment of the present invention, during the video session, screen content sharing, for example, screen content sharing of the terminal 101 to other terminals 102, may be performed simultaneously. When screen content is shared, the screen content data to be shared of the terminal 101 may be sent to each terminal 102 via the backend server 103, or may be sent to each terminal 102 via the data platform server 104. The embodiment of the invention relates to a processing scheme when the terminal 101 and the terminal 102 share screen contents.
A schematic diagram of the structure of the user terminals 101, 102 in one embodiment is shown in fig. 2. The user terminal comprises a processor, a nonvolatile storage medium, a communication interface, a power interface and a memory which are connected through a system bus. The processor of the user terminal is used for providing calculation and control capability and supporting the operation of the whole user terminal. A non-volatile storage medium of a user terminal stores an operating system and a computer application of a screen content sharing apparatus, which when executed by a processor implements a screen content sharing method. The memory of the user terminal provides an environment for the operation of the screen content sharing device in the non-volatile storage medium. The network interface of the user terminal is used for being connected and communicated with other terminals, the background server and the video data server through a network, the power interface of the user terminal is used for being connected with an external power supply, and the external power supply supplies power to the user terminal through the power interface. The user terminal may be any device capable of realizing intelligent input and output, for example, a mobile terminal, such as a mobile phone, a tablet computer, and the like; other devices having the above-described structure are also possible.
Fig. 3 is a schematic diagram illustrating a configuration of the server 103 according to an embodiment. As shown in fig. 3, the server includes a processor, a power supply module, a storage medium, a memory, and a communication interface connected through a system bus. The processor is used for providing calculation and control capacity and supporting the operation of the whole server. The storage medium of the server stores an operating system, a database, and a computer program of a screen content sharing apparatus that implements a screen content sharing method when executed by a processor. The memory in the server provides an environment for running the computer program in the storage medium, and the communication interface is used for network communication with each user terminal and the video data server. Those skilled in the art will appreciate that the structure shown in fig. 3 is a block diagram of only a portion of the structure associated with the embodiment, and does not constitute a limitation on the server to which the embodiment is applied, and a particular server may include more or less components than those shown, or some components may be combined, or have a different arrangement of components.
Fig. 4 is a flowchart illustrating a screen content sharing method in an embodiment, which is described by taking a process of the first user terminal 101 performing screen content sharing as an example.
As shown in fig. 4, the screen content sharing method in this embodiment includes:
step S401: when a screen content sharing instruction is received through a video session interface, sending a screen content sharing request to a background server, wherein the screen content sharing request comprises a first user identifier;
step S402: when a sharing confirmation message returned by the background server is received, switching to a content sharing interface, and setting a screen sharing video source of the content sharing interface;
step S403: sending a screen sharing notification message to the background server, and sending the screen sharing notification message to each second user terminal corresponding to each second user identifier by the background server, wherein the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
step S404: and acquiring the screen content data to be shared of the screen sharing video source, displaying the screen content data to be shared in a sharing content display sub-window of the content sharing interface, and sending the screen content data to be shared to each second user terminal.
According to the scheme of the embodiment, the terminal can receive the screen content sharing instruction through the video session interface and send the screen content sharing request to the background server, the terminal can switch to the content sharing interface after receiving the sharing confirmation message of the background server, set the screen sharing video source and notify other second user terminals for screen sharing through the background server, so that the content sharing between the current user terminal and other second user terminals in the video session process is realized, namely when the screen content sharing is required, the sharing of the screen content can be initiated directly based on the video session process, and based on the user terminals associated with the video session room identifier for video session, the sharing parties for screen content sharing can be determined without using a specific screen content sharing system, and special registration, connection and other processing are not required for sharing the screen content, so that the interactive performance and interactive performance of the shared content during information sharing are improved, and the convenience and quickness of screen content sharing are improved.
When the screen content sharing instruction is received through the video session interface, the screen content sharing instruction may be received in any possible manner, for example, a sharing button may be disposed on the video session interface, and the screen content sharing instruction is received through the sharing button on the video session interface.
The screen content sharing method of the embodiment can share any content displayed on the terminal screen, so that in practical technical application, a terminal user can select what content is to be shared. The specific selection may be performed in any possible manner, as long as the shared screen content can be determined before the screen content data to be shared is displayed and sent to the second user terminal in step S104.
In one example, the selection may be made before sending the screen content sharing request to the backend server upon receiving the screen content sharing instruction. At this time, after the screen content sharing instruction is received through the video session interface and before the screen content sharing request is sent to the background server, a selection instruction may be received, where the selection instruction includes a to-be-shared content identifier, and the to-be-shared content identifier is a window identifier or a desktop screen identifier. At this time, when the screen sharing video source of the content sharing interface is set, the acquired video data corresponding to the identifier of the content to be shared may be set as the screen sharing video source.
In another example, the sharing confirmation message returned by the background server may be received. At this time, when the screen sharing video source of the content sharing interface is set, the following method may be adopted:
receiving a selection instruction, wherein the selection instruction comprises a content identifier to be shared, and the content identifier to be shared is a window identifier or a desktop screen identifier;
and setting the collected video data corresponding to the content identification to be shared as the screen sharing video source.
In a specific example, process window information of all processes can be obtained by scanning all processes of the user terminal where the user terminal is located currently; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot; and receiving the window sharing selection instruction from a display interface which displays the progress window information and the desktop screenshot.
Further, when the content identifier to be shared is a window identifier, a first position coordinate of a cursor on a screen can be further captured; and converting the first position coordinate to obtain a second position coordinate of the cursor relative to a window area corresponding to the window identification. At this time, the screen content data to be shared further includes the second position coordinate. Therefore, the cursor of the user terminal can be shared to other user terminals while the screen content is shared.
Further, in an example, a screen sharing end request may also be sent to the background server when a screen sharing stop instruction is received. And when receiving an end confirmation message returned by the background server according to the screen sharing end request, switching to a video session interface, stopping collecting data of the video sharing video source, sending a sharing stop message to the background server, and sending the sharing stop message to each second user terminal by the background server.
In another example, the sharing confirmation message, the screen sharing notification message, may include address information of the video data server. At this time, when the screen content data to be shared is sent to each second user terminal, the screen content data to be shared may be sent to a video data server and then sent to each second user terminal through the video data server. On the other hand, after the screen content data to be shared is sent to the video data server, each second user terminal downloads the screen content data to be shared from the video data server every predetermined time period according to the address information of the video data server.
Correspondingly, a flow chart of a screen content sharing method in another embodiment is shown in fig. 5. In this embodiment, a process of the background server 103 is described as an example.
As shown in fig. 5, the screen content sharing method in this embodiment includes:
step S501: receiving a screen content sharing request sent by a first user terminal, wherein the screen content sharing request comprises a first user identifier of the first user terminal;
step S502: acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal;
step S503: receiving a screen sharing notification message sent by the first user terminal after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface;
step S504: and sending the screen sharing notification message to second user terminals which are associated with the video session room identification and correspond to second user identifications except the first user identification.
In an example, after obtaining the video session room identifier associated with the first user identifier, the background server may set the state of the video session room corresponding to the video session room identifier as a locked state, and then return a sharing confirmation message to the first user terminal. Thereby avoiding the problem of conflict generated by other user terminals also initiating screen content sharing requests.
In another example, the sharing confirmation message and the screen sharing notification message may include address information of the video data server. Therefore, in the subsequent screen content sharing process, the first user terminal can send the screen content data to be shared to each second user terminal through the video data server.
In another example, a screen sharing end request sent by the first user terminal may also be received, wherein the screen sharing end request includes the first user identifier; and returning an end confirmation message to the first user terminal; and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and sending the sharing stopping message to each second user terminal. When the state of the video session room corresponding to the video session room identifier has been set to the locked state, after receiving the sharing stop message sent by the first user terminal, the state of the video session room corresponding to the video session room identifier may also be set to the unlocked state.
Fig. 6 is a flowchart illustrating a screen content sharing method in another embodiment, which is described by taking a processing procedure of a shared terminal (e.g., the second user terminal shown in fig. 1) as an example.
As shown in fig. 6, the screen content sharing method in this embodiment includes:
step S601: receiving a screen sharing notification message sent by a background server, wherein the screen sharing notification message comprises a first user identifier;
step S602: switching from a video session interface to a content sharing interface according to the screen sharing notification message;
step S603: and receiving screen content data to be shared sent by a first user terminal corresponding to the first user identifier, and displaying the screen content data to be shared on a shared content display sub-window of the content sharing interface.
In a specific example, the screen content data to be shared may further include: and the cursor is corresponding to the second position coordinate of the window area in the screen content data to be shared. At this time, when the screen content data to be shared is displayed in the shared content display sub-window of the content sharing interface, the cursor may be displayed at the second position coordinate in the shared content display sub-window at the same time.
In another embodiment, the screen sharing notification message may further include address information of the video data server. Accordingly, in one particular example, the second user terminal may receive the screen content data to be shared from the video data server. In another specific example, the second user terminal may download the screen content data to be shared from the video data server every predetermined time period according to the address information of the video data server.
Based on the embodiments described above, fig. 7 shows an interaction flow diagram in screen content sharing in a specific application example. This example illustrates an interaction flow between devices that perform screen content sharing simultaneously during a specific video session.
In the illustration of fig. 7, it is assumed that the video session request is initiated by the first user terminal. It should be understood that the video session request may also be initiated by another user terminal, and in the embodiment of the present invention, the terminal initiating the video session request and the terminal initiating the screen content sharing request need not be limited to the same user terminal.
With reference to fig. 7, in an actual technical application, when a video call instruction sent by a terminal user by clicking a relevant button such as "video session", "video chat", or the like needs to be received, a first user terminal sends a video call request to a background server, where the video call request carries a first user identifier of the first user terminal. Meanwhile, the video call request may also carry a second user identifier of each second user terminal to be video-called, or a group identifier of a group or discussion group in which the first user identifier is located.
And after receiving the video call request, the background server sends the video call request to a second user terminal corresponding to a second user identifier when the video call request carries the second user identifier. And when the video call request carries the group identifier, acquiring other second user identifiers except the first user identifier in the user identifiers associated with the group identifier, and sending the video call request to second user terminals corresponding to the second user identifiers. It is understood that only one second user terminal is shown in fig. 7 for simplicity of illustration, in practical technical applications, the number of the second user terminals may also include a plurality of second user terminals, and the processing procedure of the plurality of second user terminals may be the same as the processing procedure of the second user terminal described in fig. 7.
And after receiving the video call request sent by the background server, the second user terminal determines whether the video call is needed or not based on the selection of the terminal user. And if the video call is needed, returning video call confirmation information to the background server.
And after receiving the video call confirmation information returned by the second user terminal, the background server creates a video session room for the video call to obtain a video session room identifier. It can be understood that when the group identifier is carried in the video call request, a video session room can be created as long as one second user terminal returns video call confirmation information, and it is not necessary to wait for all second user terminals to return video call confirmation information. In addition, when the video call request carries the group identifier, the group identifier may be directly used as the video session room identifier, or the video session room identifier may be created again. And if the video call request carries the second user identifier, a video session room identifier needs to be allocated to the video session associated with the first user identifier and the second user identifier.
The distributed video session room identifier may be returned to the first user terminal and each of the second user terminals, and the first user terminal and each of the second user terminals perform a video session based on the common video session room identifier. And video image data obtained by the first user terminal through shooting by the camera is directly transmitted to each second user terminal through the background server or the third-party data server. On the other hand, video image data obtained by shooting through a camera by any one second user terminal associated with the video session room identifier is directly transmitted to the first user terminal and other second user terminals through the background server or the third-party data server. The video session interface in one example of an application is shown in fig. 11.
In the process of video conversation, the process of screen content sharing can be initiated, so that rich desktop sharing is performed. Taking the example of initiating the sharing by the first user terminal, the user of the first user terminal may send a screen content sharing instruction by clicking a button initiating the screen content sharing, such as "share", and the like on the video session interface, and it can be understood that the button initiating the screen content sharing may also be displayed by a related symbol mark, for example, the first button on the left side of the bottom shown in fig. 11. Therefore, the terminal user can initiate the sharing of the screen content based on the video session process, and special use of a special screen content sharing system and special registration, connection and other processes for sharing the screen content are not needed.
With reference to the schematic processing frame of the terminal when performing screen sharing shown in fig. 8 and the schematic flow diagram of the terminal when initiating screen sharing shown in fig. 9, in the present embodiment, after receiving the screen content sharing instruction through the WEWTalkShareManager of session sharing management, the terminal user can select what content is to be shared through the ScreenWndInfoGrabManager of the related module of sharing content management. For example, the ScreenWndInfoGrabManager may scan all processes of the system of the current ue and obtain information of all processes, including process window information. And acquiring a desktop screenshot, which may be a windows desktop screenshot by taking a windows system as an example. And then displaying the obtained process window information and the desktop screenshot, and displaying the process window information and the desktop screenshot to a terminal user for selection. When displaying, the information of each process window and the screenshot of the desktop may be displayed in a thumbnail mode for the terminal user to select, or may be selected by the terminal user in other modes such as a list and the like. The terminal user can select the content to be shared by clicking the thumbnail, the options in the list or other modes, and sends a window sharing selection instruction, wherein the window sharing selection instruction comprises the content identification to be shared, and the content identification to be shared can be marked as the windowInfo. The identifier of the content to be shared may be a window identifier or a desktop screen identifier, where the window identifier refers to an identifier of a window corresponding to a certain process in this example. Therefore, when screen content is shared, the shared screen content can be not the whole screen of the desktop of the first user terminal, but is related to the current running process of the first user terminal and is a window corresponding to a specific process, so that files to be shared do not need to be uploaded specially for the sharing of the screen content, the sharing of the screen content is simpler, the sharing of any screen content can be realized, and the diversity of the shared screen content is realized.
After a window sharing selection instruction is received and it is determined that a certain window or the whole computer screen needs to be shared, in order to avoid that a plurality of users initiate sharing at the same time, a first user terminal sends a screen content sharing request to a background server. The screen content sharing request includes a first user identifier of the first user terminal.
After receiving the screen content sharing request, the background server returns a sharing confirmation message which can be shared to the first user terminal if no other terminal identifier associated with the video session room identifier is currently shared and the call is normal. Before or while sending the sharing confirmation message, setting the state of the video session room corresponding to the current video session room identifier as a locking state, namely locking the video session room to meet the requirement that the screen content of only one terminal is shared at the same time.
On the other hand, when determining that the first user terminal can share, the background server may further determine address information of a video data server for sharing the screen content by the first user terminal, where the address information of the video data server may be associated with the video session room identifier and may be carried in a sharing confirmation message and returned to the first user terminal.
After receiving the sharing confirmation message sent by the background server, the first user terminal switches the display interface from the video session interface to the content sharing interface, where the content sharing interface in one example is shown in fig. 12.
Meanwhile, a screen sharing video source of the content sharing interface is set, the screen sharing video source is switched to video data of a sharing window or a sharing desktop, for example, a to-be-shared content identifier windowInfo obtained through a window sharing selection instruction can be sent to a screen data capturing engine ScreenCaptureEngine and a window data engine WindowCaptureEngine to determine whether screen sharing or window sharing is performed, and then the selected desktop screen or window data can be captured and collected through the screen data capturing engine ScreenCaptureEngine or the window data engine WindowCaptureEngine.
In an embodiment, after the content sharing interface is switched to, the display of each video window of the video session interface may be directly closed or cancelled, and the camera of the control terminal no longer captures the camera data. In other embodiments, when screen content sharing is performed through the content sharing interface, data of each camera can be displayed simultaneously, and simultaneous interactive sharing of the screen content and the content captured by the cameras is achieved. In this case, in a specific application example, after switching to the content sharing interface, each video window of the video session interface may be reduced and displayed at a specified position of the content sharing interface, where the specified position may be set according to actual application needs, for example, the specified position is displayed in a row at a boundary of the content sharing interface shown in fig. 12. In another specific application example, each video window of the video session interface can be reduced and then displayed in a floating manner at a specified position of the content sharing interface, so that the display position of each video window can be freely adjusted by an end user based on the display requirement. In another specific application example, each video window of the video session interface can be further reduced and then hidden at the edge of the desktop of the current user terminal. In other specific application examples, each video window of the video session interface may be reduced and displayed in other manners. Therefore, the screen content sharing is realized, the video conversation can be carried out, and the interaction performance and the diversity of information sharing are improved.
On the other hand, the first user terminal sends a screen sharing notification message to the background server to inform the background server that the first user terminal is ready for sharing, so as to inform other members of entering a sharing state. The screen sharing notification message carries the first user identifier. In some embodiments, the screen sharing notification message may further carry address information of the video data server.
After receiving the screen sharing notification message, if the screen sharing notification message carries address information of the video data server, the background server may directly send the screen sharing notification message to each second user terminal associated with each second user identifier after finding the video session room identifier associated with the first user identifier and each second user identifier associated with the video session room identifier and other than the first user identifier. On the other hand, if the screen sharing notification message does not carry the address information of the video data server, after the video session room identifier associated with the first user identifier is found, the address information of the video data server associated with the video session room identifier and the second user identifiers except the first user identifier are found, the address information of the video data server is added to the screen sharing notification message and then is sent to the second user terminals associated with the second user identifiers, so as to notify other members in the video session to enter the sharing state.
After receiving the screen sharing notification message, each second user terminal may display the screen sharing notification message, and a terminal user of each second user terminal may determine whether sharing is required based on the displayed screen sharing notification message. And if the terminal user confirms to enter the sharing or does not send an instruction of not entering the sharing, the terminal user enters the sharing state, and if the current video session is not closed normally, the terminal user enters the shared state, switches the video session interface to the content sharing interface and prepares to receive the screen content data to be shared sent by the sharer. The content sharing interface of the shared second user terminal and the content sharing interface of the sharing first user terminal may be the same or have different designs.
After the first user terminal sends the screen sharing notification message to the background server, the first user terminal may capture and collect the selected desktop screen or window data through a screen data capture engine ScreenCaptureEngine or a window data engine WindowCaptureEngine, respectively. Taking sharing of the whole desktop screen as an example, the content of the desktop screen can be captured through the ScreenCaptureEngine, captured data is obtained and sent to the video processing engine wewtalkmanager for processing, and meanwhile, the upper-layer interactive interface can be notified to be refreshed, so that the shared content display sub-window of the content sharing interface of the first user terminal is displayed. Taking sharing of the content of the window as an example, the data of the window to be shared can be captured through the window data engine WindowCaptureEngine, the captured data is obtained and sent to the video processing engine wewtalkmaker for processing, and meanwhile, the upper layer interactive interface can be notified to be refreshed, so that the shared content display sub-window of the content sharing interface of the first user terminal is displayed. In addition, the captured data, namely the screen content to be shared, can be transmitted to each second user terminal through the data platform server, so that data transmission of the screen content to be shared is realized.
In this regard, it is considered that some application systems (such as the Mac system) only provide a screen data collection interface for the whole desktop (or a mobile phone linked to a computer) and there is no direct system interface for the window of the related program to collect data. Therefore, the screen data acquisition interface in the system can be directly called for data acquisition aiming at the sharing of the desktop screen. And for the sharing of the window content, the data acquisition of the window content can be carried out through different mechanisms. For example, after capturing the whole desktop screen data, coordinate conversion is performed on the data to obtain window data of a corresponding window. In a specific example of the present invention, when the content identifier to be shared is a window identifier, a screenshot may be obtained by capturing a window area corresponding to the window identifier according to a predetermined frequency, so as to obtain the screen content data to be shared. Because the frame rate that human eyes can distinguish is basically about 24 frames, the frequency of 24 frames per second can be adopted for window screenshot collection.
Because the format and the size of the screenshot are not beneficial to network transmission, the screenshot of the window obtained by screenshot can be converted into the content data of the screen to be shared in the video frame format which is beneficial to network transmission after the data format and the data quality are converted, and then the content data is sent to the network. The conversion of the specific data format and data quality can be performed in any possible manner as long as the conversion is convenient for the transmission of the network video frame. Taking the MAC platform adopted by the first user terminal as an example, the CGImageRef obtained by sampling may be converted into a uniform CVPixBuffer, and then normal video encoding is performed, followed by network transmission, and the network transmission is sent to each second user terminal through the video data server.
On the other hand, when the content identifier to be shared is a window identifier, a cursor movement event in the whole process can be further monitored, and a first position coordinate of a cursor on a screen is captured; and converting the first position coordinate relative to a window corresponding to the window identifier, projecting the position of the cursor onto the window to be shared, and obtaining a second position coordinate of the cursor relative to a window area corresponding to the window identifier. And carrying the second position coordinate on the screen content data to be shared. Therefore, when the second user terminals acquire the video data source needing to be shared, the second user terminals can also acquire the second position information of the cursor, draw and display the cursor on the video source of the screenshot, and can dynamically see the movement of the cursor on the screen sharing content, so that other shared audiences can also simultaneously view the currently positioned position of the sharer when watching the screen content needing to be shared.
After the first user terminal sends the screen content data to be shared to the video data server, the video data server can actively send the screen content data to be shared to each second user terminal, and the second user terminal can also download the screen content data to be shared from the video data server at intervals of a preset time period according to the address information of the video data server.
In one embodiment of the invention, only the initiator may end the sharing process. As shown in fig. 10, when the sharing needs to be ended, the user of the first user terminal may send a screen sharing stop instruction by clicking a similar button such as "end sharing" on the content sharing interface, and after receiving the screen sharing stop instruction, the present embodiment sends a screen sharing end request to the backend server, and if the backend server determines that the sharing can be ended, returns an end confirmation message to the first user terminal. And after receiving the ending confirmation message, the first user terminal switches back to a video session interface, stops acquiring data of a window or a desktop by sending an acquisition stopping instruction and the like to a video acquisition engine for acquiring the screen sharing video source, and controls the camera to start to acquire video data normally under the condition that the camera stops acquiring the video data during content sharing, and then recovers to the video session process. In addition, the first user terminal also sends a sharing stopping message to the background server, and the sharing stopping message carries the first user identifier. After receiving the sharing stop message, the background server searches the video session room identifier associated with the first user identifier and each second user identifier associated with the video session room identifier and except the first user identifier, and sends the sharing stop message to each second user terminal corresponding to each second user identifier to notify other members. And after receiving the sharing stopping message, the second user terminal switches back to the video session interface and enters the video session process. Therefore, after the screen content sharing process is finished, the video session interface can be switched back, so that the video session and the screen content sharing can be switched at will, and the method is convenient and fast.
Based on the same idea as the method of each of the above-described embodiments, fig. 13 shows a schematic configuration diagram of a screen content sharing apparatus in an embodiment, which is provided on the first user terminal 101 shown in fig. 1.
As shown in fig. 13, the screen content sharing apparatus in this embodiment includes:
the sharing request module 131 is configured to send a screen content sharing request to a backend server when receiving a screen content sharing instruction through a video session interface, where the screen content sharing request includes a first user identifier;
the first interface switching module 132 is configured to switch to a content sharing interface when receiving a sharing confirmation message returned by the background server, and set a screen sharing video source of the content sharing interface;
a first sharing notification module 133, configured to send a screen sharing notification message to the backend server, where the backend server sends the screen sharing notification message to each second user terminal corresponding to each second user identifier, and the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
the content sharing module 134 is configured to acquire to-be-shared screen content data of the screen sharing video source, display the to-be-shared screen content data in a sharing content display sub-window of the content sharing interface, and send the to-be-shared screen content data to each second user terminal.
According to the scheme of the embodiment, the terminal can receive the screen content sharing instruction through the video session interface and send the screen content sharing request to the background server, the terminal can switch to the content sharing interface after receiving the sharing confirmation message of the background server, set the screen sharing video source and notify other second user terminals for screen sharing through the background server, so that the content sharing between the current user terminal and other second user terminals in the video session process is realized, namely when the screen content sharing is required, the sharing of the screen content can be initiated directly based on the video session process, and based on the user terminals associated with the video session room identifier for video session, the sharing parties for screen content sharing can be determined without using a specific screen content sharing system, and special registration, connection and other processing are not required for sharing the screen content, so that the interactive performance and interactive performance of the shared content during information sharing are improved, and the convenience and quickness of screen content sharing are improved.
When receiving the screen content sharing instruction through the video session interface, the sharing request module 131 may adopt any possible manner, for example, a sharing button may be disposed on the video session interface, and the sharing request module 131 may receive the screen content sharing instruction through the sharing button on the video session interface.
The screen content sharing device of the embodiment can share any content displayed on the terminal screen, so in practical technical application, a terminal user can select what content is to be shared. The specific selection may be performed in any possible manner, as long as the content sharing module 134 can determine the shared screen content before displaying and sending the screen content data to be shared to the second user terminal.
Accordingly, as shown in fig. 13, the screen content sharing apparatus of the present embodiment may further include a shared content selecting module 135.
The sharing content selecting module 135 is configured to receive a selection instruction, where the selection instruction includes a to-be-shared content identifier, and the to-be-shared content identifier is a window identifier or a desktop screen identifier.
At this time, the first interface switching module 132 sets the collected video data corresponding to the identifier of the content to be shared as the screen sharing video source.
In an embodiment, after the first interface switching module 132 switches to the content sharing interface, the display of each video window of the video session interface may be directly closed or cancelled, and the camera of the control terminal no longer captures the camera data. In other embodiments, when screen content sharing is performed through the content sharing interface, data of each camera can be displayed simultaneously, and simultaneous interactive sharing of the screen content and the content captured by the cameras is achieved. In this case, in a specific application example, after switching to the content sharing interface, the first interface switching module 132 may reduce each video window of the video session interface and display the reduced video window at a specified position of the content sharing interface, where the specified position may be set according to actual application needs, for example, the specified position is arranged and displayed at a boundary of the content sharing interface shown in fig. 12. In another specific application example, the first interface switching module 132 may reduce each video window of the video session interface and then float and display the reduced video window at a designated position of the content sharing interface, so that the end user can freely adjust the display position of each video window based on the display requirement. In another specific application example, the first interface switching module 132 may hide each video window of the video session interface from the edge of the desktop of the current user terminal. In other specific application examples, the first interface switching module 132 may also narrow down each video window of the video session interface and display the video window in other manners.
In a specific example, the shared content selection module 135 may scan all processes of the current ue, and obtain process window information of all processes; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot; and receiving the window sharing selection instruction from a display interface which displays the progress window information and the desktop screenshot.
In this case, further, when the content identifier to be shared is a window identifier, the content sharing module 134 captures a window area corresponding to the window identifier according to a predetermined frequency to obtain a window screenshot, so as to obtain the content data of the screen to be shared.
Further, the content sharing module 134 may further capture a first position coordinate of a cursor on the screen when the content identifier to be shared is a window identifier; converting the first position coordinate to obtain a second position coordinate of the cursor relative to a window area corresponding to the window identification; the screen content data to be shared comprises the second position coordinate. Therefore, the cursor of the user terminal can be shared to other user terminals while the screen content is shared.
Further, in a specific example, the sharing confirmation message and the screen sharing notification message may further include address information of the video data server.
In this case, after the content sharing module 134 sends the screen content data to be shared to the video data server, the screen content data may be sent to each second user terminal through the video data server. On the other hand, after the content sharing module 134 sends the screen content data to be shared to the video data server, each second user terminal downloads the screen content data to be shared from the video data server at intervals of a predetermined time period according to the address information of the video data server.
On the other hand, the content sharing module 134 may further convert the data format and the data quality of the screen content data to be shared, and send the converted screen content data to the video data server, and send the converted screen content data to each second user terminal through the video data server. To meet the format and quality requirements of network video transmission.
In one embodiment, as shown in fig. 13, the screen content sharing apparatus in this embodiment may further include:
the sharing ending processing module 136 is configured to send a screen sharing ending request to the background server when receiving a screen sharing stopping instruction; and when receiving an end confirmation message returned by the background server according to the screen sharing end request, switching to a video session interface, stopping collecting data of the video sharing video source, sending a sharing stop message to the background server, and sending the sharing stop message to each second user terminal by the background server.
Further, in a specific technical application, the sharing ending processing module 136 may stop acquiring data of the video sharing video source by sending an acquisition stopping instruction to the video acquisition engine that acquires the screen sharing video source.
Fig. 14 shows a schematic configuration diagram of a screen content sharing apparatus in another embodiment, which is provided on the first user terminal 102 shown in fig. 1.
As shown in fig. 14, the screen content sharing apparatus in this embodiment includes:
the second interface switching module 141 is configured to receive a screen sharing notification message sent by the backend server, where the screen sharing notification message includes a first user identifier; switching from a video session interface to a content sharing interface according to the screen sharing notification message;
and the sharing terminal display module 142 is configured to receive the to-be-shared screen content data sent by the first user terminal corresponding to the first user identifier, and display the to-be-shared screen content data in a sharing content display sub-window of the content sharing interface.
In a specific example, the screen content data to be shared may further include: and the cursor is corresponding to the second position coordinate of the window area in the screen content data to be shared. At this time, when the shared terminal display module 142 displays the screen content data to be shared in the shared content display sub-window of the content sharing interface, the shared terminal display module may simultaneously display a cursor at the second position coordinate in the shared content display sub-window.
In another embodiment, the screen sharing notification message may further include address information of the video data server. Accordingly, in a specific example, the sharing terminal display module 142 may directly receive the to-be-shared screen content data sent by the video data server. In another specific example, the sharing terminal display module 142 may download the to-be-shared screen content data from the video data server at intervals of a predetermined time period according to the address information of the video data server.
The sharing content selecting module 135 is configured to receive a selection instruction, where the selection instruction includes a to-be-shared content identifier, and the to-be-shared content identifier is a window identifier or a desktop screen identifier.
At this time, the first interface switching module 132 sets the collected video data corresponding to the identifier of the content to be shared as the screen sharing video source.
In an embodiment, after the second interface switching module 141 switches to the content sharing interface, the display of each video window of the video session interface may be directly closed or cancelled, and the camera of the control terminal no longer captures the camera data. In other embodiments, when screen content sharing is performed through the content sharing interface, data of each camera can be displayed simultaneously, and simultaneous interactive sharing of the screen content and the content captured by the cameras is achieved. In this case, in a specific application example, after switching to the content sharing interface, the second interface switching module 141 may reduce each video window of the video session interface and display the reduced video window at a specified position of the content sharing interface, where the specified position may be set according to actual application needs, for example, the specified position is displayed in a row at a boundary of the content sharing interface shown in fig. 12. In another specific application example, the second interface switching module 141 may reduce each video window of the video session interface and then float and display the reduced video window at a designated position of the content sharing interface, so that the end user can freely adjust the display position of each video window based on the display requirement. In another specific application example, the second interface switching module 141 may hide each video window of the video session interface from the edge of the desktop of the current user terminal after zooming out. In other specific application examples, the second interface switching module 141 may further reduce each video window of the video session interface and display the video window in other manners.
It can be understood that the screen content sharing device shown in fig. 13 and shown in fig. 14 may exist as a common screen content sharing device, that is, the screen content sharing device in an embodiment may include both the screen content sharing device in the example of fig. 13 and the screen content sharing device in the example of fig. 14, so that the screen content sharing device may serve as a sharing end and also serve as a shared end in practical technical applications. Here, when the screen content sharing device includes both the screen content sharing device in the example of fig. 13 and the screen content sharing device in the example of fig. 14, the first interface switching module 132 and the second interface switching module 141 may be integrated into one module.
Fig. 15 is a schematic structural diagram of a screen content sharing apparatus in another embodiment, which is described by taking the screen content sharing apparatus as an example and being disposed on the background server 103 shown in fig. 1.
As shown in fig. 15, the screen content sharing apparatus in this embodiment includes:
a sharing request responding module 151, configured to receive a screen content sharing request sent by a first user terminal, where the screen content sharing request includes a first user identifier of the first user terminal; acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal;
a second sharing notification module 152, configured to receive a screen sharing notification message sent by the first user terminal after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface, and send the screen sharing notification message to each second user terminal that is associated with the video session room identifier and corresponds to each second user identifier except the first user identifier.
In an example, after obtaining the video session room identifier associated with the first user identifier, the sharing request responding module 151 may set the state of the video session room corresponding to the video session room identifier as a locked state, and then return a sharing confirmation message to the first user terminal. Thereby avoiding the problem of conflict generated by other user terminals also initiating screen content sharing requests.
In another example, the sharing confirmation message and the screen sharing notification message may include address information of the video data server. Therefore, in the subsequent screen content sharing process, the first user terminal can send the screen content data to be shared to each second user terminal through the video data server.
In another example, as shown in fig. 15, the screen content sharing apparatus in this embodiment may further include an end request processing module 153, configured to receive a screen sharing end request sent by the first user terminal, where the screen sharing end request includes the first user identifier; returning a finish confirmation message to the first user terminal; and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and sending the sharing stopping message to each second user terminal. When the state of the video session room corresponding to the video session room identifier has been set to the locked state, after receiving the sharing stop message sent by the first user terminal, the state of the video session room corresponding to the video session room identifier may also be set to the unlocked state.
Based on the examples described above, there is also provided in one embodiment a computer device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor, when executing the program, implements any one of the screen content sharing methods described in the embodiments above.
It will be understood by those skilled in the art that all or part of the processes in the methods of the embodiments described above may be implemented by a computer program, which is stored in a non-volatile computer readable storage medium, and in the embodiments of the present invention, the program may be stored in the storage medium of a computer system and executed by at least one processor in the computer system to implement the processes of the embodiments including the methods described above. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
Accordingly, in an embodiment, a storage medium is further provided, on which a computer program is stored, wherein the program is executed by a processor to implement any one of the screen content sharing methods in the above embodiments.
The technical features of the embodiments described above may be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the embodiments described above are not described, but should be considered as being within the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (22)

1. A screen content sharing method, comprising the steps of:
when a screen content sharing instruction is received through a video session interface, sending a screen content sharing request to a background server, wherein the screen content sharing request comprises a first user identifier;
receiving a sharing confirmation message returned by the background server when no other terminal identification associated with the video session room identification is shared currently;
scanning all processes of a user terminal where the user terminal is located at present, and acquiring process window information of all the processes; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot in a thumbnail mode for a terminal user to select;
receiving a window sharing selection instruction from a display interface which displays process window information and a desktop screenshot, wherein the window sharing selection instruction comprises a content identifier to be shared, the content identifier to be shared is a window identifier or a desktop screen identifier, and the window identifier refers to an identifier of a window corresponding to a certain process;
switching to a content sharing interface, and setting the collected video data corresponding to the to-be-shared content identification as a screen sharing video source of the content sharing interface; after the content sharing interface is switched, closing or canceling the display of each video window of the video session interface, and controlling a camera of the current user terminal not to capture camera data any more, or displaying each video window of the video session interface at an appointed position of the content sharing interface after reducing, or displaying each video window of the video session interface at an appointed position of the content sharing interface in a floating manner after reducing, or hiding each video window of the video session interface at the edge of a desktop of the current user terminal after reducing;
sending a screen sharing notification message to the background server, and sending the screen sharing notification message to each second user terminal corresponding to each second user identifier by the background server, wherein the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
acquiring to-be-shared screen content data of the screen sharing video source, wherein if the to-be-shared content identifier is a desktop screen identifier, the to-be-shared screen content data is a captured and collected desktop screen, and if the to-be-shared content identifier is a window identifier, the to-be-shared screen content data is window data corresponding to the captured and collected window identifier; and displaying the screen content data to be shared in a shared content display sub-window of the content sharing interface, and sending the screen content data to be shared to each second user terminal.
2. The screen content sharing method of claim 1, further comprising:
when the content identification to be shared is a window identification, capturing a first position coordinate of a cursor on a screen;
converting the first position coordinate to obtain a second position coordinate of the cursor relative to a window area corresponding to the window identification;
the screen content data to be shared comprises the second position coordinate.
3. The screen content sharing method of claim 1, further comprising the steps of:
when a screen sharing stop instruction is received, sending a screen sharing end request to the background server;
and when receiving an end confirmation message returned by the background server according to the screen sharing end request, switching to a video session interface, stopping collecting data of the video sharing video source, sending a sharing stop message to the background server, and sending the sharing stop message to each second user terminal by the background server.
4. The screen content sharing method according to claim 1, wherein the sharing confirmation message, the screen sharing notification message include address information of a video data server;
the mode of sending the screen content data to be shared to each second user terminal includes: and after the screen content data to be shared is sent to a video data server, the screen content data to be shared is sent to each second user terminal through the video data server.
5. The screen content sharing method according to claim 1, wherein the sharing confirmation message, the screen sharing notification message include address information of a video data server;
the mode of sending the screen content data to be shared to each second user terminal includes: and after the screen content data to be shared are sent to a video data server, downloading the screen content data to be shared from the video data server by each second user terminal every other predetermined time period according to the address information of the video data server.
6. A method for screen content sharing, comprising:
receiving a screen content sharing request sent by a first user terminal, wherein the screen content sharing request comprises a first user identifier of the first user terminal;
acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal when no other terminal identifier associated with the video session room identifier is currently shared;
receiving a screen sharing notification message sent by the first user terminal after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface; the first user terminal scans all processes of the current user terminal to obtain process window information of all processes; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot in a thumbnail mode for a terminal user to select; switching to a content sharing interface after receiving a window sharing selection instruction from a display interface displaying process window information and a desktop screenshot, wherein the window sharing selection instruction comprises a content identifier to be shared, the content identifier to be shared can be a window identifier or a desktop screen identifier, the window identifier refers to an identifier of a window corresponding to a certain process, and collected video data corresponding to the content identifier to be shared is set as a screen sharing video source of the content sharing interface; after the first user terminal is switched to a content sharing interface, closing or canceling display of each video window of the video session interface, and controlling a camera of the current user terminal not to capture camera data any more, or displaying each video window of the video session interface at an appointed position of the content sharing interface after reducing, or displaying each video window of the video session interface at an appointed position of the content sharing interface in a floating manner after reducing, or hiding each video window of the video session interface at an edge of a desktop of the current user terminal after reducing;
sending the screen sharing notification message to second user terminals which are associated with the video session room identifier and correspond to second user identifiers except the first user identifier;
receiving screen content data to be shared of the screen sharing video source sent by the first user terminal, wherein if the content identifier to be shared is a desktop screen identifier, the screen content data to be shared is a captured and collected desktop screen, and if the content identifier to be shared is a window identifier, the screen content data to be shared is window data corresponding to the captured and collected window identifier; and sending the screen content data to be shared to each second user terminal.
7. The screen content sharing method according to claim 6, further comprising, after acquiring the video session room identifier associated with the first user identifier, before returning a sharing confirmation message to the first user terminal, the steps of:
and setting the state of the video session room corresponding to the video session room identifier as a locking state.
8. The screen content sharing method according to claim 6, wherein the sharing confirmation message and the screen sharing notification message include address information of a video data server.
9. The screen content sharing method according to claim 6, wherein the method further comprises the steps of:
receiving a screen sharing end request sent by the first user terminal, wherein the screen sharing end request comprises the first user identification;
returning a finish confirmation message to the first user terminal;
and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and sending the sharing stopping message to each second user terminal.
10. The screen content sharing method according to claim 6, wherein the method further comprises the steps of:
receiving a screen sharing end request sent by the first user terminal, wherein the screen sharing end request comprises the first user identification;
returning a finish confirmation message to the first user terminal;
and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and setting the state of the video session room corresponding to the video session room identifier as a non-locking state.
11. A screen content sharing apparatus, comprising:
the sharing request module is used for sending a screen content sharing request to a background server when a screen content sharing instruction is received through a video session interface, wherein the screen content sharing request comprises a first user identifier;
the first interface switching module is used for switching to a content sharing interface when receiving a sharing confirmation message returned by the background server when no other terminal identifier associated with the video session room identifier is currently shared, and setting the collected video data corresponding to the to-be-shared content identifier as a screen sharing video source of the content sharing interface; after the content sharing interface is switched, closing or canceling the display of each video window of the video session interface, and controlling a camera of the current user terminal not to capture the camera data any more, or displaying each video window of the video session interface at the specified position of the content sharing interface after reducing, or displaying each video window of the video session interface in a floating manner at the specified position of the content sharing interface after reducing, or hiding each video window of the video session interface at the edge of a desktop of the current user terminal after reducing;
the first sharing notification module is configured to send a screen sharing notification message to the background server, and the background server sends the screen sharing notification message to each second user terminal corresponding to each second user identifier, where the first user identifier is associated with each second user identifier and a video session room identifier corresponding to the video session interface;
the content sharing module is used for acquiring to-be-shared screen content data of the screen sharing video source, if the to-be-shared content identifier is a desktop screen identifier, the to-be-shared screen content data is a captured and collected desktop screen, and if the to-be-shared content identifier is a window identifier, the to-be-shared screen content data is window data corresponding to the captured and collected window identifier; displaying the screen content data to be shared on a shared content display sub-window of the content sharing interface, and sending the screen content data to be shared to each second user terminal;
the sharing content selection module is used for scanning all processes of the current user terminal and acquiring process window information of all the processes; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot; and receiving a window sharing selection instruction from a display interface which displays process window information and a desktop screenshot, wherein the window sharing selection instruction comprises a content identifier to be shared, the content identifier to be shared can be a window identifier or a desktop screen identifier, and the window identifier refers to an identifier of a window corresponding to a certain process.
12. The screen content sharing apparatus according to claim 11, wherein the apparatus further comprises:
the sharing ending processing module is used for sending a screen sharing ending request to the background server when receiving a screen sharing stopping instruction; and when receiving an end confirmation message returned by the background server according to the screen sharing end request, switching to a video session interface, stopping collecting data of the video sharing video source, sending a sharing stop message to the background server, and sending the sharing stop message to each second user terminal by the background server.
13. The screen content sharing apparatus according to claim 11, wherein the sharing confirmation message, the screen sharing notification message include address information of a video data server;
and the content sharing module sends the screen content data to be shared to a video data server and then sends the screen content data to be shared to each second user terminal through the video data server.
14. The screen content sharing apparatus according to claim 11, wherein the sharing confirmation message, the screen sharing notification message include address information of a video data server;
and after the content sharing module sends the screen content data to be shared to a video data server, each second user terminal downloads the screen content data to be shared from the video data server at intervals of a preset time period according to the address information of the video data server.
15. The screen content sharing apparatus according to claim 11, wherein:
the content sharing module is also used for capturing a first position coordinate of a cursor on a screen when the content identifier to be shared is a window identifier; converting the first position coordinate to obtain a second position coordinate of the cursor relative to a window area corresponding to the window identification; the screen content data to be shared comprises the second position coordinate.
16. A screen content sharing apparatus, comprising:
the system comprises a sharing request response module, a sharing request sending module and a sharing module, wherein the sharing request response module is used for receiving a screen content sharing request sent by a first user terminal, and the screen content sharing request comprises a first user identifier of the first user terminal; acquiring a video session room identifier associated with the first user identifier, and returning a sharing confirmation message to the first user terminal when no other terminal identifier associated with the video session room identifier is currently shared;
the second sharing notification module is configured to receive a screen sharing notification message sent by the first user terminal after the first user terminal switches the video session interface to the content sharing interface according to the sharing confirmation message and sets a screen sharing video source of the content sharing interface, and send the screen sharing notification message to each second user terminal which is associated with the video session room identifier and corresponds to each second user identifier except the first user identifier, where the first user terminal scans all processes of the current user terminal, and obtains process window information of all the processes; acquiring a desktop screenshot; displaying the obtained process window information and the desktop screenshot in a thumbnail mode for a terminal user to select; receiving a window sharing selection instruction from a display interface displaying process window information and a desktop screenshot, switching to the content sharing interface, where the window sharing selection instruction includes a to-be-shared content identifier, where the to-be-shared content identifier may be a window identifier or a desktop screen identifier, the window identifier refers to an identifier of a window corresponding to a certain process, and setting collected video data corresponding to the to-be-shared content identifier as a screen sharing video source of the content sharing interface, where after the first user terminal switches to the content sharing interface, the first user terminal closes or cancels display of each video window of the video session interface, controls a camera of the current user terminal not to capture video data any more, or displays each video window of the video session interface at an assigned position of the content sharing interface after being reduced, or, after reducing each video window of the video session interface, displaying the video window in a floating manner at the specified position of the content sharing interface, or, after reducing each video window of the video session interface, hiding the video window at the edge of a desktop of the current user terminal;
the screen content sharing device further receives to-be-shared screen content data of the screen sharing video source sent by the first user terminal, wherein if the to-be-shared content identification is a desktop screen identification, the to-be-shared screen content data is a captured and collected desktop screen, and if the to-be-shared content identification is a window identification, the to-be-shared screen content data is window data corresponding to the captured and collected window identification; and sending the screen content data to be shared to each second user terminal.
17. The screen content sharing apparatus according to claim 16, wherein:
and after setting the state of the video session room corresponding to the video session room identifier as a locked state, the sharing request response module returns a sharing confirmation message to the first user terminal.
18. The screen content sharing apparatus according to claim 16, wherein:
the sharing confirmation message and the screen sharing notification message comprise address information of the video data server.
19. The screen content sharing apparatus according to claim 16, wherein the apparatus further comprises:
an end request processing module, configured to receive a screen sharing end request sent by the first user terminal, where the screen sharing end request includes the first user identifier; returning a finish confirmation message to the first user terminal; and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and sending the sharing stopping message to each second user terminal.
20. The screen content sharing apparatus according to claim 16, wherein the apparatus further comprises:
an end request processing module, configured to receive a screen sharing end request sent by the first user terminal, where the screen sharing end request includes the first user identifier; returning a finish confirmation message to the first user terminal; and receiving a sharing stopping message returned by the first user terminal according to the end confirmation message, and setting the state of the video session room corresponding to the video session room identifier as a non-locking state.
21. A storage medium having stored thereon a computer program, characterized in that the program, when executed by a processor, implements the screen content sharing method according to any one of claims 1 to 10.
22. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor realizes the steps of the method of any one of claims 1 to 10 when executing the computer program.
CN201710386972.2A 2017-05-26 2017-05-26 Screen content sharing method and device and storage medium Active CN108933965B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710386972.2A CN108933965B (en) 2017-05-26 2017-05-26 Screen content sharing method and device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710386972.2A CN108933965B (en) 2017-05-26 2017-05-26 Screen content sharing method and device and storage medium

Publications (2)

Publication Number Publication Date
CN108933965A CN108933965A (en) 2018-12-04
CN108933965B true CN108933965B (en) 2022-06-10

Family

ID=64451597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710386972.2A Active CN108933965B (en) 2017-05-26 2017-05-26 Screen content sharing method and device and storage medium

Country Status (1)

Country Link
CN (1) CN108933965B (en)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495711B (en) * 2018-12-29 2020-10-16 南京维沃软件技术有限公司 Video call processing method, sending terminal, receiving terminal and electronic equipment
CN109862301B (en) * 2019-02-25 2021-02-19 北京云中融信网络科技有限公司 Screen video sharing method and device and electronic equipment
CN111694603B (en) * 2019-03-12 2024-05-14 腾讯科技(深圳)有限公司 Screen sharing method, device, computer equipment and storage medium
CN110138728B (en) * 2019-04-01 2021-12-03 视联动力信息技术股份有限公司 Video data sharing method and device
CN110177086A (en) * 2019-04-30 2019-08-27 广州微算互联信息技术有限公司 A kind of cloud mobile phone screen sharing method, system and device
CN112019893B (en) * 2019-05-30 2023-09-12 北京小米移动软件有限公司 Screen projection method of terminal and screen projection device of terminal
CN110248142B (en) * 2019-06-12 2021-03-23 随锐科技集团股份有限公司 Method and system for quickly sharing screen
CN110247976B (en) * 2019-06-20 2022-09-23 青岛海信医疗设备股份有限公司 Medical image interaction method and device
WO2021003597A1 (en) * 2019-07-05 2021-01-14 潘子萌 Cloud desktop screencast telephone
CN110752999B (en) * 2019-09-27 2023-03-24 广州视源电子科技股份有限公司 Screen broadcasting method, device, system, electronic equipment and storage medium
CN110798652A (en) * 2019-10-17 2020-02-14 广州国音智能科技有限公司 Control method, terminal, device and readable storage medium for shared screen
CN112784293B (en) * 2019-11-08 2024-06-04 游戏橘子数位科技股份有限公司 Method for recording notice of picture acquisition
CN111045624A (en) * 2019-11-27 2020-04-21 深圳创维-Rgb电子有限公司 Multi-screen simultaneous display method, display terminal and computer readable storage medium
CN111182342A (en) * 2019-12-24 2020-05-19 腾讯科技(深圳)有限公司 Media data playing method, device, equipment and storage medium based on DLNA
CN111049991B (en) * 2019-12-27 2021-06-15 维沃移动通信有限公司 Content sharing method and electronic equipment
CN113141483B (en) * 2020-01-17 2022-09-09 华为技术有限公司 Screen sharing method based on video call and mobile device
CN111338721A (en) * 2020-01-20 2020-06-26 北京大米未来科技有限公司 Online interaction method, system, electronic device and storage medium
CN111290722A (en) * 2020-01-20 2020-06-16 北京大米未来科技有限公司 Screen sharing method, device and system, electronic equipment and storage medium
CN113329201B (en) * 2020-02-28 2022-09-02 华为技术有限公司 Enhanced video call method and system, and electronic device
CN113395477B (en) * 2020-03-13 2022-04-01 北京字节跳动网络技术有限公司 Sharing method and device based on video conference, electronic equipment and computer medium
CN111447139A (en) * 2020-03-26 2020-07-24 支付宝(杭州)信息技术有限公司 Method and device for realizing private chat conversation of multiple persons in instant messaging and electronic equipment
CN111488190B (en) * 2020-03-31 2021-10-15 腾讯科技(深圳)有限公司 Screen sharing method and device, computer equipment and storage medium
CN111628977B (en) * 2020-05-20 2024-09-03 腾讯科技(深圳)有限公司 Media file processing method, device and storage medium
CN113709577B (en) * 2020-05-21 2023-05-23 腾讯科技(深圳)有限公司 Video session method
CN112311754B (en) * 2020-06-02 2022-09-30 北京字节跳动网络技术有限公司 Interaction method and device and electronic equipment
CN111679881B (en) * 2020-06-09 2022-03-15 腾讯科技(深圳)有限公司 File processing method and device, computer equipment and storage medium
CN111818383B (en) * 2020-07-14 2022-03-04 北京字节跳动网络技术有限公司 Video data generation method, system, device, electronic equipment and storage medium
CN111813363B (en) * 2020-07-15 2023-08-18 锐捷网络股份有限公司 Information sharing method, device, medium and equipment
CN112015506B (en) * 2020-08-19 2023-08-22 北京字节跳动网络技术有限公司 Content display method and device
CN111953801A (en) * 2020-08-31 2020-11-17 北京猎户星空科技有限公司 Remote control method and device for robot, electronic equipment and storage medium
CN112291630B (en) * 2020-10-28 2022-09-30 维沃移动通信(杭州)有限公司 Electronic equipment screen sharing method and device
CN112333190B (en) * 2020-11-05 2024-05-03 深圳Tcl新技术有限公司 Session control method, session control device, and computer-readable storage medium
CN112383738B (en) * 2020-11-11 2023-03-03 浙江讯盟科技有限公司 Multi-user audio and video conference method and system with low traffic and resource consumption
CN112631471B (en) * 2020-11-19 2023-01-31 楷知信息科技(上海)有限公司 Multi-application switching and content sharing method and device, storage medium and terminal equipment
CN112492363A (en) * 2020-11-26 2021-03-12 深圳创维-Rgb电子有限公司 Television content sharing method, smart television, system and readable storage medium
CN112601119A (en) * 2020-12-15 2021-04-02 深圳创维-Rgb电子有限公司 Sharing and split screen method and device based on video call, intelligent terminal and storage medium
CN115623158A (en) * 2020-12-18 2023-01-17 北京字跳网络技术有限公司 Display method and device and electronic equipment
CN112565666B (en) * 2020-12-25 2021-10-22 创想空间信息技术(苏州)有限公司 Method and system for quickly viewing desktop shared historical content
CN112968937B (en) * 2021-01-29 2023-07-25 北京达佳互联信息技术有限公司 Interface processing method, device, terminal and server
CN113098931B (en) * 2021-03-19 2022-01-28 芋头科技(杭州)有限公司 Information sharing method and multimedia session terminal
EP4324213A1 (en) * 2021-05-15 2024-02-21 Apple Inc. Shared-content session user interfaces
JP7002164B1 (en) * 2021-06-04 2022-01-20 株式会社インタラクティブソリューションズ A system that allows the sharer to detect the identity when sharing the screen and a system that allows the sharer to detect information about the input answer field.
CN115514736A (en) * 2021-06-08 2022-12-23 广州视源电子科技股份有限公司 Screen sharing method and device and intelligent interactive panel
CN113518198B (en) * 2021-06-30 2023-05-12 北京达佳互联信息技术有限公司 Session interface display method, conference interface display method, device and electronic equipment
CN113190206B (en) * 2021-07-02 2022-09-06 南京云联数科科技有限公司 Method for displaying medicine information on same screen, computing equipment and computer storage medium
CN113489937B (en) * 2021-07-02 2023-06-20 北京字跳网络技术有限公司 Video sharing method, device, equipment and medium
CN113641320B (en) * 2021-08-16 2023-10-27 深圳技德智能科技研究院有限公司 Method and device for sharing screen of Linux compatible with Android
CN113825004B (en) * 2021-08-26 2024-03-22 青岛海尔科技有限公司 Multi-screen sharing method and device for display content, storage medium and electronic device
CN116074462A (en) * 2021-10-29 2023-05-05 华为技术有限公司 Desktop sharing method, device and system
CN114663550A (en) * 2022-03-17 2022-06-24 北京华伟恒远信息系统技术有限公司 Conference management method, device, conference platform and medium for online signature
CN114845084B (en) * 2022-07-05 2022-11-11 广州朗国电子科技股份有限公司 Multi-user screen management method, device, equipment and storage medium
CN115499693B (en) * 2022-08-09 2024-10-15 深圳市酷开网络科技股份有限公司 Multi-screen different display control method, device and system, storage medium and electronic equipment
CN118055184A (en) * 2022-11-16 2024-05-17 华为技术有限公司 Sharing method, electronic device and computer storage medium
CN116820792B (en) * 2023-08-30 2024-01-26 路九阳 Interactive processing method applied to web page on-screen communication

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143156A (en) * 2010-12-31 2011-08-03 华为技术有限公司 Desktop sharing method and device
CN103401936A (en) * 2013-08-07 2013-11-20 珠海金山办公软件有限公司 Processing method and device for interface sharing
CN106528021A (en) * 2016-10-27 2017-03-22 三星电子(中国)研发中心 Screen content sharing method and apparatus
CN106708452A (en) * 2015-11-17 2017-05-24 腾讯科技(深圳)有限公司 Information sharing method and terminal

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100452775C (en) * 2003-12-08 2009-01-14 腾讯科技(深圳)有限公司 Method and system of sharing application programs in instant communication system
JP4203657B2 (en) * 2004-02-27 2009-01-07 インターナショナル・ビジネス・マシーンズ・コーポレーション Collaboration server, collaboration system, method and program thereof
US9811304B2 (en) * 2011-03-30 2017-11-07 Open Invention Network, Llc Method and apparatus of capturing a screen image of a remotely managed machine
CN102209115A (en) * 2011-05-26 2011-10-05 华中科技大学 Method for coordinating different users in virtual desktop system
CN104281356B (en) * 2013-07-01 2018-09-28 腾讯科技(深圳)有限公司 screen sharing method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143156A (en) * 2010-12-31 2011-08-03 华为技术有限公司 Desktop sharing method and device
CN103401936A (en) * 2013-08-07 2013-11-20 珠海金山办公软件有限公司 Processing method and device for interface sharing
CN106708452A (en) * 2015-11-17 2017-05-24 腾讯科技(深圳)有限公司 Information sharing method and terminal
CN106528021A (en) * 2016-10-27 2017-03-22 三星电子(中国)研发中心 Screen content sharing method and apparatus

Also Published As

Publication number Publication date
CN108933965A (en) 2018-12-04

Similar Documents

Publication Publication Date Title
CN108933965B (en) Screen content sharing method and device and storage medium
US10868923B2 (en) Communication management system, communication system, communication control method, and recording medium
CN110248226B (en) Information screen projection method, device, system, storage medium and processor
US9485465B2 (en) Picture control method, terminal, and video conferencing apparatus
CN108390816B (en) Network communication method and device
EP2892205B1 (en) Method and device for determining a sharing terminal
JP2000099233A (en) Shared screen controller
WO2014206267A1 (en) Game accessing method and processing method, server, terminal, and system
EP3373514B1 (en) User terminal grouping method, conference server, and conference system
US9729826B2 (en) Communication management system, communication system, and communication management method
JP2014175956A (en) Transmission terminal, transmission system, and program
JP2018515979A (en) Communication processing method and electronic apparatus
CN105657323A (en) Video calling method, device and system
CN111818292B (en) Control method, device, terminal and system
US20200296145A1 (en) Communication terminal, communication system, and display control method
KR102136413B1 (en) Method, system and non-transitory computer-readable recording medium for providing a multilateral communication service
CN112256380A (en) Interactive page display method and device, electronic equipment and storage medium
EP3125493A1 (en) Terminal, communication method, and carrier means
CN112437245A (en) Participant terminal switching method, device, equipment and computer readable storage medium
US20230195403A1 (en) Information processing method and electronic device
KR20210013923A (en) Video Call Mediating Apparatus, Method and Computer Readable Recording Medium Thereof
CN116931862A (en) Multi-screen mobile terminal, corresponding control method and storage medium
JP2020154437A (en) Communication management system, communication system, communication management device, communication management method, and program
JP2010124425A (en) Information processor, method of data transfer, and communication system
US12002231B2 (en) Communication system, method for communicating to share images, and non-transitory recording medium

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