Method, device and equipment for generating game playback video
By separating the generation process of game playback videos into cloud servers with different functions, using the GPU resources of the first cloud server for recording and rendering, and editing and processing on the second cloud server, the problems of large computing resources and low production efficiency in the prior art are solved, and more efficient video generation and loading are achieved.
Patent Information
- Application Number
- CN202210800293.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-06
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2042-07-06
AI Technical Summary
The prior art consumes a lot of computing resources when generating game playback videos, resulting in low production efficiency and slow loading speed.
By separating the generation process of game playback videos to cloud servers with different functions, the GPU resources of the first cloud server are used to record and render game event data, and the video resources are sent to the second cloud server for editing and processing. The second cloud server does not call GPU resources for editing.
It improves the efficiency of computing resources utilization and editing efficiency during the production of game playback videos, shortens the loading time of game playback videos, and makes game playback more smooth.
Smart Images

Figure CN115317897B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of data processing, and in particular relates to a method, device and equipment for generating a game playback video. Background Art
[0002] Currently, after various games are finished, in order to meet the various needs of players, game replay videos are usually provided to players so that they can review the games.
[0003] Taking Multiplayer Online Battle Arena (MOBA) games as an example, after a battle, players often need to replay the entire game or certain game moments to facilitate review or sharing with teammates, such as reviewing their own, teammates' and opponents' positioning, cover, kills, and prop usage.
[0004] In the related art, the game image frames are usually captured from the game match by the server, and then the game image frames are synthesized into a game replay video for users to view in the game client. However, the production process of the above-mentioned game replay video requires a large amount of computing resources, especially cloud computing resources, to complete the steps of capturing, rendering and synthesizing the image frames. Therefore, the production process of the above-mentioned game replay video has the problem of requiring a large amount of computing resources and low production efficiency of the game replay video. Summary of the invention
[0005] The present invention provides a method, device and equipment for generating game replay videos, which are used to improve the utilization efficiency of computing resources and the production efficiency of game replay videos during the production of game replay videos, increase the loading speed of game replay videos, and make game replay smoother.
[0006] In a first aspect, the present invention provides a method for generating a game playback video, the method comprising:
[0007] In response to a video playback instruction, obtaining game event data from a game server through a first cloud server, and loading and recording game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content, wherein the first cloud server has a graphics processor GPU resource, and the game event content is game content including game events displayed in a game scene;
[0008] Sending the video resource including the continuous video frames to a second cloud server, wherein the second cloud server is provided with video editing parameters related to video playback;
[0009] The video resource is edited in the second cloud server according to the video editing parameters to obtain a game replay video for displaying the game event content.
[0010] In an optional embodiment, it also includes:
[0011] Upload the game playback video to the cloud on-demand system and obtain the corresponding video playback address;
[0012] Feedback the video playback address to the game client so that the game client can display the game playback video to the user through the video playback address.
[0013] In an optional embodiment, obtaining game event data from a game server through a first cloud server includes:
[0014] The first cloud server receives game battle data from the game server;
[0015] Parsing the key event information corresponding to the preset type of event from the game battle data as the game event data;
[0016] Among them, key event information includes any one or more of the time of event occurrence, player perspective, player release of skills, and status information of each player participating in the event. Preset type events include any one or more of the following: kill events, assist events, death events, events in which the number of kills exceeds a set threshold within a preset time period, set equipment trigger events, and set skill release events.
[0017] In an optional embodiment, loading and recording the game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content includes:
[0018] In the first cloud server, the game is started through special effects software, and the corresponding game demo file is loaded. The game demo file contains the game scene rendered by applying GPU resources;
[0019] The game event content corresponding to the game event data in the game Demo file is recorded in the game scene to obtain a group of continuous video frames.
[0020] In an optional embodiment, the video resource includes a game video. The method further includes: synthesizing a group of continuous video frames into the game video through the first cloud server.
[0021] In an optional embodiment, the video resource is edited in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content, including:
[0022] Obtain one or a combination of the title, end, watermark, and transition effects corresponding to the game scene type in the video editing parameters;
[0023] One or a combination of the opening credits, the ending credits, the watermark, and the transition effects are inserted into the video resource to perform corresponding editing processing in the second cloud server to obtain the game playback video.
[0024] In an optional embodiment, sending a video resource including continuous video frames to a second cloud server includes:
[0025] Uploading continuous video frames to a second cloud server;
[0026] The video editing parameters also include preset video frames and setting parameters related to the preset video frames, where the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics;
[0027] The video resource is edited in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content, including:
[0028] Obtaining preset video frames and setting parameters related to the preset video frames;
[0029] The preset video frames are inserted into the continuous video frames according to the set parameters to perform corresponding editing processing in the second cloud server to obtain the game playback video.
[0030] In an optional embodiment, the second cloud server does not call GPU resources when performing editing processing of video resources.
[0031] In a second aspect, an embodiment of the present invention provides a device for generating a game playback video, comprising:
[0032] The recording module is configured to obtain game event data from the game server through the first cloud server in response to the video playback instruction, and load and record game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content, the first cloud server having a graphics processor GPU resource, and the game event content is game content including game events displayed in the game scene;
[0033] A sending module, configured to send a video resource including continuous video frames to a second cloud server, wherein the second cloud server is provided with video editing parameters related to video playback;
[0034] The editing module is configured to edit the video resources in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content.
[0035] In a third aspect, an embodiment of the present invention provides a system for generating a game playback video, the system comprising:
[0036] The first cloud server has a graphics processor GPU resource, which is used to respond to the video playback instruction, obtain game event data from the game server, and load and record game event content corresponding to the game event data to obtain continuous video frames associated with the game event content, where the game event content is game content containing game events displayed in the game scene; and send the video resource containing the continuous video frames to the second cloud server;
[0037] The second cloud server is provided with video editing parameters related to video playback, and is used to receive video resources including continuous video frames; the video resources are edited and processed in the second cloud server according to the video editing parameters to obtain a game playback video for displaying game event content.
[0038] In a third aspect, the present invention provides an electronic device comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, and when the processor executes the computer program, the steps of any one of the methods described in the first aspect are implemented.
[0039] In a fourth aspect, a computer-readable medium having a non-volatile program code executable by a processor, wherein the program code enables the processor to execute any method described in the first aspect.
[0040] In the technical solution provided by the embodiment of the present invention, first, in response to a video playback instruction, a first cloud server with a graphics processing unit (GPU) resource obtains game event data from a game server, and loads and records game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content, where the game event content is a game content containing game events displayed in a game scene. Then, the video resource containing continuous video frames is sent to a second cloud server optimized for video playback services, where video editing parameters related to video playback are set. Finally, the video resource containing continuous video frames is edited and processed in the second cloud server according to the video editing parameters to obtain a game playback video for displaying game event content. The method processes different processes in the game playback video through the first cloud server and the second cloud service respectively, and can improve the execution efficiency of each process in a targeted manner. For example, the GPU resources of the first cloud server are targetedly applied to the loading and recording processes of the game scene, thereby improving the utilization efficiency of computing resources in the process of producing the game playback video, and applying the optimized settings for the video playback service in the second cloud server to the editing process, thereby improving the editing efficiency of the game playback video, thereby comprehensively improving the production efficiency of the game playback video, accelerating the loading speed of the game playback video, and making the game playback smoother. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:
[0042] Figure 1 It is a flowchart of a method for generating a game playback video according to an embodiment of the present invention;
[0043] Figure 2 is a schematic diagram of a scene for generating a game playback video according to an embodiment of the present invention;
[0044] Figure 3 It is a module schematic diagram of a system for generating a game playback video according to an embodiment of the present invention;
[0045] Figure 4 The figure is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0046] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0047] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used in the specification of the present invention herein are only for the purpose of describing specific embodiments and are not intended to limit the present invention.
[0048] The solution provided in the embodiment of the present invention may be executed by an electronic device, which may be a server device, such as a cloud server, a server cluster, a server group, etc. In an optional embodiment, a service program for executing the game playback solution may be installed on the electronic device.
[0049] In practical applications, the solution provided by the embodiment of the present invention can be executed by a system composed of servers for implementing different functions. For ease of description, the server used to implement game scene recording can be referred to as the first cloud server, and the server used for video synthesis and editing can be referred to as the second cloud server. Game scene recording requires the use of more computing resources, mainly GPU resources for scene rendering, and therefore, the first cloud server has GPU resources. In order to improve the efficiency of video synthesis and editing, the second cloud server needs to be optimized. In addition, in order to reduce the cost of using server resources, the second cloud server does not involve the call of GPU resources in the process of performing data processing (such as editing and processing of video resources). It can be understood that the number of the first cloud server and the second cloud server is not limited, and can be one or more.
[0050] The solution provided by the embodiment of the present invention is applicable to various games, such as MOBA games, competitive shooting games, open world games, role-playing games, etc. It is particularly applicable to the game playback scene of MOBA games. For example, the wonderful moment sharing scene of Defense of the Ancients (Dota) 2.
[0051] Figure 1 A flowchart of a method for generating a game playback video provided by an embodiment of the present invention is shown in FIG. Figure 1 As shown, the method comprises the following steps:
[0052] 101. In response to a video playback instruction, obtain game event data from a game server through a first cloud server, and load and record game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content;
[0053] 102. Sending the video resource including the continuous video frames to the second cloud server;
[0054] 103. Edit the video resources including the continuous video frames in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content.
[0055] Taking MOBA games as an example, the game (including game scenes, game characters, etc.) uses DirectX for rendering, which requires the use of relatively powerful GPU resources to ensure the efficiency of game playback video production. However, GPU resources have many restrictions and are expensive to use, especially GPU resources in cloud servers.
[0056] To solve the above problems, the production process of game replay videos is separated into cloud servers with different functions to improve the execution efficiency of each process in a targeted manner. Figure 2 Taking the game replay video generation scene shown as an example, the GPU resources of the first cloud server T1 are specifically applied to the loading and recording processes of the game scene to improve the utilization efficiency of computing resources in the production process of game replay videos. The optimization settings for the video replay service in the second cloud server T2 are applied to the editing process to improve the editing efficiency of the game replay video. Thus, the production efficiency of the game replay video is comprehensively improved, the loading speed of the game replay video is accelerated, and the game replay is smoother. Optionally, the first cloud server T1 can transmit the video resource containing continuous video frames to the cloud storage server, and the second cloud server T2 downloads the video resource containing continuous video frames from the cloud storage server. Of course, the first cloud server T1 can also directly transmit the video resource containing continuous video frames to the second cloud server T2. In this way, the computing resources in the cloud server can be scheduled by the cloud storage server, thereby further improving the production efficiency of the game replay video. The cloud on-demand system can be used for the distribution of game replay videos.
[0057] In practical applications, Figure 2 In the example, the first cloud server T1, the second cloud server T2, the cloud storage server, and the cloud on-demand system can be deployed in different server devices, or in different cloud service resources of the same server device. Furthermore, the server devices can also be obtained by elastically applying for cloud server resources.
[0058] The following is a detailed description of the embodiments of the present invention. Figure 1The various steps in a method for generating a game replay video are described.
[0059] First, in 101, in response to the video playback instruction, the game event data is obtained from the game server through the first cloud server. Among them, the video playback instruction can be an interactive interface or control triggered by event selection in the game client, for example, by selecting interface options corresponding to optional content such as time information (such as a game in a certain period of time, the time when the game event occurs, and the game playback is automatically initiated after the game ends), character information (such as a certain player, or a certain player team), event information (such as a kill event, a damage event, a skill release event), etc., so that, in response to the selection instruction of the interface option, a video playback instruction is generated to trigger the first cloud server and the second cloud server to execute the production process of the game playback video. In some embodiments, the video playback instruction can be automatically triggered after the user selects the game round to be replayed, for example, after the game ends, the user selects the "replay current game" control, thereby triggering the video playback process in response to the selection instruction of the control, and the selection instruction is the video playback instruction in this example. In other embodiments, the video playback instructions may also be automatically generated based on a preset mechanism. For example, for game rounds in preset type activities (such as competitive events, challenge events, etc.), the game server automatically detects whether the current game round belongs to the preset type of activity. If the current game round belongs to the preset type of activity, a video playback instruction for the current game round is generated and the corresponding video playback process is triggered.
[0060] The game event data is used to reflect the behavior of the game character in each specific event that occurs in the game scene. The game event data includes data associated with each specific event of the game character controlled by each player in the game scene. The game event data can be obtained by parsing the game battle data, which is used to reflect the behavior of the virtual character in the virtual scene.
[0061] The game event data is obtained and parsed from the game server. In an optional embodiment, the game server is a device for storing game battle logic and game battle data. Optionally, the game event data includes, but is not limited to: any one or more of the player's camp and teammate information, location, exchange of fire, damage, kills, deaths, assists, weapon usage, item usage, and vehicle usage.
[0062] Taking MOBA games as an example, game event data includes but is not limited to: the route, stop position, character status and various interactive information of the game characters controlled by each player in the game scene. Among them, the character status includes but is not limited to survival status, health, and releasable skills. Interactive events include but are not limited to interactive information with game resources, such as weapon usage, prop usage, vehicle usage, obstacle information (such as cliffs, walls of buildings), etc., as well as interactive information between game characters, such as riding vehicles, killing, bombing, covering, assisting, etc. Of course, the above-mentioned game event data introduced in this embodiment is only an example and is not limited to this.
[0063] Specifically, in an optional embodiment, the step of obtaining game event data from the game server in 101 can be specifically implemented as follows: the first cloud server receives game battle data from the game server; and parses key event information corresponding to a preset type of event from the game battle data as game event data.
[0064] Among them, key events refer to events that need to be replayed in the game. Key events can be filtered by preset conditions, such as filtering preset type events from game event data as key events by setting preset types. Optionally, key events include but are not limited to: kill events, assist events, death events, events where the number of kills exceeds a set threshold within a preset time, set equipment trigger events, set skill release events, any one or more of them. Among them, key event information includes any one or more of the time of event occurrence, player perspective, player release skills, and status information of each player participating in the event.
[0065] For example, in the above steps, the first cloud server obtains the demo file corresponding to the player from the game server, and parses the key event information corresponding to the player from the demo file. Taking MOBA games as an example, assume that the key event is an event in which a player kills 3 or more people within a unit time in a certain game. In practical applications, killing 3 people within a unit time is called a triple kill, killing 4 people within a unit time is called a quad kill, and killing 5 people within a unit time is called a penta kill. Based on this, in 101, the first cloud server obtains the game event data corresponding to the player from the game server, such as the demo file of the game, and calls the computing resources in the first cloud server to detect whether there is a record of a triple kill event, a quad kill event, or a penta kill event in the demo file. If any record of a multi-kill event is detected, the relevant records are parsed to obtain the corresponding multi-kill event information, such as the time of occurrence of the multi-kill event, the dead character, the player's release of skills, the damage value caused by the skills, and other information.
[0066] Furthermore, in 101, after obtaining the game event data, the game event content corresponding to the game event data can be loaded and recorded in the first cloud server to obtain continuous video frames associated with the game event content. In an embodiment of the present invention, the game event content is the game content containing game events displayed in the game scene. For example, the game event content can be player battle content that captures kill events, skill release events, and damage events from the game scene, or it can be task execution content in the process of a player performing a task in the game scene. The expression form of the game event content can be a video frame (such as a continuous video frame, a key frame), or it can be a video, or it can be other forms, which are not limited here.
[0067] Specifically, in an optional embodiment, the game is started by special effects software in the first cloud server, and the corresponding game demo file is loaded. The game demo file contains a game scene rendered by applying GPU resources. Then, the game event content corresponding to the game event data in the game demo file is recorded in the game scene to obtain a group of continuous video frames. Further optionally, it is assumed that the video resource includes a game video. After the above steps, a group of continuous video frames can also be synthesized into a game video through the first cloud server.
[0068] The special effects software can be selected according to the game type. For example, if the game is CS GO, the special effects software can be an advanced special effects software (Half-Life Advanced Effects, HLAE) based on the Half-Life engine. This software can be understood as a tool set for enriching source engine movie production. The special effects software can better capture and record the game demo file in order to produce a better mobile lens effect.
[0069] Taking CS GO as an example, assume that the key event is a multi-kill event. Based on this, in the above steps, based on the occurrence time of the multi-kill event in the game demo file (i.e., the key event information), the GPU resources of the first cloud server can be called through HLAE to render the game event content corresponding to the multi-kill event. Then, the game event content corresponding to the multi-kill event is recorded through HLAE to obtain a set of continuous game image frames (i.e., continuous video frames). Optionally, this set of continuous game image frames can also be synthesized into a game video corresponding to the multi-kill event through the first cloud server.
[0070] After the continuous video frames are acquired, the video resources including the continuous video frames are sent to the second cloud server in 102. In the embodiment of the present invention, the video resources may be data packets or data stream resources directly composed of continuous video frames, or game videos synthesized from continuous video frames, or other forms of video resources, which are not limited here.
[0071] In an optional embodiment, the step of sending the video resource including the continuous video frames to the second cloud server in 102 includes: uploading the continuous video frames to the second cloud server.
[0072] To improve the efficiency of producing game replay videos, the game event data, continuous video frames, video resources and game replay videos involved in the embodiments of the present invention can all be stored in a cloud server (including but not limited to the first cloud server or the second cloud server).
[0073] Of course, in addition to the above storage methods, a cloud storage server may be used to buffer the video resources containing continuous video frames to be processed in advance, so that the second cloud server used for video resource editing can obtain the video resources to be processed from the cloud storage server in a timely manner. Specifically, in another optional embodiment, the video resources containing continuous video frames are uploaded to the cloud storage server; the video resources containing continuous video frames are obtained from the cloud storage server by the second cloud server, and the second cloud server is triggered to perform editing processing on the video resources containing continuous video frames.
[0074] Finally, in 103, the video resource containing continuous video frames is edited and processed in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content.
[0075] In an embodiment of the present invention, the second cloud server does not call GPU resources when performing editing processing of video resources. In one optional embodiment, the second cloud server does not have GPU resources, that is, the second cloud server is a cloud server or cloud server cluster that does not deploy GPU resources. In another optional embodiment, the second cloud server has GPU resources, but according to the call settings for server resources, the GPU resources in the second cloud server are not called to execute the data processing flow in the embodiment of the present invention, for example, the GPU resources in the second cloud server are not called to execute the editing processing of video resources. Optionally, the second cloud server with GPU resources can be the same type of cloud server as the first cloud server, or a different type of cloud server.
[0076] By setting video editing parameters related to video playback in the second cloud server, targeted optimization of editing processes such as video title / end synthesis, watermark production, and transition effect production in the second cloud server is achieved, greatly improving the editing efficiency of game playback videos. Since there is no need to call GPU resources in the second cloud server, and the editing process of video resources is optimized by setting video editing parameters, the overall production cost of game playback videos (especially the cost of using GPU resources) can be greatly reduced, and the production time can also be shortened, improving the overall production efficiency of game playback videos.
[0077] In an embodiment of the present invention, the game playback video is used to reproduce the battle situation of the players in the game scene. For example, the game playback video can be implemented as a clip of the highlights in the game, or a collection of the highlights of a certain player (or player team). Specifically, the highlights in the game can be a short video in MP4 format, or a GIF animation, or a video file in other formats containing multiple key frame display screens, which is not limited by the present invention.
[0078] In actual applications, game replay videos can meet the game replay needs of one or more players. For example, the game replay video of a game match can be fed back to a single player (such as a player who selects the game replay option after the game ends, or a player who sets automatic game replay), or it can be fed back to multiple players (for example, a game replay video is generated after the game ends, and the game replay video is reused in the wonderful moment replay session of each player participating in the game match).
[0079] Specifically, in an optional embodiment of 103, one or a combination of the opening, ending, watermark, and transition effects corresponding to the game scene type in the video editing parameters is obtained; one or a combination of the opening, ending, watermark, and transition effects is inserted into the video resource containing continuous video frames to perform corresponding editing processing in the second cloud server to obtain the game playback video.
[0080] In another optional embodiment of 103, it is assumed that the video resource containing continuous video frames is a continuous video frame. It is assumed that the video editing parameters also include preset video frames and setting parameters related to the preset video frames. Based on the above assumptions, the preset video frames and setting parameters related to the preset video frames are obtained; the preset video frames are inserted into the continuous video frames according to the setting parameters to perform corresponding editing processing in the second cloud server to obtain the game playback video. Among them, the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics. In actual applications, the preset video frames can be pre-made video frames including at least one of the above contents, or they can be pre-made video frame templates including at least one of the above contents, or they can also be other forms, which are not limited here. Video frame templates include but are not limited to subtitles, borders, and pop-ups inserted into continuous video frames. Optionally, the preset video frame can be pre-generated based on user information, for example, corresponding content push information is pre-generated based on the user portrait information of each player recorded in the cloud server, where the content push information is, for example, advertisements, game event previews, item sales activities, game promotions, and game event highlights and event statistics of each player that match the user portrait information (such as age, game operation preferences, game item information, game character occupation information, etc.). Then, the content push information is inserted into the video frame template or the preset video frame.
[0081] In order to enrich the visual effects of the game playback video, the picture effects used in the game playback video can be optionally edited, for example, a filter for editing the game playback video can be selected according to the game picture style. For example, a metal style filter with a cold tone can be selected for a shooting game, and a nostalgic style filter with a warm tone can be selected for an ancient style game, and so on. Of course, the game playback video can also be edited and processed using effects such as inversion color and montage, which are not limited here.
[0082] In the above or following embodiments, optionally, after 103, the game playback video is uploaded to the cloud on-demand system to obtain the corresponding video playback address; the video playback address is fed back to the game client so that the game client displays the game playback video to the user through the video playback address. In actual applications, the game playback video can be displayed in a third-party client (such as a client connected to the cloud on-demand system, an instant messaging application, a browser, etc.). For example, the game playback video can be displayed on a game platform client connected to the cloud on-demand system. In this way, the game playback video is uploaded to the cloud on-demand system for players to download and share on major social platforms, which can enhance the player interaction experience and improve player stickiness.
[0083] For example, after 103, the game replay videos of each player are uploaded to the cloud on-demand system to obtain the video playback address corresponding to each player, such as the Uniform Resource Locator (URL). Then, the URL is returned to the client and embedded in the client's player for the player to watch. In this way, the player can download and play the game replay video from the cloud on-demand system through the client. Further optionally, when pushing to the cloud on-demand system, the game replay notification message can also be pushed to the player through the platform server to prompt the player to download the game replay video.
[0084] The method provided by the embodiment of the present invention can efficiently render and load the game event content corresponding to the game event data through the first cloud server with GPU resources, and complete the recording process of the game event content, and then can efficiently edit the game playback video through the second cloud server optimized for the video editing business, so as to realize the production process of the game playback video. Through the first cloud server and the second cloud service respectively processing different processes in the game playback video, the execution efficiency of each process can be improved in a targeted manner, for example, the GPU resources possessed by the first cloud server are targetedly applied to the loading of the game scene and the recording of the game event content, so as to improve the utilization efficiency of the computing resources in the production process of the game playback video, and the optimized settings for the video playback business in the second cloud server are applied to the editing process, so as to improve the editing efficiency of the game playback video, thereby comprehensively improving the production efficiency of the game playback video, speeding up the loading speed of the game playback video, and making the game playback smoother. In addition, since the second server does not need to call GPU resources when executing the data processing process, the use cost of computing resources (especially GPU resources) in the server can be further reduced, and the use efficiency of computing resources can be improved.
[0085] In another embodiment of the present invention, a system for generating a game playback video is also provided. Figure 3 As shown, the system includes:
[0086] The first cloud server has a graphics processor GPU resource, which is used to respond to the video playback instruction, obtain game event data from the game server, and load and record game event content corresponding to the game event data to obtain continuous video frames associated with the game event content, where the game event content is game content containing game events displayed in the game scene; and send the video resource containing the continuous video frames to the second cloud server;
[0087] The second cloud server is provided with video editing parameters related to video playback, and is used to receive video resources including continuous video frames; the video resources are edited and processed in the second cloud server according to the video editing parameters to obtain a game playback video for displaying game event content.
[0088] Optionally, the second cloud server is further used to upload the game playback video to the cloud on-demand system to obtain the corresponding video playback address;
[0089] The cloud on-demand system is used to receive game replay videos; and to feed back the video playback address to the game client, so that the game client can display the game replay video to the user through the video playback address.
[0090] Optionally, when the first cloud server obtains the game event data from the game server through the first cloud server, it is specifically used to:
[0091] Receive game battle data from a game server; parse key event information corresponding to a preset type of event from the game battle data as game event data.
[0092] Among them, key event information includes any one or more of the time of event occurrence, player perspective, player release of skills, and status information of each player participating in the event. Preset type events include any one or more of the following: kill events, assist events, death events, events in which the number of kills exceeds a set threshold within a preset time period, set equipment trigger events, and set skill release events.
[0093] Optionally, when the first cloud server loads and records the game event content corresponding to the game event data to obtain continuous video frames associated with the game event content, it is specifically used to:
[0094] The game is started through special effects software, and the corresponding game demo file is loaded. The game demo file contains the game scene rendered by applying GPU resources; the game event content corresponding to the game event data in the game demo file is recorded in the game scene to obtain a group of continuous video frames.
[0095] Optionally, the video resource includes a game video. The first cloud server is further configured to synthesize a group of continuous video frames into a game video.
[0096] Optionally, when the first cloud server sends the video resource including the continuous video frames to the second cloud server, it is specifically used to: upload the continuous video frames to the second cloud server.
[0097] Optionally, when the second cloud server edits the video resource according to the video editing parameters to obtain a game playback video for displaying game event content, it is specifically used to:
[0098] Obtain one or a combination of the opening, ending, watermark, and transition effects corresponding to the game scene type in the video editing parameters; insert one or a combination of the opening, ending, watermark, and transition effects into the video resource to perform corresponding editing processing in the second cloud server to obtain the game playback video.
[0099] Optionally, when the first cloud server sends the video resource including the continuous video frames to the second cloud server, it is specifically used to: upload the continuous video frames to the second cloud server.
[0100] The video editing parameters also include preset video frames and setting parameters related to the preset video frames, and the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics;
[0101] The second cloud server edits the video resource according to the video editing parameters to obtain a game playback video for displaying the game event content, which is specifically used for:
[0102] Obtain preset video frames and setting parameters related to the preset video frames; insert the preset video frames into continuous video frames according to the setting parameters, so as to perform corresponding editing processing in the second cloud server to obtain a game playback video.
[0103] Optionally, the second cloud server does not call GPU resources when performing editing processing of video resources.
[0104] The system in this embodiment can implement any method step provided in the above embodiments, which will not be expanded here. For similarities, please refer to the above.
[0105] In another embodiment of the present invention, a device for generating a game playback video is provided, comprising:
[0106] The recording module is configured to obtain game event data from the game server through the first cloud server in response to the video playback instruction, and load and record game event content corresponding to the game event data in the first cloud server to obtain continuous video frames associated with the game event content, the first cloud server having a graphics processor GPU resource, and the game event content is game content including game events displayed in the game scene;
[0107] A sending module, configured to send a video resource including continuous video frames to a second cloud server, wherein the second cloud server is provided with video editing parameters related to video playback;
[0108] The editing module is configured to edit the video resources in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content.
[0109] Optionally, the sending module is further used to upload the game playback video to the cloud on-demand system to obtain the corresponding video playback address;
[0110] The device also includes a playback module, which is used to feed back a video playback address to a game client through a cloud on-demand system, so that the game client displays the game playback video to the user through the video playback address.
[0111] Optionally, when the recording module obtains the game event data from the game server through the first cloud server, it is specifically used to:
[0112] Receive game battle data from a game server; parse key event information corresponding to a preset type of event from the game battle data as game event data.
[0113] Among them, key event information includes any one or more of the time of event occurrence, player perspective, player release of skills, and status information of each player participating in the event. Preset type events include any one or more of the following: kill events, assist events, death events, events in which the number of kills exceeds a set threshold within a preset time period, set equipment trigger events, and set skill release events.
[0114] Optionally, when the recording module loads and records the game event content corresponding to the game event data to obtain continuous video frames associated with the game event content, it is specifically used to:
[0115] The game is started through special effects software, and the corresponding game demo file is loaded. The game demo file contains the game scene rendered by applying GPU resources; the game event content corresponding to the game event data in the game demo file is recorded in the game scene to obtain a group of continuous video frames.
[0116] Optionally, the video resource includes a game video. The recording module is further used to: synthesize a group of continuous video frames into a game video.
[0117] Optionally, when the sending module sends the video resource including the continuous video frames to the second cloud server, it is specifically used to: upload the continuous video frames to the second cloud server.
[0118] Optionally, the editing module edits the video resource in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content, specifically for:
[0119] Obtain one or a combination of the opening, ending, watermark, and transition effects corresponding to the game scene type in the video editing parameters; insert one or a combination of the opening, ending, watermark, and transition effects into the video resource to perform corresponding editing processing in the second cloud server to obtain the game playback video.
[0120] Optionally, when the sending module sends the video resource including the continuous video frames to the second cloud server, it is specifically used to: upload the continuous video frames to the second cloud server.
[0121] The video editing parameters also include preset video frames and setting parameters related to the preset video frames, and the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics;
[0122] The editing module edits the video resources in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content, which is specifically used for:
[0123] Obtain preset video frames and setting parameters related to the preset video frames; insert the preset video frames into continuous video frames according to the setting parameters, so as to perform corresponding editing processing in the second cloud server to obtain a game playback video.
[0124] Optionally, the second cloud server does not call GPU resources when performing editing processing of video resources.
[0125] The device in this embodiment can implement any method step provided in the above embodiments, which will not be expanded here. For similarities, please refer to the above.
[0126] In another embodiment of the present invention, there is also provided an electronic device, comprising: a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; the memory is used to store computer programs; and the processor is used to implement the method for generating a game playback video described in the method embodiment when executing the program stored in the memory.
[0127] The communication bus 1140 mentioned in the above electronic device may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus 1140 may be divided into an address bus, a data bus, a control bus, etc.
[0128] For ease of representation, Figure 4 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0129] The communication interface 1120 is used for communication between the above electronic device and other devices.
[0130] The memory 1130 may include a random access memory (RAM) or a non-volatile memory (non-volatile memory), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0131] The above-mentioned processor 1110 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0132] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for generating a game playback video, It is characterized in that The method comprises: In response to the video playback instruction, the game event data is obtained from the game server through the first cloud server, and the game is started in the first cloud server through the special effects software, and the corresponding game demo file is loaded, wherein the game demo file contains a game scene rendered by applying GPU resources; the game event content corresponding to the game event data in the game demo file is recorded in the game scene to obtain a group of continuous video frames, wherein the first cloud server has graphics processor GPU resources, and the game event content is the game content containing the game event displayed in the game scene; Sending the video resource including the continuous video frames to a second cloud server, wherein the second cloud server is provided with video editing parameters related to video playback; the video editing parameters include preset video frames and setting parameters related to the preset video frames, wherein the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics; Obtain the preset video frame and setting parameters related to the preset video frame; insert the preset video frame into the continuous video frame according to the setting parameters related to the preset video frame, so as to edit the video resource in the second cloud server to obtain a game playback video for displaying the game event content; the second cloud server does not call GPU resources when performing the editing of the video resource.
2. The method according to claim 1, It is characterized in that Also includes: Upload the game playback video to the cloud on-demand system to obtain the corresponding video playback address; The video playback address is fed back to the game client so that the game client displays the game playback video to the user through the video playback address.
3. The method according to claim 1, It is characterized in that The obtaining of game event data from the game server through the first cloud server includes: The first cloud server receives game battle data from the game server; Parsing the key event information corresponding to the preset type of event from the game battle data as the game event data; Among them, the key event information includes any one or more of the event occurrence time, player perspective, player release skills, and status information of each player participating in the event; the preset type events include any one or more of the following: kill events, assist events, death events, events in which the number of kills exceeds a set threshold within a preset time period, set equipment trigger events, and set skill release events.
4. The method according to claim 1, It is characterized in that The video resource includes a game video, and the method further includes: The group of continuous video frames are synthesized into the game video through the first cloud server.
5. The method according to claim 1, It is characterized in that The editing the video resource in the second cloud server according to the video editing parameters to obtain a game playback video for displaying the game event content includes: Obtain one or a combination of the title, end, watermark, and transition effect corresponding to the game scene type in the video editing parameters; One or a combination of the opening credits, the ending credits, the watermark, and the transition effects are inserted into the video resource to perform corresponding editing processing in the second cloud server to obtain the game playback video.
6. The method according to claim 1, It is characterized in that The sending the video resource including the continuous video frames to the second cloud server includes: The continuous video frames are uploaded to the second cloud server.
7. A device for generating a game playback video, It is characterized in that include: The recording module is configured to obtain game event data from a game server through a first cloud server in response to a video playback instruction, start a game through special effects software in the first cloud server, and load a corresponding game demo file, wherein the game demo file includes a game scene rendered by applying GPU resources; record game event content corresponding to the game event data in the game demo file in the game scene to obtain a group of continuous video frames, wherein the first cloud server has graphics processor GPU resources, and the game event content is game content including game events displayed in the game scene; A sending module is configured to send the video resource including the continuous video frames to a second cloud server, wherein the second cloud server is provided with video editing parameters related to video playback; the video editing parameters include preset video frames and setting parameters related to the preset video frames, wherein the preset video frames are used to display at least one of the following contents: advertisements, game event previews, game event highlights, and event statistics; Acquire the preset video frame and setting parameters related to the preset video frame; an editing module configured to insert the preset video frame into the continuous video frame according to setting parameters related to the preset video frame, so as to edit the video resource in the second cloud server to obtain a game playback video for displaying the game event content; The second cloud server does not call GPU resources when executing the editing process of the video resources.
8. An electronic device, It is characterized in that include: Memory and processor; The memory is used to store one or more computer instructions; The processor is used to execute the one or more computer instructions to: execute the steps in the method for generating a game replay video according to any one of claims 1-6.
Citation Information
Patent Citations
Game recording processing method and device
CN106039710A
Video generation method and device, electronic equipment and storage medium
CN112672200A
Game battle data display method and device, equipment and medium
CN113908539A