CN115052043B - Video transmission method, electronic equipment, device and medium of cloud desktop - Google Patents
Video transmission method, electronic equipment, device and medium of cloud desktop Download PDFInfo
- Publication number
- CN115052043B CN115052043B CN202210672302.8A CN202210672302A CN115052043B CN 115052043 B CN115052043 B CN 115052043B CN 202210672302 A CN202210672302 A CN 202210672302A CN 115052043 B CN115052043 B CN 115052043B
- Authority
- CN
- China
- Prior art keywords
- desktop
- virtual machine
- streaming media
- image data
- preset
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 241000699666 Mus <mouse, genus> Species 0.000 description 44
- 239000003795 chemical substances by application Substances 0.000 description 35
- 238000005516 engineering process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 235000013599 spices Nutrition 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 235000015097 nutrients Nutrition 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The application provides a video transmission method, a video transmission device, electronic equipment and a video transmission medium of a cloud desktop, which are applied to a cloud desktop service platform comprising a virtual machine server and a streaming media server, wherein a desktop virtual machine is arranged on the virtual machine server; the method comprises the following steps: when the desktop virtual machine detects that the preset desktop updating condition is met, the generated desktop image data carrying the identification information of the desktop virtual machine is sent to a streaming media server; the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; the streaming media server sends the target desktop image data stored in the target preset streaming media address to the first target client according to the association relation between the preset client and the preset streaming media address, so that the virtual machine server can create more virtual machine resources and better lateral expansion.
Description
Technical Field
The application relates to the field of virtualized computing, in particular to a video transmission method, electronic equipment, device and medium of a cloud desktop.
Background
The cloud desktop is also called desktop virtualization, and compared with the traditional PC host, the cloud desktop does not need to purchase a separate physical host for each user terminal, but can have the same experience effect as the traditional computer by using only an inexpensive thin client to match with peripheral devices such as a display and a mouse through a network. With the rapid development of virtualization technology, cloud desktops are becoming a typical application of the cloud computing era.
The implementation of cloud desktops relies on server virtualization technology. Virtualization technology (Virtualization) generally creates a cloud desktop virtual machine on a server, abstracts computing resources, provides resources to required components on the one hand, and maps the resources to physical hardware on the other hand. However, creating a large number of virtual machines on a server requires a large amount of resources, and the virtual machines also need to do work such as coding, video transmission, and the like, so that the resource pressure of the server side is high and is not well expanded.
Disclosure of Invention
In view of this, an object of the present application is to provide a video transmission method, an electronic device, an apparatus, and a medium for a cloud desktop, in which desktop image data is separately stored in a streaming media server, and a cloud desktop virtual machine and a video code are separately transmitted through a network by using a streaming media technology, so that the virtual machine server can not only create more virtual machine resources, but also facilitate better lateral expansion.
The video transmission method of the cloud desktop is applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; the video transmission method comprises the following steps:
when the desktop virtual machine detects that the preset desktop updating condition is met, the generated desktop image data are sent to a streaming media server; the desktop image data carries identification information of the desktop virtual machine;
after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
and the streaming media server sends the target desktop image data stored in the target preset streaming media address to the first target client according to the association relation between the preset client and the preset streaming media address.
In some embodiments, the video transmission method of the cloud desktop further includes the following steps:
The streaming media server receives and stores a mouse command sent by a client, and processes the mouse command according to a preset command processing rule; the preset command processing rule comprises merging repeated commands and deleting conflict commands; the key mouse command carries a desktop virtual machine identifier;
and according to the desktop virtual machine identification in the key mouse command, respectively sending the processed key mouse command to the desktop virtual machine corresponding to the desktop virtual machine identification.
In some embodiments, the video transmission method of the cloud desktop further includes the following steps:
the streaming media server responds to receiving a desktop sharing request sent by a second target client and aiming at a first target client, and sends target desktop image data stored in a target preset streaming media address to the second target client while sending the target desktop image data stored in the target preset streaming media address to the first target client;
and the streaming media server receives the mouse command which is sent by the first target client and the second target client and carries the same target desktop virtual machine identifier, and forwards the mouse command sent by the first target client and the second target client to the same target desktop virtual machine.
In some embodiments, in the video transmission method of a cloud desktop, the detection by the desktop virtual machine that a preset desktop update condition is satisfied includes:
the desktop virtual machine detects that the preset refreshing time of the desktop virtual machine in the current working mode is reached, and/or the desktop virtual machine receives a refreshing command sent by a streaming media server; the desktop virtual machines have different working states, and the preset refreshing time periods are different and/or the desktop image resolutions sent to the streaming media server are different.
In some embodiments, in the video transmission method of a cloud desktop, a plurality of groups of acquisition parameters are preconfigured in the desktop virtual machine;
when the desktop virtual machine detects that the client side meets the preset frequency condition, the desktop virtual machine acquires desktop image data according to acquisition parameters corresponding to the preset frequency condition;
the desktop virtual machine detects that the client side meets a preset frequency condition and at least comprises one of the following steps: the desktop virtual machine detects that a client accesses the desktop virtual machine, the desktop virtual machine detects that an operation command of the client is received within a first preset time period, and the desktop virtual machine detects that connection is established with the client and keeps connection within a second preset time period.
In some embodiments, in the video transmission method of a cloud desktop, when the desktop virtual machine detects that a preset desktop update condition is met, the sending, by the desktop virtual machine, generated desktop image data to a streaming media server includes:
when the desktop virtual machine detects that a preset desktop updating condition is met, encoding the generated desktop image data according to a first encoding rule configured in advance so as to compress the desktop image data;
the desktop virtual machine converts the encoded desktop image data into desktop image data in a first target format through a pre-configured transmission protocol, and sends the desktop image data in the first target format to a streaming media server.
In some embodiments, in the video transmission method of a cloud desktop, after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to identification information carried in the desktop image data; comprising the following steps:
after receiving the desktop image data, the streaming media server encodes the desktop image data according to a second encoding rule which is preset to obtain desktop image data in a second target format;
And storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data in the second target format.
In some embodiments, a video transmission device of a cloud desktop is further provided, and the video transmission device is applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; the video transmission device includes:
the first sending module is used for sending the generated desktop image data to the streaming media server when the desktop virtual machine detects that the preset desktop updating condition is met; the desktop image data carries identification information of the desktop virtual machine;
the storage module is used for storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data after the streaming media server receives the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
and the second sending module is used for enabling the streaming media server to send the target desktop image data stored in the target preset streaming media address to the first target client according to the association relation between the preset client and the preset streaming media address.
In some embodiments, there is also provided an electronic device comprising: the cloud desktop video transmission method comprises a processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, when the electronic device runs, the processor and the memory are communicated through the bus, and the machine-readable instructions are executed by the processor to execute the steps of the cloud desktop video transmission method.
In some embodiments, there is also provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the video transmission method of a cloud desktop.
Based on the above, the application provides a video transmission method of a cloud desktop, which is characterized in that a streaming media server is independently deployed, desktop image data generated by a plurality of cloud desktop virtual machines are firstly transmitted to the streaming media server to be stored, then the desktop image data are sent to corresponding clients through a streaming media technology, multiplexing of the virtual machine image data is increased by maintaining a small number of stable channels between streaming media instead of frequent connection between the clients, interactive operation is reduced, and resource pressure of the virtual machine server is further reduced; the streaming media server can acquire desktop image data of the virtual machine server at regular time and buffer the desktop image data, and the streaming media server is like a plurality of clients which are connected with the virtual machine server, and is similar to a virtual machine pool, so that when a new client is connected, the virtual machine image data in the virtual machine pool can be acquired only through pulling, the response time is reduced, a new group of channels are not required to be established, and the streaming media server is convenient for transverse expansion; meanwhile, as each virtual machine has cache data in the streaming media server, the effect is better when the user switches different virtual machines.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the embodiments will be briefly described below, it being understood that the following drawings only illustrate some embodiments of the present application and therefore should not be considered limiting the scope, and that other related drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 shows a prior art SPICE workflow diagram;
FIG. 2 shows a prior art SPICE interface schematic;
fig. 3 is a flowchart of a method for video transmission of a cloud desktop according to an embodiment of the present application;
fig. 4 illustrates a schematic structural diagram of a cloud desktop service platform in an embodiment of the present application;
fig. 5 is a flowchart of a method for video transmission of another cloud desktop according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a video transmission device of a cloud desktop according to an embodiment of the present application;
fig. 7 shows a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it should be understood that the accompanying drawings in the present application are only for the purpose of illustration and description, and are not intended to limit the protection scope of the present application. In addition, it should be understood that the schematic drawings are not drawn to scale. A flowchart, as used in this application, illustrates operations implemented according to some embodiments of the present application. It should be understood that the operations of the flow diagrams may be implemented out of order and that steps without logical context may be performed in reverse order or concurrently. Moreover, one or more other operations may be added to the flow diagrams and one or more operations may be removed from the flow diagrams as directed by those skilled in the art.
In addition, the described embodiments are only some, but not all, of the embodiments of the present application. The components of the embodiments of the present application, which are generally described and illustrated in the figures herein, may be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present application, as provided in the accompanying drawings, is not intended to limit the scope of the application, as claimed, but is merely representative of selected embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, are intended to be within the scope of the present application.
It should be noted that the term "comprising" will be used in the embodiments of the present application to indicate the presence of the features stated hereinafter, but not to exclude the addition of other features.
The cloud desktop is also called desktop virtualization, and compared with the traditional PC host, the cloud desktop does not need to purchase a separate physical host for each user terminal, but can have the same experience effect as the traditional computer by using only an inexpensive thin client to match with peripheral devices such as a display and a mouse through a network. With the rapid development of virtualization technology, cloud desktops are becoming a typical application of the cloud computing era. Visually, the virtualization is just like the water planting technology, and the plant grows in the nutrient solution just like in the soil. Today, virtualization solutions are mature, and the red cap company (RedHat) open source KVM technology (Kernel-based Virtual Machine) is rapidly developed and widely used in industry in combination with the QEMU technology of open source QEMU.
With QEMU-KVM we can create virtual machines like personal computers, but to implement cloud desktop applications we also need to access these virtual machines by some means, which requires a virtual display device (Virtual Display Device) and a Protocol (Protocol). Among these are QXL and SPICE, which are well supported.
SPICE (Simple Protocol for IndependentComputing Environments) is a desktop virtualization solution proposed by red cap corporation, which is an open source virtualized desktop transport protocol based on KVM. QXL is a virtually standard virtual graphics card when SPICE is used, and has been supported by QEMU.
SPICE can be divided into four parts: a service server, a service client, a service protocol, and a service server.
Referring to fig. 1, the service workflow includes the following steps: step 1, in a virtual machine, an image engine transmits a command to a QXL driver (spice-guide), and the QXL converts an operating system command into a QXL command and pushes the QXL command to a command ring of a QXL Device; step 2, extracting a command in a command ring by libspice (spice-server), adding the command into a graphic command Tree (Display Tree), and sending the command to a sending queue after optimizing the command by the graphic command Tree; step 3, after a command is pulled out from the sending queue, it is converted into a service protocol message (service-protocol) to be sent to the client; and 4, the client (spice-clinet) updates the display after receiving the command.
Referring to FIG. 2, in addition to image display, SPICE defines many other device interfaces that can control remote computer devices, such as mice, keyboards, audio devices, and the like. The server and the client communicate through channels, and each type of data has a specific channel to transmit. Here, the term channel is defined by spice, and refers to a socket channel (socket is a network term, chinese term is a socket, and it is understood that network communication is required between two applications and must pass through socket). This channel is understood to be a message processing channel in a broad sense (pre-configured message processing channel). In particular, each time a new service-client connection is made, a set of channels is recreated, which results in a high virtual machine server resource pressure and poor user switching between different virtual machines.
Based on this, although SPICE has achieved good results, the following problems still remain: firstly, a large number of virtual machines are created on a server, a large number of resources are needed, meanwhile, the work such as coding, video transmission and the like is needed, and the resource pressure of the server is high and is not well expanded; secondly, at present, spice does not support simultaneous connection of multiple clients, but in some situations, the multiple clients need to cooperate with a screen, and if the multiple clients are implemented by installing separate software on a virtual machine, the utilization rate of resources is low.
The specific steps of the general workflow of the cloud desktop are as follows: 1. the purpose of the cloud desktop is to enable a user to use a PC through a client, so that a virtual machine corresponding to the client is created first. 2. A virtual machine is created on a virtual machine server through the QEMU-KVM technology, and the virtual machine is a process for the server. 3. The virtual machine is invisible to the user and cannot be operated, so that the mouse operation is realized through QXL and spice, just like an actual PC is operated. 4. Each virtual machine has a QXL drive, and the desktop image data of the virtual machine is captured through the QXL drive, and the desktop data needs to be refreshed, that is, multiple frames are collected every second, which means that the refresh rate is the frame rate, the higher the frame rate, the smaller the pixel movement between each frame rate, and the smoother the moving image looks. 5. The original image data is subjected to a series of operations such as libspice encoding (similar compression, transmission amount reduction), and then the data is sent to the client through channel. 6. The client receives the data, decodes the data (similar to decompression), renders the data through physical hardware of the thin client, and then displays the data on a display, so that a user can see a desktop picture of the virtual machine. 7. In addition to looking at the user, the user needs to click a mouse and keyboard to input, and the mouse operations are captured through a service-client and sent to libservice through a channel. 8. Each virtual machine, besides the QXL driver for the virtual device for display, also has virtual keyboard and mouse devices, and libspice processes the key mouse operation and then transfers the key mouse operation to the QEMU, and then sends the key mouse operation to the corresponding device driver on the virtual machine, so that the remote operation is like the local operation.
In summary, the implementation of the cloud desktop relies on the virtualization technology of the server. Virtualization technology (Virtualization) generally creates a cloud desktop virtual machine on a server, abstracts computing resources, provides resources to required components on the one hand, and maps the resources to physical hardware on the other hand. However, creating a large number of desktop virtual machines on the server requires a large amount of resources, and the desktop virtual machines also need to do work such as coding, video transmission, and the like, so that the resource pressure of the server side is high and is not well expanded.
Based on the above, the application provides a video transmission method of a cloud desktop, which is characterized in that a streaming media server is independently deployed, desktop image data generated by a plurality of cloud desktop virtual machines are firstly transmitted to the streaming media server to be stored, then the desktop image data are sent to corresponding clients through a streaming media technology, multiplexing of the virtual machine image data is increased by maintaining a small number of stable channels between streaming media instead of frequent connection between the clients, interactive operation is reduced, and resource pressure of the virtual machine server is further reduced; the streaming media server can acquire desktop image data of the virtual machine server at regular time and buffer the desktop image data, and the streaming media server is like a plurality of clients which are connected with the virtual machine server, and is similar to a virtual machine pool, so that when a new client is connected, the virtual machine image data in the virtual machine pool can be acquired only through pulling, the response time is reduced, a new group of channels are not required to be established, and the streaming media server is convenient for transverse expansion; meanwhile, as each virtual machine has cache data in the streaming media server, the effect is better when the user switches different virtual machines.
Referring to fig. 3, fig. 3 shows a video transmission method of a cloud desktop, which is applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; specifically, the video transmission method includes the following steps S301 to S303:
s301, when the desktop virtual machine detects that a preset desktop updating condition is met, the generated desktop image data are sent to a streaming media server; the desktop image data carries identification information of the desktop virtual machine;
s302, after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
s303, the streaming media server sends the target desktop image data stored in the target preset streaming media address to the first target client according to the association relation between the preset client and the preset streaming media address.
Fig. 4 illustrates a schematic structural diagram of a cloud desktop service platform in an embodiment of the present application; in the embodiment of the present application, the virtual machine server 401: refers to a physical server for creating and running virtual machine related services such as virtual machines. A plurality of desktop virtual machines can be created on the virtual machine server 401, and each desktop virtual machine has a corresponding QXL device and QXL driver; the QXL is driven in the virtual machine process, and the QXL device is in the QEMU process. In other words, each desktop virtual machine corresponds to a QXL device, which refers to a virtually standard virtual graphics card when SPICE is used.
In the embodiment of the present application, the connection between the desktop virtual machine and the streaming media server 402 is implemented through a service-agent. The spice-agent comprises a first spice-agent module and a second spice-agent module. The spice-agent may also be simply referred to as an agent.
In this embodiment of the present application, libspice on the virtual machine server 401 in the prior art is replaced and defined as a first spice-agent module; here, the first service-agent module may be understood to include a part of libservice functions plus a custom function library, where the first service-agent module is used to obtain the original desktop image data in the QXL device.
In this embodiment, the streaming media server 402 also has a service-agent module, named as a second service-agent module, and a long connection is maintained between each streaming media server 402 and the corresponding virtual machine server 401 through the first service-agent module and the second service-agent module.
Here, if the server performance is sufficient, both the virtual machine service and the streaming media service can be deployed on one physical server. But for the sake of structural clarity and better expansion, a server will only be used for a specific class of services (e.g. common file servers, database servers, etc.), which when referring to a server is meant to be the service above it.
The first and second spice-agent modules can understand that for two servers a and B, a virtual machine can be created by deploying KVM on server a, and a streaming service is deployed on server B, where the two times are not linked. The agent is used for connecting the virtual machine and the streaming media service, that is, the communication between the server A and the server B is proxy by the agent. Here, the agents are spice-agents, including a first spice-agent module and a second spice-agent module. The interaction and conversion process before the first and second spice-agent modules can be implemented through a custom function library.
The streaming server 402 is actually configured to deploy a service-server separately, and separate the virtual machine and the video code for transmission through a network by using streaming technology. When a plurality of streaming media servers 402 exist, a cluster of streaming media servers 402 can be formed through tools such as keepalive, so that performance bottlenecks can be better expanded transversely when virtual machines are increased.
The streaming media server 402 may have a plurality of servers, and one server is exposed to the outside in a cluster manner, for example, it is known to access a hundred-degree search service through www.baidu.com, but there are a lot of servers in the other server for processing a large number of requests. The client 403 may be connected to one streaming server 402 at the same time, and is limited by hardware resources of the streaming server 402, such as CPU, memory, storage space, network bandwidth, and the like.
The client 403 in this embodiment of the present application is also referred to as a thin terminal, a thin terminal device, a terminal device, a user terminal, or the like.
In step S301, when the desktop virtual machine detects that a preset desktop update condition is satisfied, the generated desktop image data is sent to a streaming media server; the desktop image data carries identification information of the desktop virtual machine.
The desktop virtual machine detecting that the preset desktop updating condition is met comprises the following steps:
the desktop virtual machine detects that the preset refreshing time of the desktop virtual machine in the current working mode is reached, and/or the desktop virtual machine receives a refreshing command sent by a streaming media server; the desktop virtual machines have different working states, and the preset refreshing time periods are different and/or the desktop image resolutions sent to the streaming media server are different.
The sleep mode is set for the service-agent in view of the loss of resources that would occur if the client is used less frequently, i.e., when there are few client users accessing the virtual machine, if a large amount of data transfer is still maintained between the streaming server and the virtual machine server. In the sleep mode, that is, when the state of the corresponding virtual machine is not active, the service-agent may reduce the quality and frame rate of the desktop image (for example, 1080P60 frames are changed to 720P4 frames); when a new client is connected, a desktop image with lower quality can be obtained at first but can be used normally, meanwhile, the virtual machine is marked to be in an active state, the service-agent improves image data acquisition, the desktop image quality and the frame rate are increased, and therefore a user can obtain a progressive effect in a short time, and normal use of the user is met. When the client is closed, the virtual machine state returns to the idle state, and the service-agent enters the sleep mode.
Here, a plurality of groups of acquisition parameters are preconfigured in the desktop virtual machine; when the desktop virtual machine detects that the client side meets the preset frequency condition, the desktop virtual machine acquires desktop image data according to acquisition parameters corresponding to the preset frequency condition;
the desktop virtual machine detects that the client side meets a preset frequency condition and at least comprises one of the following steps: the desktop virtual machine detects that a client accesses the desktop virtual machine, the desktop virtual machine detects that an operation command of the client is received within a first preset time period, and the desktop virtual machine detects that connection is established with the client and keeps connection within a second preset time period.
Here, the desktop virtual machine acquires desktop image data according to acquisition parameters corresponding to preset frequency conditions, that is, the service-agent acquires desktop image data, specifically, the first service-agent module acquires original desktop image data from QXL equipment corresponding to the desktop virtual machine. The desktop virtual machine is preconfigured with a plurality of groups of acquisition parameters, namely the first spice-agent module is preconfigured with a plurality of groups of acquisition parameters, each group of acquisition parameters corresponds to one state of the client, and the acquisition frame rate and the image resolution in each group of acquisition parameters are different.
According to the desktop virtual machine detecting that the client side meets the preset frequency condition, the acquisition state of the desktop virtual machine can be divided into an active state and a dormant state; that is to say: 1. if one desktop virtual machine has no client access, the desktop virtual machine is in a dormant state, otherwise, the desktop virtual machine is in an active state; 2. if one desktop virtual machine does not receive any operation command for a long time (can be manually set, for example, 30 min), the desktop virtual machine is in a dormant state, and if the desktop virtual machine receives the operation command, the desktop virtual machine is in an active state; 3. the desktop virtual machine is in a dormant state (which is understood to be an unstable state at this time, and many people may simply preview and not necessarily use it) before the first connection or the desktop virtual machine is switched, and is changed to an active state without being disconnected for a certain period of time (e.g., 3-5 seconds).
When the service-agent is notified that the corresponding virtual machine is in the dormant state, the acquisition parameters corresponding to the virtual machine are reduced, and the data transmitted to the streaming media server are reduced, so that the quality of the picture displayed after the client acquires is reduced.
In this embodiment of the present application, when detecting that a preset desktop update condition is met, the desktop virtual machine sends generated desktop image data to a streaming media server, including:
When the desktop virtual machine detects that a preset desktop updating condition is met, encoding the generated desktop image data according to a first encoding rule configured in advance so as to compress the desktop image data;
the desktop virtual machine converts the encoded desktop image data into desktop image data in a first target format through a pre-configured transmission protocol, and sends the desktop image data in the first target format to a streaming media server.
That is, the first point-agent module compresses desktop image data in the QXL device and sends the compressed desktop image data to the streaming media server.
Correspondingly, after receiving the compressed desktop image data in the first target format, the streaming media server decompresses the desktop image data in the first target format.
In the step S301, the identification information of the desktop virtual machine is recorded information of some virtual machines, such as ID, name, IP, port of the virtual machine, etc., when the virtual machine management software creates the virtual machine. When the virtual machine server and the streaming media server communicate, the service-agent can simultaneously correspond the desktop image data of the desktop virtual machine to a certain desktop virtual machine on the virtual machine server and record the desktop image data on a local database.
In step S302, after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; and storing desktop image data sent by different desktop virtual machines in different preset streaming media addresses.
Here, the Streaming media server may push the desktop image data of the desktop virtual machine after obtaining the desktop image data, and assign an rtsp address (for example, rtsp:// admin: 12345@192.168.0.1:554/Streaming/Channels/1) to the desktop image data, which is the rtsp address required by the client to pull the stream afterwards; similarly, the important information is recorded in a local database, and the designated rtsp address and the identification information (such as the ID of the desktop virtual machine) of the desktop virtual machine are associated and bound, so that the desktop image data sent by different desktop virtual machines are sent to the corresponding preset streaming media addresses.
According to the working principle of the virtual machine server, the received desktop image data in the first target format is decompressed to be an original multimedia stream, and the original multimedia stream is required to be transcoded, namely, the original multimedia stream is subjected to secondary encoding so as to obtain desktop image data which is easy to play, easy to transmit and suitable for RTSP push stream because the original multimedia stream has huge volume, high frame number and special format, is unfavorable for playing by a common player and increases network load.
Specifically, after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; comprising the following steps:
after receiving the desktop image data, the streaming media server encodes the desktop image data according to a second encoding rule which is preset to obtain desktop image data in a second target format;
and storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data in the second target format.
Here, the second encoding rule includes decoding and second encoding of the received desktop image data.
In the step S303, the streaming server sends the target desktop image data stored in the target preset streaming address to the first target client according to the association relationship between the preset client and the preset streaming address.
The client is connected with the virtual machine and mainly comprises two functions of 1, obtaining a desktop 2 of the virtual machine and operating a key mouse. And obtaining desktop image data of the desktop virtual machine, and only knowing the rtsp address of the corresponding desktop virtual machine and then carrying out streaming play.
In some embodiments, a web service (tcp service may also be provided on the streaming media server), the client may obtain an available virtual machine list by accessing the web service, where the list includes an ID, a name, an IP, an RTSP address, and the like of the desktop virtual machine, and when the client connects to the desktop virtual machine, an association relationship between the client and a preset streaming media address is established in the streaming media server, so that target desktop image data stored in a target preset streaming media address is sent to the first target client.
For the mouse operation, the client sends a mouse instruction generated according to the mouse operation to the streaming media service, processes the mouse instruction on the spice-agent and forwards the mouse instruction to the virtual machine server. When a mouse command is sent, the ID of the virtual machine is taken as an identifier, and when the streaming media receives the mouse command, different virtual machines can be distinguished through the ID so as to forward the mouse command to the corresponding desktop virtual machine.
Based on this, in the embodiment of the present application, as shown in fig. 5, the video transmission method of the cloud desktop further includes the following steps:
s501, the streaming media server receives and stores a mouse command sent by a client, and processes the mouse command according to a preset command processing rule; the preset command processing rule comprises merging repeated commands and deleting conflict commands; the key mouse command carries a desktop virtual machine identifier;
S502, according to the desktop virtual machine identification in the key mouse command, the processed key mouse command is respectively sent to the desktop virtual machine corresponding to the desktop virtual machine identification.
Specifically, in this embodiment of the present application, a short connection is provided between the client and the streaming media server, and after a plurality of thin terminal devices capture the mouse operation, a mouse command is sent to a second spice-agent module of the streaming media, where the second spice-agent module temporarily stores the command in an instruction tree, and the instruction tree optimizes the instruction first, for example, merges some repeated instructions, deletes conflicting instructions, and so on; and then sending the instruction to a queue, and sequentially sending the queue to a first spice-agent module of the virtual machine server side to finish the operation.
Here, the processing of merging repeated instructions, deleting conflicting instructions, and the like for the mouse commands can further alleviate the stress of the virtual machine server.
At present, spice does not support simultaneous connection of multiple clients, but needs to cooperate with a screen in some scenes, and if the spice is realized by installing separate software on a virtual machine, the utilization rate of resources is low.
Based on this, in the embodiment of the present application, the video transmission method of the cloud desktop further includes the following steps:
The streaming media server responds to receiving a desktop sharing request sent by a second target client and aiming at a first target client, and sends target desktop image data stored in a target preset streaming media address to the second target client while sending the target desktop image data stored in the target preset streaming media address to the first target client;
correspondingly, the streaming media server receives the mouse command which is sent by the first target client and the second target client and carries the same target desktop virtual machine identifier, and forwards the mouse command sent by the first target client and the second target client to the same target desktop virtual machine.
Here, the desktop sharing request may also be an on-screen collaboration request, or the like.
Since the client acquires desktop image data by means of streaming, there is no limit to the number. The client and the streaming media server do not have a strong correspondence in fact, and the streaming media server can be regarded as a server (e.g. baidu), and the client can be regarded as a browser on a desktop. The second target client pulls the data of the first target client, namely the second target client pulls the desktop virtual machine data of the first target client, namely the resources in the streaming media server accessed by the second target client pulling the first target client are the same, namely the same RTSP address; similarly, when the second target client and the first target client send the mouse command, the ID of the same desktop virtual machine is attached, so that the mouse command sent by the second target client and the first target client is forwarded to the corresponding desktop virtual machine.
After receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; comprising the following steps:
after receiving the desktop image data, the streaming media server encodes the desktop image data according to a second encoding rule which is preset to obtain desktop image data in a second target format;
and storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data in the second target format.
In the embodiment of the application, the video transmission device of the cloud desktop is further provided and applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; as shown in fig. 6, the video transmission apparatus includes:
a first sending module 601, configured to send generated desktop image data to a streaming media server when the desktop virtual machine detects that a preset desktop update condition is satisfied; the desktop image data carries identification information of the desktop virtual machine;
The storage module 602 is configured to store, after the streaming media server receives the desktop image data, the desktop image data to a preset streaming media address corresponding to the desktop virtual machine according to identification information carried in the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
and a second sending module 603, configured to enable the streaming media server to send the target desktop image data stored in the target preset streaming media address to the first target client according to the association relationship between the preset client and the preset streaming media address.
In some embodiments, the video transmission device of the cloud desktop further includes:
the processing module is used for enabling the streaming media server to receive and store the mouse command sent by the client, and processing the mouse command according to a preset command processing rule; the preset command processing rule comprises merging repeated commands and deleting conflict commands; the key mouse command carries a desktop virtual machine identifier;
and the third sending module is used for respectively sending the processed mouse commands to the desktop virtual machines corresponding to the desktop virtual machine identifiers according to the desktop virtual machine identifiers in the mouse commands.
In some embodiments, the video transmission device of the cloud desktop further includes:
a fourth sending module, configured to send, when the streaming media server responds to receiving a desktop sharing request for a first target client sent by a second target client, target desktop image data stored in the target preset streaming media address to the first target client, and simultaneously send the target desktop image data stored in the target preset streaming media address to the second target client;
and the forwarding module is used for enabling the streaming media server to receive the mouse command which is sent by the first target client and the second target client and carries the same target desktop virtual machine identifier, and forwarding the mouse command sent by the first target client and the second target client to the same target desktop virtual machine.
In some embodiments, in the video transmission device of the cloud desktop, the desktop virtual machine detects that a preset desktop update condition is met, and specifically includes: the desktop virtual machine detects that the preset refreshing time of the desktop virtual machine in the current working mode is reached, and/or the desktop virtual machine receives a refreshing command sent by a streaming media server; the desktop virtual machines have different working states, and the preset refreshing time periods are different and/or the desktop image resolutions sent to the streaming media server are different.
In some embodiments, the video transmission device of the cloud desktop further includes an acquisition module, configured to, when the desktop virtual machine detects that the client side meets a preset frequency condition, acquire desktop image data according to acquisition parameters corresponding to the preset frequency condition when a plurality of groups of acquisition parameters are preconfigured in the desktop virtual machine;
the desktop virtual machine detects that the client side meets a preset frequency condition and at least comprises one of the following steps: the desktop virtual machine detects that a client accesses the desktop virtual machine, the desktop virtual machine detects that an operation command of the client is received within a first preset time period, and the desktop virtual machine detects that connection is established with the client and keeps connection within a second preset time period.
In some embodiments, a first sending module in the video transmission device is configured to send, when the desktop virtual machine detects that a preset desktop update condition is met, generated desktop image data to a streaming media server, where the first sending module is specifically configured to:
when the desktop virtual machine detects that a preset desktop updating condition is met, encoding the generated desktop image data according to a first encoding rule configured in advance so as to compress the desktop image data;
The desktop virtual machine converts the encoded desktop image data into desktop image data in a first target format through a pre-configured transmission protocol, and sends the desktop image data in the first target format to a streaming media server.
In some embodiments, after the streaming media server receives the desktop image data, the storage module in the video transmission device stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data, where the storage module is specifically configured to:
after the streaming media server receives the desktop image data, encoding the desktop image data according to a second encoding rule which is preset to obtain desktop image data in a second target format;
and storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data in the second target format.
Referring to fig. 7, an embodiment of the present application further provides an electronic device 700, including: the cloud desktop video transmission method comprises a processor 702, a memory 701 and a bus, wherein the memory 701 stores machine-readable instructions executable by the processor 702, when the electronic device 700 is running, the processor 702 and the memory 701 are communicated through the bus, and the machine-readable instructions are executed by the processor 702 to execute the steps of the cloud desktop video transmission method.
The embodiment of the application also provides a computer readable storage medium, and a computer program is stored on the computer readable storage medium, and the computer program is executed by a processor to execute the steps of the video transmission method of the cloud desktop.
It will be clearly understood by those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described system and apparatus may refer to corresponding procedures in the method embodiments, which are not described in detail in this application. In the several embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. The above-described apparatus embodiments are merely illustrative, and the division of the modules is merely a logical function division, and there may be additional divisions when actually implemented, and for example, multiple modules or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some communication interface, indirect coupling or communication connection of devices or modules, electrical, mechanical, or other form.
The modules described as separate components may or may not be physically separate, and components shown as modules may or may not be physical units, may be located in one place, or may be distributed over multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
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 non-volatile computer readable storage medium executable by a processor. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a platform server, or a network device, etc.) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk, etc.
The foregoing is merely a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think about changes or substitutions within the technical scope of the present application, and the changes or substitutions are covered in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (7)
1. The video transmission method of the cloud desktop is characterized by being applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; the video transmission method comprises the following steps:
when the desktop virtual machine detects that the preset desktop updating condition is met, the generated desktop image data are sent to a streaming media server; the desktop image data carries identification information of the desktop virtual machine; the desktop virtual machine detecting that the preset desktop updating condition is met comprises the following steps: the desktop virtual machine detects that the preset refreshing time of the desktop virtual machine in the current working mode is reached, and/or the desktop virtual machine receives a refreshing command sent by a streaming media server; the desktop virtual machines have different working states, the preset refreshing time periods are different and/or the desktop image resolutions sent to the streaming media server are different; a plurality of groups of acquisition parameters are preconfigured in the desktop virtual machine; when the desktop virtual machine detects that the client side meets the preset frequency condition, the desktop virtual machine acquires desktop image data according to acquisition parameters corresponding to the preset frequency condition; the desktop virtual machine detects that the client side meets a preset frequency condition and at least comprises one of the following steps: the method comprises the steps that the desktop virtual machine detects that a client accesses, the desktop virtual machine detects that an operation command of the client is received within a first preset time period, and the desktop virtual machine detects that connection is established with the client and is kept in connection within a second preset time period;
After receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
the streaming media server sends target desktop image data stored in a target preset streaming media address to a first target client according to the association relation between a preset client and a preset streaming media address;
the streaming media server responds to receiving a desktop sharing request sent by a second target client and aiming at a first target client, and sends target desktop image data stored in a target preset streaming media address to the second target client while sending the target desktop image data stored in the target preset streaming media address to the first target client;
and the streaming media server receives the mouse command which is sent by the first target client and the second target client and carries the same target desktop virtual machine identifier, and forwards the mouse command sent by the first target client and the second target client to the same target desktop virtual machine.
2. The video transmission method of a cloud desktop according to claim 1, further comprising the steps of:
the streaming media server receives and stores a mouse command sent by a client, and processes the mouse command according to a preset command processing rule; the preset command processing rule comprises merging repeated commands and deleting conflict commands; the key mouse command carries a desktop virtual machine identifier;
and according to the desktop virtual machine identification in the key mouse command, respectively sending the processed key mouse command to the desktop virtual machine corresponding to the desktop virtual machine identification.
3. The video transmission method of a cloud desktop according to claim 1, wherein the sending, by the desktop virtual machine, the generated desktop image data to the streaming media server when detecting that a preset desktop update condition is satisfied, includes:
when the desktop virtual machine detects that a preset desktop updating condition is met, encoding the generated desktop image data according to a first encoding rule configured in advance so as to compress the desktop image data;
the desktop virtual machine converts the encoded desktop image data into desktop image data in a first target format through a pre-configured transmission protocol, and sends the desktop image data in the first target format to a streaming media server.
4. The video transmission method of a cloud desktop according to claim 1, wherein after receiving the desktop image data, the streaming media server stores the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to identification information carried in the desktop image data; comprising the following steps:
after receiving the desktop image data, the streaming media server encodes the desktop image data according to a second encoding rule which is preset to obtain desktop image data in a second target format;
and storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data in the second target format.
5. The video transmission device of the cloud desktop is characterized by being applied to a cloud desktop service platform, wherein the cloud desktop service platform comprises a virtual machine server and a streaming media server, and a desktop virtual machine is arranged on the virtual machine server; the video transmission device includes:
the first sending module is used for sending the generated desktop image data to the streaming media server when the desktop virtual machine detects that the preset desktop updating condition is met; the desktop image data carries identification information of the desktop virtual machine; the desktop virtual machine detecting that the preset desktop updating condition is met comprises the following steps: the desktop virtual machine detects that the preset refreshing time of the desktop virtual machine in the current working mode is reached, and/or the desktop virtual machine receives a refreshing command sent by a streaming media server; the desktop virtual machines have different working states, the preset refreshing time periods are different and/or the desktop image resolutions sent to the streaming media server are different; a plurality of groups of acquisition parameters are preconfigured in the desktop virtual machine; when the desktop virtual machine detects that the client side meets the preset frequency condition, the desktop virtual machine acquires desktop image data according to acquisition parameters corresponding to the preset frequency condition; the desktop virtual machine detects that the client side meets a preset frequency condition and at least comprises one of the following steps: the method comprises the steps that the desktop virtual machine detects that a client accesses, the desktop virtual machine detects that an operation command of the client is received within a first preset time period, and the desktop virtual machine detects that connection is established with the client and is kept in connection within a second preset time period;
The storage module is used for storing the desktop image data into a preset streaming media address corresponding to the desktop virtual machine according to the identification information carried in the desktop image data after the streaming media server receives the desktop image data; the desktop image data sent by different desktop virtual machines are stored in different preset streaming media addresses;
the second sending module is used for enabling the streaming media server to send target desktop image data stored in a target preset streaming media address to a first target client according to the association relation between the preset client and the preset streaming media address; the streaming media server responds to receiving a desktop sharing request sent by a second target client and aiming at a first target client, and sends target desktop image data stored in a target preset streaming media address to the second target client while sending the target desktop image data stored in the target preset streaming media address to the first target client; and the streaming media server receives the mouse command which is sent by the first target client and the second target client and carries the same target desktop virtual machine identifier, and forwards the mouse command sent by the first target client and the second target client to the same target desktop virtual machine.
6. An electronic device, comprising: a processor, a memory and a bus, the memory storing machine-readable instructions executable by the processor, the processor and the memory in communication over the bus when the electronic device is running, the machine-readable instructions when executed by the processor performing the steps of the video transmission method of a cloud desktop as claimed in any one of claims 1 to 4.
7. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a computer program which, when executed by a processor, performs the steps of the video transmission method of a cloud desktop as claimed in any one of claims 1 to 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210672302.8A CN115052043B (en) | 2022-06-14 | 2022-06-14 | Video transmission method, electronic equipment, device and medium of cloud desktop |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210672302.8A CN115052043B (en) | 2022-06-14 | 2022-06-14 | Video transmission method, electronic equipment, device and medium of cloud desktop |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115052043A CN115052043A (en) | 2022-09-13 |
CN115052043B true CN115052043B (en) | 2024-03-29 |
Family
ID=83160572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210672302.8A Active CN115052043B (en) | 2022-06-14 | 2022-06-14 | Video transmission method, electronic equipment, device and medium of cloud desktop |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115052043B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116069433B (en) * | 2023-03-08 | 2023-07-04 | 山东乾云启创信息科技股份有限公司 | Image drifting method and system based on virtual desktop infrastructure and action recognition |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307153A (en) * | 2011-10-14 | 2012-01-04 | 王宁 | Virtual desktop transmission device and method |
CN103873568A (en) * | 2014-03-04 | 2014-06-18 | 赛特斯信息科技股份有限公司 | System and method for realizing remote virtual desktop display based on cloud computing |
CN103956145A (en) * | 2014-03-27 | 2014-07-30 | 深圳市中兴移动通信有限公司 | Terminal display mode determining method and apparatus |
CN105072190A (en) * | 2015-08-21 | 2015-11-18 | 刘昌平 | Method and system for realizing real-time desktop cloud |
WO2015188575A1 (en) * | 2014-06-11 | 2015-12-17 | 中兴通讯股份有限公司 | Video data providing method, video playback method, device, and system |
CN105577819A (en) * | 2016-01-26 | 2016-05-11 | 杭州碧创科技有限公司 | Sharing system, sharing method and sharing device for virtual desktop |
CN106648670A (en) * | 2016-12-27 | 2017-05-10 | 广州杰赛科技股份有限公司 | Co-controlling system and method of cloud classroom on same screen |
CN106933526A (en) * | 2017-03-10 | 2017-07-07 | 广东欧珀移动通信有限公司 | A kind of method of dynamic regulation screen refresh rate, device and mobile terminal |
CN109495573A (en) * | 2018-11-26 | 2019-03-19 | Oppo广东移动通信有限公司 | Data transmission method, device, storage medium and terminal |
CN113254130A (en) * | 2021-05-13 | 2021-08-13 | 贵州海誉科技股份有限公司 | Method for adaptively adjusting resolution of cloud desktop |
CN113362783A (en) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | Refresh rate switching method and electronic equipment |
CN113963659A (en) * | 2020-07-21 | 2022-01-21 | 华为技术有限公司 | Adjusting method of display equipment and display equipment |
WO2022068671A1 (en) * | 2020-09-30 | 2022-04-07 | 中兴通讯股份有限公司 | Cloud desktop display method and system |
-
2022
- 2022-06-14 CN CN202210672302.8A patent/CN115052043B/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307153A (en) * | 2011-10-14 | 2012-01-04 | 王宁 | Virtual desktop transmission device and method |
CN103873568A (en) * | 2014-03-04 | 2014-06-18 | 赛特斯信息科技股份有限公司 | System and method for realizing remote virtual desktop display based on cloud computing |
CN103956145A (en) * | 2014-03-27 | 2014-07-30 | 深圳市中兴移动通信有限公司 | Terminal display mode determining method and apparatus |
WO2015188575A1 (en) * | 2014-06-11 | 2015-12-17 | 中兴通讯股份有限公司 | Video data providing method, video playback method, device, and system |
CN105072190A (en) * | 2015-08-21 | 2015-11-18 | 刘昌平 | Method and system for realizing real-time desktop cloud |
CN105577819A (en) * | 2016-01-26 | 2016-05-11 | 杭州碧创科技有限公司 | Sharing system, sharing method and sharing device for virtual desktop |
CN106648670A (en) * | 2016-12-27 | 2017-05-10 | 广州杰赛科技股份有限公司 | Co-controlling system and method of cloud classroom on same screen |
CN106933526A (en) * | 2017-03-10 | 2017-07-07 | 广东欧珀移动通信有限公司 | A kind of method of dynamic regulation screen refresh rate, device and mobile terminal |
CN109495573A (en) * | 2018-11-26 | 2019-03-19 | Oppo广东移动通信有限公司 | Data transmission method, device, storage medium and terminal |
CN113362783A (en) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | Refresh rate switching method and electronic equipment |
CN113963659A (en) * | 2020-07-21 | 2022-01-21 | 华为技术有限公司 | Adjusting method of display equipment and display equipment |
WO2022068671A1 (en) * | 2020-09-30 | 2022-04-07 | 中兴通讯股份有限公司 | Cloud desktop display method and system |
CN113254130A (en) * | 2021-05-13 | 2021-08-13 | 贵州海誉科技股份有限公司 | Method for adaptively adjusting resolution of cloud desktop |
Non-Patent Citations (4)
Title |
---|
"remote display solutions for mobile cloud computing";p simoens;《IEEE》;20110303;全文 * |
云桌面技术架构与发展研究";朱孔村;《科学技术创新》;全文 * |
冯健等."基于视频流的云桌面设计与实现".《计算机工程》.2013,全文. * |
刘子杰."基于SPICE协议的虚拟桌面技术研究".《中国优秀硕士学位论文全文数据库》.2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115052043A (en) | 2022-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8433747B2 (en) | Graphics remoting architecture | |
EP2510454B1 (en) | Systems and methods for a client-side remote presentation of a multimedia stream | |
US8131816B2 (en) | Methods and apparatus for generating graphical and media displays at a client | |
TWI521939B (en) | System and method for low bandwidth display information transport | |
CN101238457B (en) | Remote protocol support for communication of large objects in arbitrary format | |
WO2019114185A1 (en) | App remote control method and related devices | |
US20110141123A1 (en) | Push Pull Adaptive Capture | |
US20130011064A1 (en) | Data compression of images using a shared dictionary | |
US20140285502A1 (en) | Gpu and encoding apparatus for virtual machine environments | |
US20120236199A1 (en) | Information processing apparatus, image transmitting program, image transmitting method and image display method | |
EP3311565B1 (en) | Low latency application streaming using temporal frame transformation | |
CN104660687A (en) | Realization method and system for virtual desktop display | |
KR20120106778A (en) | Methods for interfacing with a virtualized computing service over a network using a lightweight client | |
US9235452B2 (en) | Graphics remoting using augmentation data | |
US20230215076A1 (en) | Image frame display method, apparatus, device, storage medium, and program product | |
US11044486B2 (en) | Split framebuffer encoding | |
CN103412701A (en) | Method and device for processing remote desktop images | |
TW201212632A (en) | System and method for efficiently streaming digital video | |
CN115052043B (en) | Video transmission method, electronic equipment, device and medium of cloud desktop | |
CN115550687A (en) | Three-dimensional model scene interaction method, system, equipment, device and storage medium | |
Lee et al. | FLUID-XP: Flexible user interface distribution for cross-platform experience | |
US8671213B2 (en) | Methods and apparatus for generating graphical and media displays at a client | |
CN115174917A (en) | H264-based video display method and device | |
EP1821490A1 (en) | Method for transmitting graphical data to a thin client | |
US10223997B2 (en) | System and method of leveraging GPU resources to increase performance of an interact-able content browsing service |
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 |