CN111641802A - Video data sharing method and device and server - Google Patents

Video data sharing method and device and server Download PDF

Info

Publication number
CN111641802A
CN111641802A CN202010498044.7A CN202010498044A CN111641802A CN 111641802 A CN111641802 A CN 111641802A CN 202010498044 A CN202010498044 A CN 202010498044A CN 111641802 A CN111641802 A CN 111641802A
Authority
CN
China
Prior art keywords
target client
video
video data
capability information
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010498044.7A
Other languages
Chinese (zh)
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.)
Tianjin Troila Technology Development Co ltd
Original Assignee
Tianjin Troila Technology Development 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 Tianjin Troila Technology Development Co ltd filed Critical Tianjin Troila Technology Development Co ltd
Priority to CN202010498044.7A priority Critical patent/CN111641802A/en
Publication of CN111641802A publication Critical patent/CN111641802A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals

Abstract

The invention provides a video data sharing method, a video data sharing device and a server. Wherein, the method comprises the following steps: receiving a video sharing request sent by a target client; acquiring hardware capability information and network capability information of a target client; and if the hardware capability information and the network capability information both meet the preset requirements, sending the video data and the plurality of video streams to the target client so that the target client can merge and play the video data and the plurality of video streams. The server sends the video data and the video streams to a target client side which provides that the hardware capacity information and the network capacity information both meet preset requirements, and the target client side merges and plays the video data and the video streams. The target client can obtain the video data and the video stream from the server before other clients, and the video data and the video stream are synthesized and played faster than other clients, so that the delay of the target client is reduced, and the coding and decoding pressure of the server can also be reduced.

Description

Video data sharing method and device and server
Technical Field
The invention relates to the technical field of video conferences, in particular to a video data sharing method, a video data sharing device and a video data sharing server.
Background
At present, in most video conferences, if a client wants to share a video, the client can upload the video to a server, then the server synthesizes the video uploaded by the client and a main video stream of the video conference into a video stream through encoding and decoding and forwards the video stream to all the clients, and the client decodes the synthesized video stream and plays the video stream.
However, in the conventional method for sharing videos in a video conference, a server is required to synthesize a video uploaded by a client and a main video stream of the video conference, and forward the synthesized video stream to all clients by the server. If the number of the clients is large, the pressure of the server is too high, and if the performance bottleneck of the server is reached, the speed of the server for forwarding the composite video stream is reduced, the delay of the client for receiving the composite video stream is increased, and therefore the single-point bottleneck is increased.
Disclosure of Invention
In view of the above, the present invention provides a video data sharing method, apparatus and server to reduce the delay of a target client and reduce the codec pressure of the server.
In a first aspect, an embodiment of the present invention provides a video data sharing method, which is applied to a server of a video conference, where video data in the server is uploaded to the server by a client that wants to share a video, and video streams in the server are uploaded to the server by a plurality of clients participating in the video conference; the method comprises the following steps: receiving a video sharing request sent by a target client; acquiring hardware capability information and network capability information of a target client; and if the hardware capability information and the network capability information both meet the preset requirements, sending the video data and the plurality of video streams to the target client so that the target client can merge and play the video data and the plurality of video streams.
In a preferred embodiment of the present invention, the step of sending the video data and the plurality of video streams to the target client if the hardware capability information and the network capability information both satisfy the preset requirement includes: and if the hardware capability information of the target client side meets the preset range and the network capability information of the target client side meets the preset conditions, sending the video data and the plurality of video streams to the target client side.
In a preferred embodiment of the present invention, the hardware capability information includes hardware information of the target client, an encoding and decoding manner of the target client, and a resolution supported by the target client; the network capability information comprises UDP data packets uploaded by the target client.
In a preferred embodiment of the present invention, the hardware information of the target client includes CPU information of the target client and memory information of the target client; the hardware capability information of the target client accords with a preset range, and the method comprises the following steps: the core number of the CPU of the target client side accords with a preset first range; the memory quantity of the target client side accords with a preset second range; the encoding and decoding mode of the target client side accords with a preset third range; and the resolution supported by the target client conforms to a preset fourth range.
In a preferred embodiment of the present invention, the network capability information of the target ue is determined to meet the predetermined condition by the following steps: determining the data transmission speed of the target client based on the UDP data packet uploaded by the target client; and if the data transmission speed meets the preset flow condition, the network capacity information of the target client side meets the preset condition.
In a preferred embodiment of the present invention, after the step of obtaining the hardware capability information and the network capability information of the target client, the method further includes: if the hardware capability information of the target client does not accord with the preset range and/or the network capability information of the target client does not accord with the preset condition, combining the video data and the plurality of video streams into a shared video stream; and forwarding the shared video stream to the target client so that the target client plays the shared video stream.
In a preferred embodiment of the present invention, the step of merging the video data and the plurality of video streams into a shared video stream includes: decoding the video data to obtain target video data; decoding the video stream to obtain a target video stream; merging the target video data and the target video stream to obtain a target shared video stream; and encoding the target shared video stream to obtain a shared video stream.
In a second aspect, an embodiment of the present invention further provides a video data sharing apparatus, which is applied to a server of a video conference, where video data in the server is uploaded to the server by a client that wants to share a video, and video streams in the server are uploaded to the server by a plurality of clients participating in the video conference; the device comprises: the shared video request receiving module is used for receiving a shared video request sent by a target client; the hardware capability information and network capability information acquisition module is used for acquiring the hardware capability information and the network capability information of the target client; and the video data and video stream sending module is used for sending the video data and the plurality of video streams to the target client if the hardware capability information and the network capability information both meet the preset requirements so as to enable the target client to play the video data and the plurality of video streams in a combined manner.
In a third aspect, an embodiment of the present invention further provides a server, which includes a processor and a memory, where the memory stores computer-executable instructions that can be executed by the processor, and the processor executes the computer-executable instructions to implement the steps of the video data sharing method described above.
In a fourth aspect, the embodiments of the present invention also provide a computer-readable storage medium, which stores computer-executable instructions, and when the computer-executable instructions are called and executed by a processor, the computer-executable instructions cause the processor to implement the steps of the video data sharing method described above.
The embodiment of the invention has the following beneficial effects:
according to the video data sharing method, the video data sharing device and the video data sharing server, the server sends the video data and the video streams to the target client side, wherein the hardware capacity information and the network capacity information meet the preset requirements, and the target client side merges and plays the video data and the video streams. The target client with better hardware capability and network speed can obtain the video data and the video stream from the server before other clients, and the video data and the video stream are synthesized and played faster than other clients, so that the delay of the target client is reduced. The server can also send the video data and the video stream to a target client with better hardware capability and network speed before synthesizing the video data and the video stream, thereby reducing the coding and decoding pressure of the server.
Additional features and advantages of the disclosure will be set forth in the description which follows, or in part may be learned by the practice of the above-described techniques of the disclosure, or may be learned by practice of the disclosure.
In order to make the aforementioned objects, features and advantages of the present disclosure more comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 is a schematic diagram of a video conference provided in an embodiment of the present invention;
fig. 2 is a flowchart of a video data sharing method according to an embodiment of the present invention;
fig. 3 is a flowchart of another video data sharing method according to an embodiment of the present invention;
fig. 4 is a schematic diagram of another video conference provided by the embodiment of the present invention;
fig. 5 is a schematic structural diagram of a video data sharing apparatus according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a server according to an embodiment of the present invention.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is apparent that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
At present, in most video conferences, a server synthesizes a video uploaded by a client and a main video stream of the video conference into one video stream through encoding and decoding, and forwards the video stream to all the clients. Referring to a schematic diagram of a video conference shown in fig. 1, assuming that three clients ABC simultaneously perform a network video conference, when joining the conference, the clients and the server negotiate, and report information such as a decoding mode that can be supported by the client, a supported resolution and the like to the server, and then the video conference server performs coding, decoding and converging on video streams according to a negotiation result of each client, and then sends the synthesized streams to each client, so as to achieve the effect of the video conference. For example, when a client a initiates a video sharing request, the client a first uploads a video file to a server where a video conference is located through a network protocol, and when the client a initiates a video playing request after the uploading is finished, the server decodes the video file and merges with an original video conference stream to synthesize a stream, and then forwards the stream to each client, so that the client ABC receives a video conference stream with a shared video.
Therefore, when the client initiates a video sharing request, the shared video stream and the video conference stream are merged and sent for display, so that all delay reasons are based on the server, the response delay of the video conference of the client is increased, and the single-point bottleneck is increased. Based on this, the video data sharing method, the video data sharing device and the server provided by the embodiment of the invention can be applied to equipment which can realize human-computer interaction, such as a server, a computer, a mobile phone, a tablet computer and the like, and can be particularly suitable for a scene of a network video conference.
To facilitate understanding of the present embodiment, a detailed description will be given of a video data sharing method disclosed in the present embodiment.
Example 1
The embodiment provides a video data sharing method, which is applied to a server of a video conference, wherein video data in the server is uploaded to the server from a client to share a video, and video streams in the server are uploaded to the server from a plurality of clients participating in the video conference.
In this embodiment, if a user wants to participate in a video conference, the user can log in a client (the client can be a computer, a mobile phone, a tablet computer, or other device capable of performing human-computer interaction and connected with a server in a communication manner), and then upload a video stream of the user to the server through the client. And uploading the video data stored in the server by the client to share the video. The video data can be uploaded by clients participating in the conference or clients not participating in the conference; the video data can be uploaded before the video conference or during the video conference.
Based on the above description, referring to the flowchart of a video data sharing method shown in fig. 2, the video data sharing method includes the following steps:
step S202, receiving a video sharing request sent by a target client.
The target client may be a client that wants to acquire video data pre-stored by the server. In the process of carrying out the video conference, if a user wants to acquire video data pre-stored by a server, a video sharing request can be sent to the server through a client (namely a target client) of the user. After receiving a video sharing request sent by a target client, the server can share video data to the target client.
Step S204, hardware capability information and network capability information of the target client are obtained.
When the server video data is shared to the target client, since the server stores the video data and the plurality of video streams, the target client needs to play the merged video data and the plurality of video streams. To reduce server stress and also reduce latency of the target client, the merge operation may be performed at the target client.
For example, after receiving a video sharing request sent by a target client, the server needs to determine whether the target client can locally merge video data and a video stream. Therefore, the server needs to determine the hardware capability information and the network capability information of the target client. The hardware capability information refers to the hardware level of the target client, and if the hardware capability information meets the requirement, the target client can quickly and accurately carry out local merging operation. The network capacity information represents the network transmission speed of the server and the target client, and the target client needs to receive video data and a plurality of video streams because the merging operation needs to be performed locally at the target client, and receives more data than the merging operation performed at the server, so that stronger network capacity information is needed.
And step S206, if the hardware capability information and the network capability information both meet the preset requirements, sending the video data and the plurality of video streams to the target client so that the target client can play the video data and the plurality of video streams in a combined manner.
If the hardware capability information and the network capability information both meet the preset requirements, the server can judge that the target client has the capability of locally executing the merging operation, can send the video data and the plurality of video streams to the target client, and the target client carries out the merging operation and plays the merged video data and the plurality of video streams.
In the video data sharing method provided by the embodiment of the invention, the server sends the video data and the plurality of video streams to the target client which provides that the hardware capability information and the network capability information both meet the preset requirements, and the target client merges and plays the video data and the video streams. The target client with better hardware capability and network speed can obtain the video data and the video stream from the server before other clients, and the video data and the video stream are synthesized and played faster than other clients, so that the delay of the target client is reduced. The server can also send the video data and the video stream to a target client with better hardware capability and network speed before synthesizing the video data and the video stream, thereby reducing the coding and decoding pressure of the server.
Example 2
The embodiment provides another video data sharing method, which is implemented on the basis of the above embodiments; the present embodiment focuses on a specific implementation of sending video data and multiple video streams to a target client. As shown in fig. 3, a flow chart of another video data sharing method, the video data sharing method in this embodiment includes the following steps:
step S302, receiving a video sharing request sent by a target client.
Step S304, acquiring the hardware capability information and the network capability information of the target client.
In the implementation, WebRTC (Web Real-Time Communication) is used as a transmission protocol, and the WebRTC is cross-platform and has independent acquisition, coding, decoding and transmission components. And introduces a dynamic confluence mechanism: the target client end will report some information, and the server will judge the hardware capability and network capability of the target client end according to the information.
If the hardware capability and the network speed capability of a target client are good, the server sends the video data and the main video stream to the target client together, and the target client synthesizes the video data and the main video stream to achieve the effect of reducing the delay of the client and reduce the single-point bottleneck. If at least one of the hardware capability and the network capability of the target client is not good, the server synthesizes the video data and the main video stream, and forwards the synthesized video stream to the target client.
Referring to another schematic diagram of a video conference shown in fig. 4, in the client segment ABC, both the hardware capability and the network capability of the client a are better, and the server may send the video data and the video stream to the client a, perform local merging operation by the client a, and play the merged video data and video stream.
Step S306, if the hardware capability information of the target client side meets the preset range and the network capability information of the target client side meets the preset conditions, the video data and the plurality of video streams are sent to the target client side.
The hardware capacity information and the network capacity information both meet preset requirements, namely the hardware capacity information of the target client side meets a preset range, and the network capacity information of the target client side meets preset conditions.
The hardware capability information in the embodiment includes hardware information of the target client, an encoding and decoding mode of the target client and a resolution supported by the target client; the network capability information includes UDP (User datagram protocol) packets uploaded by the target client. The hardware information of the target client comprises CPU information of the target client and memory information of the target client.
The fact that the hardware capability information meets the preset range means that the server can make certain requirements on the hardware meeting the range and determine whether the target client meets the requirements, for example: the core number of a Central Processing Unit (CPU) of the target client conforms to a preset first range; the memory quantity of the target client side accords with a preset second range; the encoding and decoding mode of the target client side accords with a preset third range; and the resolution supported by the target client conforms to a preset fourth range.
The above example makes requirements on four parameters, that is, the number of cores of the CPU of the target client, the number of memories, the encoding and decoding manner, and the supported resolution, and only the target client whose four parameters all meet the requirements may be referred to as a target client whose hardware capability information meets a preset range.
Besides the hardware capability, the server determines whether the network capability information of the target client meets a preset condition, which can be performed by the following steps: determining the data transmission speed of the target client based on the UDP data packet uploaded by the target client; and if the data transmission speed meets the preset flow condition, the network capacity information of the target client side meets the preset condition.
And the server determines the network capability of the client according to the UDP data packet sent by the client. The UDP data contains the frame rate of the data negotiation and the frame rate of the actual transmission. The data negotiation means that a client sends a request to a server, the client declares the format and the limitation of data required to be taken by the request, and the server determines the returned data according to request header information. The server may calculate the network capabilities based on the frame rate negotiated and the frame rate actually sent. For example, the server calculates the traffic of the target client according to the frame rate included in the UDP packet, and determines the network capability of the target client according to the traffic condition.
It should be noted that, the method for determining the hardware capability and the network capability of the target client is not unique, and may be replaced with each other.
If the hardware capability information of the target client does not accord with the preset range and/or the network capability information of the target client does not accord with the preset condition, the server can combine the video data and the plurality of video streams into a shared video stream; and forwarding the shared video stream to the target client so that the target client plays the shared video stream.
As shown in fig. 4, if both the hardware capability and the network capability of the client a are good, the hardware capability and the network capability of the client B and the client C have certain problems. For the client A, the server can not synthesize all video conference streams of all participants ABC and can not synthesize a shared video stream D, the ABCD four-way stream is sent to the client, coding and decoding confluence is carried out at the client, and the server directly sends the stream to the client aiming at the client without carrying out confluence operation, so the client obtains the stream earlier than other clients, and the overall effect is better than the effect of confluence at the server due to good network conditions and strong client processing capacity (namely hardware capacity), thereby reducing delay and single-point bottleneck.
And for the client B and the client C, the server performs ABCD confluence and transmits the synthesized single-path stream to the client. If all clients ABC accessing the video conference have good network conditions and processing capacity, the server does not perform merging operation and is switched into a forwarding mode to directly forward the ABCD four-way stream to all the clients, and if at least 1 of the clients ABC accessing the video conference has poor network conditions or poor processing capacity, the server performs merging operation and forwarding operation, although the server also performs merging operation, the user experience of part of the clients can be improved, delay is reduced, and the single-point bottleneck is reduced.
In particular, the server may provide the following steps to merge the video data and the plurality of video streams into a shared video stream: decoding the video data to obtain target video data; decoding the video stream to obtain a target video stream; merging the target video data and the target video stream to obtain a target shared video stream; and encoding the target shared video stream to obtain a shared video stream.
In this embodiment, the video data and the video stream are both in a coded state, and therefore the server can decode the video data and the video stream to obtain the target video data and the target video stream respectively. And the server then merges the target video data and the target video stream to obtain a target shared video stream, encodes the target shared video stream to obtain a shared video stream, and forwards the shared video stream to the target client.
The method provided by the embodiment increases the way of video stream confluence in the video conference, reduces the influence degree of the server performance on the client delay, and can utilize the hardware networks of all participants of the video conference to the maximum extent.
It should be noted that the above method embodiments are all described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other.
Example 3
Corresponding to the method embodiment, the embodiment of the invention provides a video data sharing device, which is applied to a server of a video conference, wherein video data in the server is uploaded to the server from a client to share a video, and video streams in the server are uploaded to the server from a plurality of clients participating in the video conference; fig. 5 is a schematic structural diagram of a video data sharing apparatus, including:
a shared video request receiving module 51, configured to receive a shared video request sent by a target client;
a hardware capability information and network capability information obtaining module 52, configured to obtain hardware capability information and network capability information of the target client;
and the video data and video stream sending module 53 is configured to send the video data and the multiple video streams to the target client if both the hardware capability information and the network capability information meet the preset requirement, so that the target client merges and plays the video data and the multiple video streams.
According to the video data sharing device provided by the embodiment of the invention, the server sends the video data and the video streams to the target client which provides that the hardware capability information and the network capability information both meet the preset requirements, and the target client merges and plays the video data and the video streams. The target client with better hardware capability and network speed can obtain the video data and the video stream from the server before other clients, and the video data and the video stream are synthesized and played faster than other clients, so that the delay of the target client is reduced. The server can also send the video data and the video stream to a target client with better hardware capability and network speed before synthesizing the video data and the video stream, thereby reducing the coding and decoding pressure of the server.
The video data and video stream sending module is used for sending the video data and the plurality of video streams to the target client if the hardware capability information of the target client meets a preset range and the network capability information of the target client meets a preset condition.
The hardware capability information comprises hardware information of a target client, an encoding and decoding mode of the target client and a resolution ratio supported by the target client; the network capability information comprises UDP data packets uploaded by the target client.
The hardware information of the target client comprises CPU information of the target client and memory information of the target client; the video data and video stream sending module is used for enabling the core number of the CPU of the target client to accord with a preset first range; the memory quantity of the target client side accords with a preset second range; the encoding and decoding mode of the target client side accords with a preset third range; and the resolution supported by the target client conforms to a preset fourth range.
The video data and video stream sending module is used for determining the data transmission speed of the target client based on the UDP data packet uploaded by the target client; and if the data transmission speed meets the preset flow condition, the network capacity information of the target client side meets the preset condition.
The device comprises a video data and video stream merging module, a video data and video stream merging module and a video stream merging module, wherein the video data and the video stream merging module is used for merging video data and a plurality of video streams into a shared video stream if the hardware capability information of a target client does not accord with a preset range and/or the network capability information of the target client does not accord with a preset condition; and forwarding the shared video stream to the target client so that the target client plays the shared video stream.
The video data and video stream merging module is used for decoding the video data to obtain target video data; decoding the video stream to obtain a target video stream; merging the target video data and the target video stream to obtain a target shared video stream; and encoding the target shared video stream to obtain a shared video stream.
Example 4
The embodiment of the invention also provides a server for operating the video data sharing method; referring to fig. 6, a schematic structural diagram of a server includes a memory 100 and a processor 101, where the memory 100 is used for storing one or more computer instructions, and the one or more computer instructions are executed by the processor 101 to implement the video data sharing method.
Further, the server shown in fig. 6 further includes a bus 102 and a communication interface 103, and the processor 101, the communication interface 103 and the memory 100 are connected through the bus 102.
The Memory 100 may include a high-speed Random Access Memory (RAM) and may further include a non-volatile Memory (non-volatile Memory), such as at least one disk Memory. The communication connection between the network element of the system and at least one other network element is realized through at least one communication interface 103 (which may be wired or wireless), and the internet, a wide area network, a local network, a metropolitan area network, and the like can be used. The bus 102 may be an ISA bus, PCI bus, EISA bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one double-headed arrow is shown in FIG. 6, but that does not indicate only one bus or one type of bus.
The processor 101 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 101. The Processor 101 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the device can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, a discrete Gate or transistor logic device, or a discrete hardware component. The various methods, steps and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in the memory 100, and the processor 101 reads the information in the memory 100, and completes the steps of the method of the foregoing embodiment in combination with the hardware thereof.
An embodiment of the present invention further provides a computer-readable storage medium, where the computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are called and executed by a processor, the computer-executable instructions cause the processor to implement the video data sharing method.
The video data sharing method, device and computer program product of the server provided by the embodiments of the present invention include a computer readable storage medium storing a program code, and instructions included in the program code may be used to execute the method in the foregoing method embodiments, and specific implementation may refer to the method embodiments, and will not be described herein again.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the system and/or the apparatus described above may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In addition, in the description of the embodiments of the present invention, unless otherwise explicitly specified or limited, the terms "mounted," "connected," and "connected" are to be construed broadly, e.g., as meaning either a fixed connection, a removable connection, or an integral connection; can be mechanically or electrically connected; they may be connected directly or indirectly through intervening media, or they may be interconnected between two elements. The specific meanings of the above terms in the present invention can be understood in specific cases to those skilled in the art.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
In the description of the present invention, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., indicate orientations or positional relationships based on the orientations or positional relationships shown in the drawings, and are only for convenience of description and simplicity of description, but do not indicate or imply that the device or element being referred to must have a particular orientation, be constructed and operated in a particular orientation, and thus, should not be construed as limiting the present invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance.
Finally, it should be noted that: the above-mentioned embodiments are only specific embodiments of the present invention, which are used for illustrating the technical solutions of the present invention and not for limiting the same, and the protection scope of the present invention is not limited thereto, although the present invention is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive the technical solutions described in the foregoing embodiments or equivalent substitutes for some technical features within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the embodiments of the present invention, and they should be construed as being included therein. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (10)

1. A video data sharing method is characterized in that the method is applied to a server of a video conference, video data in the server are uploaded to the server by a client to share videos, and video streams in the server are uploaded to the server by a plurality of clients participating in the video conference; the method comprises the following steps:
receiving a video sharing request sent by a target client;
acquiring hardware capability information and network capability information of the target client;
and if the hardware capability information and the network capability information both meet preset requirements, sending the video data and the plurality of video streams to the target client so that the target client merges and plays the video data and the plurality of video streams.
2. The method of claim 1, wherein if the hardware capability information and the network capability information both satisfy a predetermined requirement, the step of sending the video data and the plurality of video streams to the target client comprises:
and if the hardware capability information of the target client side meets a preset range and the network capability information of the target client side meets a preset condition, sending the video data and the video streams to the target client side.
3. The method of claim 2, wherein the hardware capability information comprises hardware information of the target client, a codec of the target client, and a resolution supported by the target client; the network capability information comprises UDP data packets uploaded by the target client.
4. The method of claim 3, wherein the hardware information of the target client comprises CPU information of the target client and memory information of the target client; the hardware capability information of the target client conforms to a preset range, and the method comprises the following steps:
the core number of the CPU of the target client side accords with a preset first range;
the memory quantity of the target client side accords with a preset second range;
the encoding and decoding mode of the target client side accords with a preset third range;
and the resolution supported by the target client conforms to a preset fourth range.
5. The method of claim 3, wherein the network capability information of the target client is determined to meet the preset condition by:
determining the data transmission speed of the target client based on the UDP data packet uploaded by the target client;
and if the data transmission speed meets the preset flow condition, the network capacity information of the target client side meets the preset condition.
6. The method of claim 2, wherein after the step of obtaining the hardware capability information and the network capability information of the target client, the method further comprises:
if the hardware capability information of the target client does not accord with the preset range and/or the network capability information of the target client does not accord with the preset condition, combining the video data and the plurality of video streams into a shared video stream;
and forwarding the shared video stream to the target client so that the target client plays the shared video stream.
7. The method of claim 6, wherein the step of merging the video data and the plurality of video streams into a shared video stream comprises:
decoding the video data to obtain target video data;
decoding the video stream to obtain a target video stream;
merging the target video data and the target video stream to obtain a target shared video stream;
and encoding the target shared video stream to obtain a shared video stream.
8. A video data sharing device is applied to a server of a video conference, video data in the server is uploaded to the server by a client to share video, and video streams in the server are uploaded to the server by a plurality of clients participating in the video conference; the device comprises:
the shared video request receiving module is used for receiving a shared video request sent by a target client;
the hardware capability information and network capability information acquisition module is used for acquiring the hardware capability information and the network capability information of the target client;
and the video data and video stream sending module is used for sending the video data and the plurality of video streams to the target client if the hardware capability information and the network capability information both meet preset requirements so as to enable the target client to merge and play the video data and the plurality of video streams.
9. A server comprising a processor and a memory, said memory storing computer-executable instructions executable by said processor, said processor executing said computer-executable instructions to perform the steps of the video data sharing method of any one of claims 1 to 7.
10. A computer-readable storage medium having stored thereon computer-executable instructions that, when invoked and executed by a processor, cause the processor to carry out the steps of the video data sharing method of any one of claims 1 to 7.
CN202010498044.7A 2020-06-04 2020-06-04 Video data sharing method and device and server Pending CN111641802A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010498044.7A CN111641802A (en) 2020-06-04 2020-06-04 Video data sharing method and device and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010498044.7A CN111641802A (en) 2020-06-04 2020-06-04 Video data sharing method and device and server

Publications (1)

Publication Number Publication Date
CN111641802A true CN111641802A (en) 2020-09-08

Family

ID=72332674

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010498044.7A Pending CN111641802A (en) 2020-06-04 2020-06-04 Video data sharing method and device and server

Country Status (1)

Country Link
CN (1) CN111641802A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112351303A (en) * 2021-01-08 2021-02-09 全时云商务服务股份有限公司 Video sharing method and system in network conference and readable storage medium
CN113286111A (en) * 2020-10-23 2021-08-20 常熟友乐智能科技有限公司 Video conference content presentation method, device and system

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572368A (en) * 2010-12-16 2012-07-11 中兴通讯股份有限公司 Processing method and system of distributed video and multipoint control unit
CN103051864A (en) * 2012-12-26 2013-04-17 浙江元亨通信技术股份有限公司 Mobile video conference method and system thereof
CN104469259A (en) * 2014-12-15 2015-03-25 广东威创视讯科技股份有限公司 Cloud terminal video synthesis method and system
US20150281641A1 (en) * 2014-03-31 2015-10-01 Hon Hai Precision Industry Co., Ltd. Server and method for processing video data of video conference
US20150304605A1 (en) * 2009-12-07 2015-10-22 Anthony Hartman Interactive video system
CN105635631A (en) * 2014-11-04 2016-06-01 捷达世软件(深圳)有限公司 Video conference control method and system
CN106878659A (en) * 2017-03-08 2017-06-20 威盛电子股份有限公司 Video conferencing system, server and terminal device
CN107302456A (en) * 2017-06-22 2017-10-27 深圳市丰巨泰科电子有限公司 A kind of method and device of data processing
CN109660751A (en) * 2018-12-28 2019-04-19 中兴通讯股份有限公司 A kind of video meeting implementing method and device, video conferencing system, storage medium
CN110650067A (en) * 2019-10-16 2020-01-03 大庆石油管理局有限公司 Broadband network performance test evaluation method and system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150304605A1 (en) * 2009-12-07 2015-10-22 Anthony Hartman Interactive video system
CN102572368A (en) * 2010-12-16 2012-07-11 中兴通讯股份有限公司 Processing method and system of distributed video and multipoint control unit
CN103051864A (en) * 2012-12-26 2013-04-17 浙江元亨通信技术股份有限公司 Mobile video conference method and system thereof
US20150281641A1 (en) * 2014-03-31 2015-10-01 Hon Hai Precision Industry Co., Ltd. Server and method for processing video data of video conference
CN105635631A (en) * 2014-11-04 2016-06-01 捷达世软件(深圳)有限公司 Video conference control method and system
CN104469259A (en) * 2014-12-15 2015-03-25 广东威创视讯科技股份有限公司 Cloud terminal video synthesis method and system
CN106878659A (en) * 2017-03-08 2017-06-20 威盛电子股份有限公司 Video conferencing system, server and terminal device
CN107302456A (en) * 2017-06-22 2017-10-27 深圳市丰巨泰科电子有限公司 A kind of method and device of data processing
CN109660751A (en) * 2018-12-28 2019-04-19 中兴通讯股份有限公司 A kind of video meeting implementing method and device, video conferencing system, storage medium
CN110650067A (en) * 2019-10-16 2020-01-03 大庆石油管理局有限公司 Broadband network performance test evaluation method and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113286111A (en) * 2020-10-23 2021-08-20 常熟友乐智能科技有限公司 Video conference content presentation method, device and system
CN112351303A (en) * 2021-01-08 2021-02-09 全时云商务服务股份有限公司 Video sharing method and system in network conference and readable storage medium

Similar Documents

Publication Publication Date Title
US8249237B2 (en) Heterogeneous video conferencing
US9210380B2 (en) Multi-participant conference setup
WO2017020664A1 (en) Video encoding parameter setting method and apparatus for live video, and video encoding device and storage medium
US8861701B2 (en) Multi-participant conference adjustments
US10075677B2 (en) Method and system for conducting video conferences of diverse participating devices
US20130034146A1 (en) Selection of encoder and decoder for a video communications session
CN111641802A (en) Video data sharing method and device and server
US20190110091A1 (en) Method and device for synchronously performing an operation on contents
US11438645B2 (en) Media information processing method, related device, and computer storage medium
CN112584231B (en) Video live broadcast method and device, edge device of CDN (content delivery network) and user terminal
WO2023221527A1 (en) Screen mirroring method and apparatus, terminal device, and computer readable storage medium
JP2005537742A (en) Streaming multimedia data
CN109218745A (en) A kind of live broadcasting method, server, client and readable storage medium storing program for executing
WO2021057697A1 (en) Video encoding and decoding methods and apparatuses, storage medium, and electronic device
CN111600963B (en) Document data transmission method and device
US20140009567A1 (en) Local Media Rendering
CN111617466A (en) Method and device for determining coding format and method for realizing cloud game
Xue et al. A WebRTC-based video conferencing system with screen sharing
CN114553839A (en) RTC data processing method and device
WO2021057686A1 (en) Video decoding method and apparatus, video encoding method and apparatus, storage medium and electronic device
CN113992883A (en) Video conference processing method, processing device, conference system, and storage medium
CN111641878A (en) Three-dimensional model display method and device and electronic equipment
Hoppe et al. Video Streaming over IP using the DASH Technique
CN113794931A (en) Video playing method and system and electronic equipment
JP5729222B2 (en) Phone terminal

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200908