CN114598931A - Streaming method, system, device and medium for multi-open cloud game - Google Patents

Streaming method, system, device and medium for multi-open cloud game Download PDF

Info

Publication number
CN114598931A
CN114598931A CN202210227396.8A CN202210227396A CN114598931A CN 114598931 A CN114598931 A CN 114598931A CN 202210227396 A CN202210227396 A CN 202210227396A CN 114598931 A CN114598931 A CN 114598931A
Authority
CN
China
Prior art keywords
cloud game
virtual
streaming
cloud
client
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
CN202210227396.8A
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.)
Hangzhou Wulian Technology Co ltd
Original Assignee
Hangzhou Wulian Technology 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 Hangzhou Wulian Technology Co ltd filed Critical Hangzhou Wulian Technology Co ltd
Priority to CN202210227396.8A priority Critical patent/CN114598931A/en
Publication of CN114598931A publication Critical patent/CN114598931A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The application discloses a streaming method, a streaming system, a streaming device and a streaming medium for a multi-open cloud game.A host computer end distributes host computer resources for each cloud game according to a cloud game starting request to start the cloud game and distributes corresponding virtual equipment for each cloud game when receiving the cloud game starting request of a client; binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with the corresponding streaming program; and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client. According to the cloud game system, the host machine end distributes host machine resources for each cloud game to realize multi-opening of the host machine resources, required virtual equipment is distributed for each cloud game, cloud game data in the corresponding virtual equipment are obtained through a series flow program to be transmitted to the corresponding client side, the multi-opening of the cloud game at the host machine end is guaranteed, meanwhile, a virtual machine mirror image does not need to be installed at the host machine end, the host machine resources are saved, and the concurrency number of a single machine is increased.

Description

Streaming method, system, device and medium for multi-open cloud game
Technical Field
The present application relates to the field of cloud games, and in particular, to a streaming method, system, device and medium for a multi-open cloud game.
Background
With the development of 5G networks, encoding and decoding technologies and software and hardware technologies, innovative services such as cloud game systems gradually enter the field of view of the public, and certain development is achieved. The cloud game is different from the traditional game, is a game implementation mode based on cloud computing, cloud control, rendering and network transmission, and enables computing power to be increased, and the game is really operated on a host computer end of a cloud edge computer node instead of a local client of a user. The client terminal locally presents game sound and pictures by receiving audio and video data sent by the host terminal, and simultaneously, the user sends operation control data of the game to the host terminal to control the game.
However, the cost of the cloud game is high, the cost is mainly caused by hardware and traffic, and how to increase the maximum concurrency of a single machine and obtain more clients and traffic becomes a main direction of the development of the cloud game. At present, the solution of improving the maximum concurrency of a single machine in a cloud game is through cloud game virtualization, and mainly includes that a host machine utilizes a virtual machine to realize CPU/GPU virtualization, resource utilization is maximized, different virtual machines are virtualized according to different game scenes, resource granularity is subdivided, and cost is minimized as much as possible. However, the virtualization scheme of the virtual machine itself needs to install a virtual machine image on the host, each virtual machine has an independent operating system, and needs to occupy certain resources, and the virtual machine limits the experience of the cloud game.
Therefore, it is an urgent need to solve the problem of how to utilize the cloud host resources to a greater extent and increase the concurrency of a single machine by those skilled in the art.
Disclosure of Invention
The application aims to provide a streaming method, a streaming system, a streaming device and a streaming medium of a multi-open cloud game, which are used for utilizing cloud host resources to the maximum extent and improving the concurrency of a single machine.
In order to solve the above technical problem, the present application provides a streaming method for a multi-open cloud game, which is applied to a host side, and includes:
when a cloud game starting request of a client is received, allocating host resources for each cloud game according to the cloud game starting request to start the cloud game, and allocating corresponding virtual equipment for each cloud game;
binding the game progress of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with a streaming program;
capturing cloud game data in the corresponding virtual equipment through the streaming program, and transmitting the cloud game data to the corresponding client.
Preferably, the allocating host resources for each cloud game according to the cloud game start request to start the cloud game includes:
determining the cloud game opening number according to the cloud game opening request;
and averagely distributing total host resources to each cloud game according to the cloud game multi-opening number so as to open the cloud game.
Preferably, the allocating host resources for each cloud game according to the cloud game start request to start the cloud game includes:
determining resources required by each cloud game according to the cloud game starting request;
and allocating the host resources to each cloud game according to the resources required by each cloud game so as to start the cloud game.
Preferably, before allocating the corresponding virtual device to each cloud game, the method further includes:
virtualizing the virtual display and the virtual sound card with the same number according to the number of the cloud games;
and acquiring input equipment information of the client, and creating corresponding virtual input equipment according to the input equipment information.
Preferably, the associating the virtual device with a streaming program includes:
recording identification information of each virtual display, each virtual sound card and each virtual input device;
binding the identification information with the streaming program to associate the virtual device with the streaming program; wherein the virtual device comprises the virtual display, the virtual sound card, and the virtual input device.
Preferably, the capturing, by the streaming program, cloud game data in the corresponding virtual device and transmitting the cloud game data to the corresponding client includes:
capturing cloud game video data of the virtual display corresponding to the identification information and cloud game audio data of the virtual sound card corresponding to the identification information respectively through the streaming program;
encoding the cloud game video data to generate a video code stream, and encoding the cloud game audio data to generate an audio code stream;
and transmitting the video code stream and the audio code stream to the corresponding client through network transmission.
Preferably, after the transmitting the cloud game data to the corresponding client, the method further includes:
acquiring cloud game operation data of input equipment of the client;
sending the cloud game operation data to the corresponding virtual input equipment through the streaming program corresponding to the client;
and the virtual input equipment feeds back the cloud game operation data to the corresponding game process of the cloud game.
The present application further provides a streaming system of a multi-open cloud game, which is applied to a host side, and includes:
the cloud game starting method comprises the steps that when a cloud game starting request of a client is received, a host resource is allocated to each cloud game according to the cloud game starting request so as to start the cloud game, and corresponding virtual equipment is allocated to each cloud game;
the association module is used for binding the game progress of each cloud game to the corresponding virtual equipment and associating the virtual equipment with a streaming program;
and the transmission module is used for capturing the corresponding cloud game data in the virtual equipment through the streaming program and transmitting the cloud game data to the corresponding client.
The application also provides a streaming device of the multi-open cloud game, which comprises a memory, a streaming module and a streaming module, wherein the memory is used for storing a computer program;
and the processor is used for realizing the steps of the streaming method of the multi-open cloud game when executing the computer program.
The present application further provides a computer-readable storage medium, on which a computer program is stored, which, when executed by a processor, implements the steps of the streaming method for a multi-open cloud game.
The streaming method of the multi-open cloud game is applied to a host, when a cloud game starting request of a client is received, host resources are distributed to each cloud game according to the cloud game starting request to start the cloud game, and corresponding virtual equipment is distributed to each cloud game; binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with the corresponding streaming program; and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client. Compared with the method that multiple client terminals are connected to the same host to start different cloud games through virtual machines, the host terminals distribute host resources for each cloud game to realize the purpose that the host resources are opened more, required virtual equipment is distributed for each cloud game, cloud game data in the corresponding virtual equipment are obtained through a streaming program to be transmitted to the corresponding client terminals, the cloud games are opened more at the host terminals, the virtual machine mirror images do not need to be installed at the host terminals, the host resources can be saved, and the highest concurrency of a single machine is improved.
The streaming system, device, medium and method for multi-cloud games provided by the present application correspond to the above-mentioned effects.
Drawings
In order to more clearly illustrate the embodiments of the present application, the drawings needed for the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings can be obtained by those skilled in the art without inventive effort.
Fig. 1 is a flowchart of a streaming method for a multi-open cloud game according to an embodiment of the present disclosure;
fig. 2 is a block diagram of a streaming system for a multi-cloud game according to an embodiment of the present disclosure;
fig. 3 is a structural diagram of a streaming device of a multi-open cloud game according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without any creative effort belong to the protection scope of the present application.
The core of the application is to provide a streaming method, a streaming system, a streaming device and a streaming medium for a multi-open cloud game.
In order that those skilled in the art will better understand the disclosure, the following detailed description will be given with reference to the accompanying drawings.
Fig. 1 is a flowchart of a streaming method of a multi-open cloud game according to an embodiment of the present disclosure. As shown in fig. 1, the streaming method of the multi-open cloud game includes:
s10: when a cloud game starting request of a client is received, allocating host resources for each cloud game according to the cloud game starting request to start the cloud game, and allocating corresponding virtual equipment for each cloud game;
s11: binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with the streaming program;
s12: and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client.
To understand the present solution more clearly, a simple introduction is first made to the streaming system of the cloud game. The streaming system mainly comprises a host and a client, wherein the client mainly comprises the following functional modules: network, playing interface, dispatcher, rtt and time difference measurement, image, sound, keyboard and mouse, USB peripheral and the like. The host terminal has the following functional modules: window session change monitoring, dispatcher, statistics, images, sound, keyboard mouse, USB. The client establishes network connection with the host, receives video images and sound data of the host through a network, calls a corresponding module to decode, display and play, locally presents sound and pictures of a remote cloud game in real time, calls a keyboard, a mouse and a USB peripheral redirection module, and sends operation data of client input equipment to the host, wherein the input equipment comprises: microphone, handle, mouse, keyboard, etc. (device type and access mode are not distinguished). The host end comprises a desktop service and a desktop worker, is mainly responsible for capturing and coding and compressing sound and video of the cloud game, respectively sends the sound and video to corresponding streaming clients through a network, receives and analyzes operation data of input equipment of the clients, and operates the cloud game in real time. The host is also responsible for opening more host resources and managing multiple paths of users on the host, and the host is independent and not influenced mutually. The desktop service is responsible for the opening of host resources, the network connection of the client, the management of multiple users of the client and the distribution of streaming data. Each desktop worker corresponds to one path of streaming, data is distributed by the desktop service, and the client and the desktop worker process are associated through ID information when the client is connected and authenticated. The desktop worker is mainly responsible for realizing the basic functions of the streaming host end, and the functional modules are as follows: calling a video module, performing screen capture and coding on a video, and forwarding code stream data to a client through a desktop service; calling an audio module, collecting and coding audio data, and forwarding code stream data to a client through a desktop service; and acquiring peripheral data of a keyboard, a mouse and a USB of the client and calling a relevant module for processing.
In step S10, the host resources include GPU, CPU, memory, storage, etc. since the different streams on the same host are not isolated, in order to limit resource competition among each other, the resources used by different games are limited by resource allocation, and can be independent from each other without affecting each other. The cloud game starting request received from the client may be that one or more clients initiate cloud game starting requests, the resource allocation may be to divide the total host resources equally, or may be to assign the allocation according to the cloud game needs of the user. After the cloud game is started, corresponding virtual equipment is allocated to each game, and the virtual equipment comprises a virtual display, a virtual sound card, virtual input equipment and the like.
In step S11, binding each game process to a corresponding virtual device, and associating the virtual device with a corresponding streaming program; the streaming programs are in one-to-one correspondence with the clients, and may be that ID information of the clients is acquired when the clients and the host are authenticated, and the ID information of the clients is associated with the streaming programs, where one client corresponds to one streaming program, that is, a cloud game of each client has a corresponding streaming program, and each streaming program is also associated with a corresponding virtual device.
In step S12, the cloud game data includes video data, audio data, and the like of the cloud game, which is not specifically limited in this embodiment of the present application. One cloud game corresponds to a plurality of virtual devices, a plurality of virtual devices correspond to a streaming program, one streaming program corresponds to one client, and the streaming program captures cloud game data in the corresponding virtual devices, so that the cloud game data can be transmitted to the corresponding clients through network transmission.
The streaming method for the multi-open cloud game is applied to a host, and when a cloud game opening request of a client is received, host resources are allocated to each cloud game according to the cloud game opening request to open the cloud game, and corresponding virtual equipment is allocated to each cloud game; binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with the corresponding streaming program; and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client. Compared with the method that multiple client sides are connected to the same host to start different cloud games through virtual machines, the host side of the cloud game system can distribute host resources for each cloud game to achieve multi-opening of the host resources, and can distribute required virtual equipment for each cloud game, cloud game data in corresponding virtual equipment are obtained through a streaming program to be transmitted to corresponding client sides, and when the multi-opening of the cloud game at the host side is guaranteed, the cloud game system does not need to install virtual machine images at the host side, host resources can be saved, and concurrency of a single machine is improved.
Based on the foregoing embodiment, the allocating host resources to each cloud game according to a cloud game opening request to open the cloud game in the embodiment of the present application includes: determining the number of the cloud games which are opened more according to the cloud game opening request; and averagely distributing the total host resources to each cloud game according to the cloud game multi-opening number so as to open the cloud game. Or determining the resources required by each cloud game according to the cloud game starting request; and allocating host resources for each cloud game according to the resources required by each cloud game to start the cloud game.
In the embodiment of the application, the number of cloud games which are opened more is determined according to the opening request of the cloud games, and the total host resources are averagely distributed to each cloud game resource according to the number of the cloud games which are opened more, for example, one host receives the cloud game requests of two clients at the same time, namely, two games are opened at the same time for users to play, the host resources are divided into two, and the two games are opened; it is also possible to allocate host resources for each cloud game according to the needs of the respective cloud game. The particular manner in which host resources are allocated for each cloud game may be contingent.
Based on the above embodiment, before allocating the corresponding virtual device to each cloud game, the method in the embodiment of the present application further includes: virtualizing the virtual display and the virtual sound card with the same number according to the number of the cloud games; and acquiring input equipment information of the client, and creating corresponding virtual input equipment according to the input equipment information.
In the application, if the host is not provided with the virtual display, the virtual sound card and the virtual input equipment, the virtual display and the virtual sound card with the same number can be virtualized according to the number of the cloud games. Regarding the input devices including a keyboard, a mouse, a handle, and a microphone, since not all users of the clients use the input devices, some clients may use the keyboard and the mouse, and do not use the handle, a virtual input device may be created based on the input device information of each client.
Based on the foregoing embodiments, the associating the virtual device with the streaming program in the embodiments of the present application includes: recording identification information of each virtual display, each virtual sound card and each virtual input device; binding the identification information with the streaming program so as to associate the virtual device with the streaming program; the virtual device comprises a virtual display, a virtual sound card and a virtual input device.
In the embodiment of the application, one host virtualizes a plurality of virtual displays, and for each virtual display, records identification information of the virtual display, where the identification information may be information such as ID, DisplayRect, workingplay, isPrimary, and may be bound to a corresponding streaming program through the ID information. The host end can install a plurality of virtual sound cards and record identification information of the virtual sound cards, wherein the identification information can be information such as DeviceId and Device FriendlyName, and can be bound with a corresponding streaming program through SetPersistedDefaultAudioEndpoint according to the DeviceId. Each virtual input device has corresponding ID information, and is bound to a corresponding streaming program through the ID information for association.
Based on the foregoing embodiment, capturing cloud game data in a corresponding virtual device through a streaming program and transmitting the cloud game data to a corresponding client in the embodiment of the application includes: respectively capturing cloud game video data of a virtual display corresponding to the identification information and cloud game audio data of a corresponding virtual sound card through a streaming program; encoding the cloud game video data to generate a video code stream, and encoding the cloud game audio data to generate an audio code stream; and transmitting the video code stream and the audio code stream to corresponding clients through network transmission.
In the embodiment of the application, the streaming game window can be moved to the corresponding virtual display, the streaming program captures the screen through the dxgi interface according to the identification information (ID information) of the virtual display to obtain the screen content of the virtual display, that is, the cloud game video data, then encodes the cloud game video data to generate the video code stream, and transmits the video code stream to the corresponding client through the network. And after receiving the video code stream, the client performs video decoding and rendering to perform local picture presentation. After the game process of the cloud game is bound into the virtual sound card, each streaming program captures cloud game audio data from the corresponding virtual sound card through an audio capture scheme, audio code streams are obtained through audio coding and then transmitted to corresponding client sides through a network, and after the client sides receive the audio code streams, the client sides perform audio decoding, resampling and playing to perform local sound presentation.
Based on the above embodiments, after the cloud game data is transmitted to the corresponding client, the method further includes: acquiring cloud game operation data of input equipment of a client; the cloud game operation data are sent to corresponding virtual input equipment through a streaming program corresponding to the client; the virtual input device feeds back the cloud game operation data to the game process of the corresponding cloud game.
In the embodiment of the application, if the client is inserted into input devices such as a keyboard, a mouse, a handle and the like, the host end can create a plurality of virtual keyboards, virtual mice and virtual handles. For the virtual keyboard and the virtual mouse, after the game process is started, a ravinnput function is set for the virtual keyboard and the virtual mouse, and is used for reading cloud game operation data of the client input equipment and feeding back the cloud game operation data to the corresponding game process. The movement of the virtual mouse is limited in the virtual display area bound by the streaming program, the driving layer informs the application layer of the current mouse pointer icon, and the virtual keyboard focus window is acquired through the priority. If the game starts the handle function, the virtual handle dll is injected, handle data communication can be carried out through a named pipeline connected with the virtual handle corresponding to the game process, and the key state of the virtual handle is synchronized through the named pipeline.
In the above embodiments, the streaming method of the multi-open cloud game is described in detail, and the present application also provides embodiments corresponding to the streaming device of the multi-open cloud game. It should be noted that the present application describes the embodiments of the apparatus portion from two perspectives, one from the perspective of the function module and the other from the perspective of the hardware.
Fig. 2 is a block diagram of a streaming system for a multi-cloud game according to an embodiment of the present disclosure. As shown in fig. 2, the streaming system of the multi-open cloud game includes:
the allocation module 10 is configured to, when receiving a cloud game start request from a client, allocate host resources to each cloud game according to the cloud game start request to start the cloud game, and allocate a corresponding virtual device to each cloud game.
The association module 11 is configured to bind the game process of each cloud game to a corresponding virtual device, and associate the virtual device with the streaming program.
The transmission module 12 is configured to capture cloud game data in the corresponding virtual device through a streaming program, and transmit the cloud game data to the corresponding client.
Based on the above embodiment, as a preferred embodiment, the allocation module includes:
the cloud game starting device comprises a first determining unit, a second determining unit and a control unit, wherein the first determining unit is used for determining the cloud game starting number according to a cloud game starting request;
and the first distribution unit is used for averagely distributing the total host resources to each cloud game according to the cloud game multi-opening number so as to start the cloud game.
Based on the above embodiment, as a preferred embodiment, the allocation module includes:
the second determining unit is used for determining resources required by each cloud game according to the cloud game starting request;
and the second distribution unit is used for distributing host resources for each cloud game according to the resources required by each cloud game so as to start the cloud game.
Based on the above embodiment, as a preferred embodiment, the method further includes:
the virtual module is used for virtualizing virtual displays and virtual sound cards with the same number according to the number of the multiple cloud games;
and the creating module is used for acquiring the input equipment information of the client and creating the corresponding virtual input equipment according to the input equipment information.
Based on the above embodiment, as a preferred embodiment, the association module includes:
the recording unit is used for recording the identification information of each virtual display, each virtual sound card and each virtual input device;
the association unit is used for binding the identification information with the streaming program so as to associate the virtual equipment with the streaming program; the virtual device comprises a virtual display, a virtual sound card and a virtual input device.
Based on the above embodiment, as a preferred embodiment, the transmission module includes:
the capturing unit is used for respectively capturing cloud game video data of the virtual display corresponding to the identification information and cloud game audio data of the corresponding virtual sound card through a streaming program;
the encoding unit is used for encoding the cloud game video data to generate a video code stream and encoding the cloud game audio data to generate an audio code stream;
and the transmission unit is used for transmitting the video code stream and the audio code stream to corresponding clients through network transmission.
Based on the above embodiment, as a preferred embodiment, the method further includes:
the acquisition module is used for acquiring cloud game operation data of input equipment of the client;
the sending module is used for sending the cloud game operation data to the corresponding virtual input equipment through the streaming program corresponding to the client;
and the feedback module is used for feeding back the cloud game operation data to the corresponding game process of the cloud game by the virtual input equipment.
Since the embodiments of the apparatus portion and the method portion correspond to each other, please refer to the description of the embodiments of the method portion for the embodiments of the apparatus portion, which is not repeated here.
The streaming system for the multi-cloud games provided by the embodiment of the application is applied to a host, and when a cloud game starting request of a client is received, host resources are allocated to each cloud game according to the cloud game starting request to start the cloud game, and corresponding virtual equipment is allocated to each cloud game; binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with the corresponding streaming program; and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client. Compared with the method that multiple client sides are connected to the same host to start different cloud games through virtual machines, the host side of the cloud game system can distribute host resources for each cloud game to achieve multi-opening of the host resources, and can distribute required virtual equipment for each cloud game, cloud game data in corresponding virtual equipment are obtained through a streaming program to be transmitted to corresponding client sides, and when the multi-opening of the cloud game at the host side is guaranteed, the cloud game system does not need to install virtual machine images at the host side, host resources can be saved, and concurrency of a single machine is improved.
Fig. 3 is a structural diagram of a streaming device of a multiple open cloud game according to an embodiment of the present application, and as shown in fig. 3, the streaming device of the multiple open cloud game includes: a memory 20 for storing a computer program;
the processor 21 is configured to implement the steps of the streaming method of the multi-open cloud game according to the above embodiment when executing the computer program.
The streaming device of the multi-open cloud game provided by the embodiment may include, but is not limited to, a smart phone, a tablet computer, a notebook computer, a desktop computer, or the like.
The processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The Processor 21 may be implemented in hardware using at least one of a Digital Signal Processor (DSP), a Field-Programmable Gate Array (FPGA), and a Programmable Logic Array (PLA). The processor 21 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 21 may be integrated with a Graphics Processing Unit (GPU) which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, the processor 21 may further include an Artificial Intelligence (AI) processor for processing computational operations related to machine learning.
The memory 20 may include one or more computer-readable storage media, which may be non-transitory. Memory 20 may also include high speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used for storing the following computer program 201, wherein after being loaded and executed by the processor 21, the computer program can implement the relevant steps of the streaming method of the multi-open cloud game disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202, data 203, and the like, and the storage manner may be a transient storage manner or a permanent storage manner. Operating system 202 may include, among others, Windows, Unix, Linux, and the like. Data 203 may include, but is not limited to, cloud game data, and the like.
In some embodiments, the streaming device of the multi-open cloud game may further include a display 22, an input/output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.
Those skilled in the art will appreciate that the configuration shown in fig. 3 does not constitute a definition of a streamer for a multi-open cloud game and may include more or fewer components than those shown.
The streaming device for the multi-open cloud game provided by the embodiment of the application comprises a memory and a processor, wherein when the processor executes a program stored in the memory, the following method can be realized: when a cloud game starting request of a client is received, allocating host resources for each cloud game according to the cloud game starting request to start the cloud game, and allocating corresponding virtual equipment for each cloud game; binding the game progress of each cloud game to corresponding virtual equipment, and associating the virtual equipment with corresponding streaming programs; and capturing cloud game data in the corresponding virtual equipment through a streaming program, and transmitting the cloud game data to the corresponding client.
Finally, the application also provides a corresponding embodiment of the computer readable storage medium. The computer readable storage medium has a computer program stored thereon, and the computer program, when executed by the processor, implements the steps described in the streaming method of the cloud game according to the above method embodiment.
It is to be understood that if the method in the above embodiments is implemented in the form of software functional units and sold or used as a stand-alone product, it can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application, which are essential or part of the prior art, or all or part of the technical solutions may be embodied in the form of a software product, which is stored in a storage medium and executes all or part of the steps of the methods described in the embodiments of the present application. 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, an optical disk, or other various media capable of storing program codes.
The streaming method, system, device and medium for the multi-open cloud game provided by the present application are described in detail above. The embodiments are described in a progressive manner in the specification, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description. It should be noted that, for those skilled in the art, it is possible to make several improvements and modifications to the present application without departing from the principle of the present application, and such improvements and modifications also fall within the scope of the claims of the present application.
It is further noted that, in the present specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.

Claims (10)

1. A streaming method of a multi-open cloud game is applied to a host side, and is characterized by comprising the following steps:
when a cloud game starting request of a client is received, allocating host resources for each cloud game according to the cloud game starting request to start the cloud game, and allocating corresponding virtual equipment for each cloud game;
binding the game process of each cloud game to the corresponding virtual equipment, and associating the virtual equipment with a streaming program;
capturing cloud game data in the corresponding virtual equipment through the streaming program, and transmitting the cloud game data to the corresponding client.
2. The streaming method for multi-open cloud game according to claim 1, wherein the allocating host resources for each cloud game to open the cloud game according to the cloud game opening request comprises:
determining the number of the cloud games which are opened more according to the cloud game opening request;
and averagely distributing total host resources to each cloud game according to the cloud game multi-opening number so as to open the cloud game.
3. The streaming method for a multi-open cloud game according to claim 1, wherein the allocating host resources for each cloud game according to the cloud game opening request to open the cloud game comprises:
determining resources required by each cloud game according to the cloud game starting request;
and allocating the host resources to each cloud game according to the resources required by each cloud game to start the cloud game.
4. A streaming method for a multi-open cloud game according to claim 2, wherein before allocating a corresponding virtual device to each cloud game, the streaming method further comprises:
virtualizing the virtual display and the virtual sound card with the same number according to the number of the cloud games;
and acquiring input equipment information of the client, and creating corresponding virtual input equipment according to the input equipment information.
5. The streaming method for a multi-open cloud game according to claim 4, wherein the associating the virtual device with a streaming program comprises:
recording identification information of each virtual display, each virtual sound card and each virtual input device;
binding the identification information with the streaming program to associate the virtual device with the streaming program; wherein the virtual device comprises the virtual display, the virtual sound card, and the virtual input device.
6. The streaming method for the multi-open cloud game according to claim 5, wherein the capturing cloud game data in the corresponding virtual device and transmitting the cloud game data to the corresponding client by the streaming program comprises:
capturing cloud game video data of the virtual display corresponding to the identification information and cloud game audio data of the virtual sound card corresponding to the identification information respectively through the streaming program;
encoding the cloud game video data to generate a video code stream, and encoding the cloud game audio data to generate an audio code stream;
and transmitting the video code stream and the audio code stream to the corresponding client through network transmission.
7. The streaming method for multi-open cloud game according to claim 5, wherein after transmitting the cloud game data to the corresponding client, further comprising:
acquiring cloud game operation data of input equipment of the client;
sending the cloud game operation data to the corresponding virtual input equipment through the streaming program corresponding to the client;
and the virtual input equipment feeds back the cloud game operation data to the corresponding game process of the cloud game.
8. A streaming system for multi-cloud games is applied to a host, and is characterized by comprising:
the cloud game starting method comprises the steps that when a cloud game starting request of a client is received, a host resource is allocated to each cloud game according to the cloud game starting request so as to start the cloud game, and corresponding virtual equipment is allocated to each cloud game;
the association module is used for binding the game progress of each cloud game to the corresponding virtual equipment and associating the virtual equipment with a streaming program;
and the transmission module is used for capturing the corresponding cloud game data in the virtual equipment through the streaming program and transmitting the cloud game data to the corresponding client.
9. A streaming apparatus for a multi-open cloud game, comprising a memory for storing a computer program;
a processor for implementing the steps of the streaming method of the multi open cloud game according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, having stored thereon a computer program which, when executed by a processor, implements the steps of the streaming method of the multi-open cloud game according to any one of claims 1 to 7.
CN202210227396.8A 2022-03-08 2022-03-08 Streaming method, system, device and medium for multi-open cloud game Pending CN114598931A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210227396.8A CN114598931A (en) 2022-03-08 2022-03-08 Streaming method, system, device and medium for multi-open cloud game

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210227396.8A CN114598931A (en) 2022-03-08 2022-03-08 Streaming method, system, device and medium for multi-open cloud game

Publications (1)

Publication Number Publication Date
CN114598931A true CN114598931A (en) 2022-06-07

Family

ID=81818058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210227396.8A Pending CN114598931A (en) 2022-03-08 2022-03-08 Streaming method, system, device and medium for multi-open cloud game

Country Status (1)

Country Link
CN (1) CN114598931A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115119049A (en) * 2022-06-22 2022-09-27 深圳市瑞云科技有限公司 Dynamic coding method supporting cloud games to be played together
CN116389801A (en) * 2023-05-31 2023-07-04 北京庭宇科技有限公司 Multi-terminal integrated cloud streaming client implementation method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413108A (en) * 2010-09-25 2012-04-11 英业达股份有限公司 System and method for performing on-line games on hand-held electronic device
CN105473196A (en) * 2013-05-20 2016-04-06 微软技术许可有限责任公司 Resource allocation to game titles in remote gaming environment
CN110841278A (en) * 2019-11-14 2020-02-28 珠海金山网络游戏科技有限公司 Cloud game implementation method and device
CN112631736A (en) * 2021-01-08 2021-04-09 杭州雾联科技有限公司 Audio data streaming method, device and equipment of cloud host and storage medium
CN112807678A (en) * 2021-02-23 2021-05-18 北京字节跳动网络技术有限公司 Cloud game implementation method, device, system, equipment and medium
US20210160699A1 (en) * 2019-11-25 2021-05-27 University-Industry Cooperation Group Of Kyung Hee University Apparatus and method using a decentralized game approach for radio and computing resource allocation in co-located edge computing
CN112870711A (en) * 2021-04-28 2021-06-01 腾讯科技(深圳)有限公司 Cloud game processing method, device, equipment and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413108A (en) * 2010-09-25 2012-04-11 英业达股份有限公司 System and method for performing on-line games on hand-held electronic device
CN105473196A (en) * 2013-05-20 2016-04-06 微软技术许可有限责任公司 Resource allocation to game titles in remote gaming environment
CN110841278A (en) * 2019-11-14 2020-02-28 珠海金山网络游戏科技有限公司 Cloud game implementation method and device
US20210160699A1 (en) * 2019-11-25 2021-05-27 University-Industry Cooperation Group Of Kyung Hee University Apparatus and method using a decentralized game approach for radio and computing resource allocation in co-located edge computing
CN112631736A (en) * 2021-01-08 2021-04-09 杭州雾联科技有限公司 Audio data streaming method, device and equipment of cloud host and storage medium
CN112807678A (en) * 2021-02-23 2021-05-18 北京字节跳动网络技术有限公司 Cloud game implementation method, device, system, equipment and medium
CN112870711A (en) * 2021-04-28 2021-06-01 腾讯科技(深圳)有限公司 Cloud game processing method, device, equipment and storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115119049A (en) * 2022-06-22 2022-09-27 深圳市瑞云科技有限公司 Dynamic coding method supporting cloud games to be played together
CN115119049B (en) * 2022-06-22 2023-10-17 深圳市瑞云科技有限公司 Dynamic coding method supporting cloud game playing
CN116389801A (en) * 2023-05-31 2023-07-04 北京庭宇科技有限公司 Multi-terminal integrated cloud streaming client implementation method
CN116389801B (en) * 2023-05-31 2023-07-28 北京庭宇科技有限公司 Multi-terminal integrated cloud streaming client implementation method

Similar Documents

Publication Publication Date Title
CN106713485B (en) Cloud computing mobile terminal
CN108449633B (en) Set top box cloud system based on NFV and service implementation method
CN109982148B (en) Live broadcast method and device, computer equipment and storage medium
WO2022257699A1 (en) Image picture display method and apparatus, device, storage medium and program product
CN114598931A (en) Streaming method, system, device and medium for multi-open cloud game
WO2021185302A1 (en) Live streaming and configuration method based on cloud phones, and related apparatus and system
CN110025957A (en) A kind of cloud game service device end-rack structure, client and system
JP2019537158A (en) Resource sharing method, apparatus and system
CN113157418B (en) Server resource allocation method and device, storage medium and electronic equipment
CN113542757A (en) Image transmission method and device for cloud application, server and storage medium
EP4223379A1 (en) Cloud gaming processing method, apparatus and device, and storage medium
CN102378976B (en) The compression of images of multiple processor is used to accelerate
CN115065684B (en) Data processing method, apparatus, device and medium
CN113209632A (en) Cloud game processing method, device, equipment and storage medium
CN113489805B (en) Butt joint method, device, equipment and storage medium of cloud desktop system
US20230285854A1 (en) Live video-based interaction method and apparatus, device and storage medium
CN115292020B (en) Data processing method, device, equipment and medium
CN112473133A (en) Cloud game response method, system, equipment and readable storage medium
CN115445194A (en) Rendering method, device and equipment of game and storage medium
CN112044078A (en) Access method, device, equipment and storage medium for virtual scene application
WO2024061307A1 (en) Interaction, processing and control methods for application service in cloud desktop
CN115364477A (en) Cloud game control method and device, electronic equipment and storage medium
CN102662999A (en) Method, device and system for providing multimedia application data
CN109948082A (en) Live information processing method and processing device, electronic equipment, storage medium
CN111930328B (en) Application data display method, device and system

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