Image generation method and apparatus, electronic device, and storage medium

By configuring and calling the target module to generate video images, the problems of slow video image generation speed and untimely response in the prior art are solved, and a more efficient video editing process is achieved.

WO2025067445A1PCT designated stage expired Publication Date: 2025-04-03BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/121811
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-27
Filing Date
2024-09-27
Publication Date
2025-04-03

AI Technical Summary

Technical Problem

In the prior art, video image generation speed is slow and response is not timely, which affects video editing efficiency.

Method used

By receiving editing instructions for video data, configuring the target engine module, and calling the module separately to generate video images, the image generation link is quickly updated and stable.

Benefits of technology

Improves the speed of video image generation and response speed and improves the efficiency of video editing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024121811_03042025_PF_FP_ABST
    Figure CN2024121811_03042025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present disclosure are an image generation method and apparatus, an electronic device, and a storage medium: receiving a first editing instruction for video data, the first editing instruction being used for setting editing content of the video data; on the basis of the first editing instruction, configuring a target engine module to obtain a configured target engine module, wherein the target engine module is an engine module used for controlling editing content amongst at least two engine modules corresponding to an image generation link, the image generation link being used for representing a processing flow for generating a video image of the video data, and the engine module being used for implementing at least one processing step in the processing flow; and independently calling the configured target engine module to generate a video image of the video data. After the first editing instruction is received, configuration of only the target engine module used for controlling the editing content corresponding to the first editing instruction is implemented, thereby decoupling the functions of each engine module, and increasing the video image generation speed and response speed.
Need to check novelty before this filing date? Find Prior Art

Description

Image generation method, device, electronic device and storage medium

[0001] This application claims priority to Chinese patent application No. 202311266396.X filed on September 27, 2023. The contents of the above-mentioned Chinese patent application disclosure are hereby incorporated by reference in their entirety as part of this application. Technical Field

[0002] The embodiments of the present disclosure relate to an image generation method, an apparatus, an electronic device, and a storage medium. Background Art

[0003] Currently, in video processing scenarios such as editing and synthesizing audio and video data based on video editing software, users usually set media materials on video editing tracks, perform corresponding editing, adjustments and previews, and then synthesize multiple video editing tracks to generate the final synthesized image.

[0004] In the prior art, in order to achieve better results in synthesizing pictures, video editing software usually responds to the user's editing operations in real time and displays the video image after video editing. However, the solutions in the prior art have problems such as slow video image generation speed and untimely response, which affects the efficiency of video editing.

[0005] Summary of the Invention

[0006] The embodiments of the present disclosure provide an image generation method, device, electronic device, and storage medium to overcome the problems of slow video image generation and untimely response.

[0007] In a first aspect, an embodiment of the present disclosure provides an image generation method, comprising:

[0008] A first editing instruction for video data is received, where the first editing instruction is used to set the editing content of the video data; based on the first editing instruction, a target engine module is configured to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among at least two engine modules corresponding to the image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow; the configured target engine module is separately called to generate a video image of the video data.

[0009] In a second aspect, an embodiment of the present disclosure provides an image generating device, including:

[0010] a receiving module, configured to receive a first editing instruction for video data, wherein the first editing instruction is used to set editing content of the video data;

[0011] a processing module configured to configure a target engine module based on the first editing instruction to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among the at least two engine modules corresponding to the image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow;

[0012] The generating module is used to separately call the configured target engine module to generate a video image of the video data.

[0013] In a third aspect, an embodiment of the present disclosure provides an electronic device, including:

[0014] a processor, and a memory communicatively connected to the processor;

[0015] The memory stores computer-executable instructions;

[0016] The processor executes the computer-executable instructions stored in the memory to implement the image generation method described in the first aspect and various possible designs of the first aspect.

[0017] In a fourth aspect, an embodiment of the present disclosure provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the image generation method described in the first aspect and various possible designs of the first aspect is implemented.

[0018] In a fifth aspect, an embodiment of the present disclosure provides a computer program product, including a computer program, which, when executed by a processor, implements the image generation method described in the first aspect and various possible designs of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0020] FIG1 is a schematic diagram of an application scenario of the image generation method provided by an embodiment of the present disclosure;

[0021] FIG2 is a flowchart of an image generation method according to an embodiment of the present disclosure;

[0022] FIG3 is a schematic diagram of an engine module provided by an embodiment of the present disclosure;

[0023] FIG4 is a schematic diagram of a process for generating a first editing instruction according to an embodiment of the present disclosure;

[0024] FIG5 is a second flow chart of the image generation method provided by an embodiment of the present disclosure;

[0025] FIG6 is a schematic diagram of an image generation link based on text image description language representation provided by an embodiment of the present disclosure;

[0026] FIG7 is a flowchart of a specific implementation of step S206 in the embodiment shown in FIG5 ;

[0027] FIG8 is a flowchart of a specific implementation method of step S2063 in the embodiment shown in FIG7 ;

[0028] FIG9 is a schematic diagram of a configuration process of a track synthesis module provided by an embodiment of the present disclosure;

[0029] FIG10 is a structural block diagram of an image generating device provided by an embodiment of the present disclosure;

[0030] FIG11 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure;

[0031] FIG12 is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0032] To make the objectives, technical solutions, and advantages of the embodiments of the present disclosure more clear, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present disclosure without making any creative efforts shall fall within the scope of protection of the present disclosure.

[0033] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this disclosure are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0034] The following explains the application scenarios of the embodiments of the present disclosure:

[0035] The video processing method provided by the embodiment of the present disclosure can be applied to the application scenario of video editing. Specifically, the method provided by the embodiment of the present disclosure can be applied to a terminal device or a server, wherein, when the execution subject of the method provided by this embodiment is a terminal device, the video processing method can be executed by the terminal device, and the execution result can be displayed on the terminal device; when the execution subject of the method provided by this embodiment is a server, it can be based on executing the video processing method through the server, and sending the execution result to the terminal device for display. In this embodiment, the application scenario is introduced with the terminal device as the execution subject. For example, a video editing software for editing videos is running on one side of the terminal device, and the video editing software uses the video processing method provided by this embodiment to implement functions such as video editing, synthesis, and preview. Specifically, the method provided by this embodiment is stored in the terminal device in the form of an SDK, and the video editing software executes the corresponding function by calling the SDK corresponding to the method of this embodiment.

[0036] FIG1 is a schematic diagram of an application scenario of the image generation method provided by an embodiment of the present disclosure. Referring to FIG1 , within the video editing interface of the video editing software, a material window for selecting and loading media materials, a preview window for displaying preview videos, and a video editing window are provided. The video editing window includes multiple video editing tracks, each of which contains media materials such as video clips, music clips, and special effects. Users can perform editing operations such as adding, deleting, and modifying the media materials on the video editing tracks as needed. Each video editing track corresponds to the same timeline. By editing the media materials on each video editing track, the design of the screen content of the video data at a specific moment can be achieved. At the same time, after the content on the video editing track changes, the video editing software can generate a corresponding video image in real time, such as a preview image corresponding to the editing operation. The image is displayed in the preview window to display the editing results, allowing the user to further adjust and edit the video data based on the preview results. For example, as shown in Figure 1, video clip #1 and video clip #2 are set on the video editing track Track_1, video clip #3 is set on the video editing track Track_2, and music clip #4 is set on the video editing track Track_3. Afterwards, the user enters an editing instruction to move the video clip #1 on the video editing track Track_1 to the video editing track Track_2, and the content of the video data changes. At the same time, the video image of the changed video data is displayed in the preview window of the video editing interface.

[0037] For the above application scenarios, when the terminal device responds to the above editing instructions and generates video images (through video editing software), it will execute a complete image generation chain. The image generation chain is composed of multiple processing steps, such as: video material decoding, special effect position setting, multi-channel media material fusion, and synthetic image display. In the prior art, the execution of the above image generation chain is fixed. In response to different editing instructions, it is necessary to execute the complete image generation chain. For example, the editing operation of moving the media material of the first video editing track to the second video editing track requires the execution of multiple steps such as decoding, setting, and multi-channel synthesis of the moved media material to generate the final video image. This leads to problems such as slow video image generation speed and untimely response, which affects the efficiency of video editing. The disclosed embodiment provides a video processing method to solve the above problems.

[0038] Refer to Figure 2, which is a flowchart of an image generation method provided by an embodiment of the present disclosure. The method of this embodiment can be applied in a terminal device, and the image generation method includes:

[0039] Step S101: receiving a first editing instruction for video data, where the first editing instruction is used to set editing content of the video data.

[0040] Exemplarily, referring to the application scenario diagram shown in FIG1 , after the video editing software is started, based on the specific operation of the user, a new video processing task / project is created, or an existing video processing task / project is loaded, thereby displaying a video editing interface for the video data. In the case of a new processing task / project, the displayed video editing interface may not include a video editing track, or may only have one or a few empty video editing tracks, where an empty video editing track refers to a video editing track on which no media material is set. Afterwards, based on the first editing instruction input by the user, the video editing track is further increased or decreased, or at least one media material is set on the video editing track; and in the case of loading an existing video processing task / project, after the video editing software loads the video processing task / project of the video data, at least one valid video editing track of the video data is displayed in the video editing page, and at least one media material is set on the valid video editing track.

[0041] Furthermore, the terminal device receives a first editing instruction input by the user, wherein the first editing instruction refers to an instruction obtained by the terminal device through the human-computer interaction interface to convert the user operation, and is used to set the media materials in the video editing track and / or the video bias track of the above-mentioned video to be generated, such as adding media materials, deleting media materials, setting the position of media materials on the video editing track, setting the video editing track where the media materials are located, etc. The setting items of the video data specifically indicated by the first editing instruction are, i.e., the editing content. The specific implementation method of the first editing instruction can be set as needed and will be described in detail in the subsequent embodiments.

[0042] Step S102: Based on the first editing instruction, configure the target engine module to obtain the configured target engine module, wherein the target engine module is an engine module for controlling the editing content among the at least two engine modules corresponding to the image generation link, the image generation link is used to represent the processing flow of generating a video image of video data, and the engine module is used to implement at least one processing step in the processing flow.

[0043] Step S103: calling the configured target engine module separately to generate a video image of the video data.

[0044] For example, the image generation method provided in this embodiment implements an image generation chain using a pre-set independent engine module. More specifically, the engine module is provided by a pre-set image processing engine. The image generation chain represents the process flow for generating a video image of video data. A view image can refer to one or more preview frames generated in real time by a terminal device in response to an editing operation, or it can refer to the final rendered output video. This is not specifically limited and can be configured as needed. The engine module implements at least one processing step in the process flow. By configuring the engine module, the operating logic of the engine module can be set, thereby configuring the entire image generation chain. Figure 3 is a schematic diagram of an engine module provided in an embodiment of the present disclosure. As shown in Figure 3, the image processing engine is pre-set with an image loading module, an image processing module, a track synthesis module, and an image display module. The image loading module is used to load media materials onto the video editing track. The image processing module is used to perform image processing on the media materials, the track synthesis module is used to overlap and merge at least two media materials to generate a video image of the video data, and the image display module is used to display the video image of the video data in a preview window. The above four engine modules are connected in sequence and execute corresponding processing steps respectively to realize the execution of the image generation link.

[0045] Furthermore, after receiving the first editing instruction, based on the setting target represented by the first editing instruction, that is, the editing content of the video data, an engine module that matches the editing content, that is, a target engine module, is determined to respond to the first editing instruction. The target engine module is an engine module that can control the editing content. Specifically, for example, when the video data editing content set by the first editing instruction is to set the display level of each media material constituting the video data, the opposite target engine module is determined to be a track synthesis module that can control the display level of each media material in the video data; when the video data editing content set by the first editing instruction is to set the position of a certain media material constituting the video data in the image to be synthesized, the corresponding target engine module is determined to be an image processing module that can control the image position of the media material. In actual applications, the target engine module matched by the first editing instruction can be determined based on the specific functions implemented by each engine module, and the specific matching method will not be repeated one by one.

[0046] After determining the target engine module, the target engine module is configured based on the first editing instruction, so that the target engine model can operate based on the working logic and parameters indicated by the first editing instruction, thereby generating a video image to be synthesized according to the settings of the first editing instruction. The following describes the implementation process of step S102 using a more specific embodiment:

[0047] In one possible implementation, a video image of video data overlaps and displays at least two media materials at a target moment. A first editing instruction is used to set a display level of the media material. According to the editing content set by the first editing instruction, a target engine module that matches it is a track synthesis module. The track synthesis module is used to overlap and merge at least two media materials based on the display level of the media material to generate a video image of the video data. Further, exemplarily, the first editing instruction includes a target parameter, which is used to characterize the mapping relationship between the sequence value and the display level of at least one video editing track. The first editing instruction can be implemented based on the user's setting operation of the video editing track in the video editing interface. Figure 4 is a schematic diagram of a process for generating a first editing instruction provided by an embodiment of the present disclosure. As shown in Figure 4, a plurality of video editing tracks are set in the video editing window, and each level of video editing track corresponds to a sequence value (shown as #1, #2 and #3 in the figure). The video editing window is also provided with a first combination and a second component. When the first component is triggered (for example, the user clicks the first component, the same below), the target parameter para_1 is generated. At this time, the sequence value corresponds to the display level inversely, that is, the smaller the sequence value, the higher the display level; when the second component is triggered, the target parameter para_2 is generated. At this time, the sequence value corresponds to the display level in a positive direction, that is, the larger the sequence value, the lower the display level. Based on the specific user operation, the first editing instruction is generated to include the above-mentioned target parameter para_1 or target parameter para_2. Afterwards, according to the target parameters in the first editing instruction, the corresponding target engine module is configured. For example, the target parameter para_1 is configured to the track synthesis module, so that the track synthesis module can obtain the corresponding display level based on the sequence values ​​corresponding to the video editing tracks at each level, and overlap and merge the media materials on the video editing track based on the display level to generate a video image of the overlapping display media materials.

[0048] Furthermore, after the target engine module is configured, the configured target engine module is obtained. Subsequently, the engine modules corresponding to the image generation chain are sequentially called, for example, the image loading module, the image processing module, and the configured track synthesis module are sequentially called to complete the execution of the image generation chain and ultimately generate a video image of the video data set by the first editing instruction. By decoupling the image generation chain through multiple engine modules, and only configuring the target engine module corresponding to the first editing instruction, while other non-engine modules do not need to be configured or changed, the image generation chain is rapidly updated, the operational stability of the image generation chain is improved, and the video image of the video data is rapidly generated.

[0049] In this embodiment, an image generation method, apparatus, electronic device, and storage medium receive a first editing instruction for video data, the first editing instruction being used to set editing content for the video data; configure a target engine module based on the first editing instruction to obtain a configured target engine module, wherein the target engine module is an engine module for controlling editing content among at least two engine modules corresponding to an image generation chain, the image generation chain being used to represent a processing flow for generating a video image of the video data, and the engine module being used to implement at least one processing step in the processing flow; and independently call the configured target engine module to generate a video image of the video data. After receiving the first editing instruction, only the target engine module for controlling the editing content corresponding to the first editing instruction is configured, thereby achieving functional decoupling of the engine modules. In this case, responding to the first editing instruction does not affect the entire image generation chain, thereby reducing the processing steps for generating a composite image, improving processing efficiency, and increasing the generation speed and response speed of the video image.

[0050] Referring to FIG5 , FIG5 is a second flow chart of the image generation method provided by an embodiment of the present disclosure. In this embodiment, based on the embodiment shown in FIG2 , step S102 is further refined, and a step of generating an image generation link is added. The image generation method includes:

[0051] Step S201: Receive a second editing instruction, where the second editing instruction includes at least two ordered step identifiers, and the step identifier is used to represent an engine module.

[0052] Step S202: generating an image generation link according to the second editing instruction, where the image generation link is used to generate at least two segments of media material video data for overlapping display at a target time.

[0053] Exemplarily, the second editing instruction is an instruction for generating an image generation link, that is, an instruction for setting a processing flow of video data. In a specific application scenario, when different processing flows are used for video data, different image generation links are used. For example, under the first processing flow, in the process of editing video data, whenever the video to be processed changes in response to the first editing instruction, only the video image of the changed video to be processed is statically displayed through the preview window; under the second processing flow, in the process of editing video data, whenever the video to be processed changes in response to the first editing instruction, the video clip of the changed video to be processed is dynamically displayed through the preview window; under the third processing flow, in the process of editing video data, whenever the video to be processed changes in response to the first editing instruction, the video clip of the changed video to be processed is dynamically displayed through the preview window while playing the audio material corresponding to the video to be processed. The above-mentioned different processing flows can be implemented through different image generation links.

[0054] In one possible implementation, the video editing software pre-sets a default image generation link, and when the terminal device does not receive the second editing instruction, the default image generation link is used to execute the subsequent processing flow; or, based on the selection instruction input by the user, an image generation link is selected from a plurality of preset image generation links to execute the subsequent processing flow. In another possible implementation, after the terminal device receives the second editing instruction through the video editing software, it constructs a new, personalized image generation link based on at least two ordered step identifiers included in the second editing instruction, wherein the step identifier is used to represent an engine module, and the engine module is provided by the image processing engine, and the specific usage is not repeated here. In this embodiment, by receiving the second editing instruction, the generated image generation link is used to generate at least two segments of media material video data that are displayed overlappingly at the target moment.

[0055] In this embodiment, by receiving the second editing instruction, a new image processing chain is constructed according to at least two ordered step identifiers included in the second editing instruction, thereby realizing personalized image processing and image generation processing steps, meeting the user's personalized needs, and improving the editing efficiency and operation efficiency in the image editing process.

[0056] Furthermore, in a possible implementation, the image generation link is implemented based on a text image description language, wherein the text image description language provides a simple method for describing graphics and can be understood by humans and computer programs. Figure 6 is a schematic diagram of an image generation link represented by a text image description language provided by an embodiment of the present disclosure. As shown in Figure 6, the image generation link L1 is used to implement the video preview function, which is implemented by sequentially calling the image loading module M1, the image processing module M2 and the track synthesis module M3, that is, the image loading module M1, the image processing module M2 and the track synthesis module M3 are sequentially called. After executing the three processing steps, a video image is generated. The image generation link is represented as "M1—>M2—>M3" based on the text image description language. Since the image generation link is generated based on the second editing instruction input by the user, the image generation link is represented by the text image description language, which can simplify the instruction complexity of the second editing instruction, and make the generated image generation link more readable, thereby improving the efficiency of the user in constructing a customized image generation link.

[0057] Step S203: Receive a third editing instruction, where the third editing instruction includes at least one custom parameter.

[0058] Step S204: registering the configuration parameters of the engine module according to the third editing instruction, so that the engine module can be configured based on the custom parameters.

[0059] Furthermore, the third editing instruction is an instruction for registering custom parameters. The configuration parameters used by the engine model usually have preset names, such as para_1, para_2, and para_3 for the engine module M1. Since the configuration parameters are fixed, it is impossible to customize the parameter names or dynamically load the parameters. In this embodiment, by receiving the custom parameters in the third editing instruction input by the user, the configuration parameters of the engine module are registered, that is, a mapping relationship between the custom parameters and the original configuration parameters of the engine model is established, so that when the engine module is subsequently called, it can be called based on the custom parameters. More specifically, for example, the engine module M1 has a configuration parameter called "brightness" for controlling the brightness of the video. After receiving the third editing instruction and responding, the terminal device registers the custom parameter "bright" with the engine module M1. Subsequently, when the engine module M1 is called, the parameter "bright" can be used to control the brightness of the video.

[0060] In this embodiment, the configuration parameters of the engine module are registered by using the third editing instruction, thereby realizing dynamic registration of the configuration parameters of the engine module. When the first editing instruction is used to configure the target engine module, the efficiency of the user inputting the first editing instruction can be improved, thereby improving the efficiency of human-computer interaction.

[0061] Step S205: receiving a first editing instruction for video data, wherein the first editing instruction includes a target parameter, and the target parameter is used to represent a mapping relationship between a sequence value of at least one video editing track and a display level.

[0062] The specific implementation of step S205 has been introduced in step S102 of the embodiment shown in FIG. 2 and will not be repeated here.

[0063] Optionally, after step S205, the method further includes:

[0064] Step S206: Perform load detection on the image generation link.

[0065] For example, when a user operates video editing software to edit video data, since responding to a first operation instruction requires consuming corresponding system computing resources, the terminal device often needs to respond in a task queue after receiving multiple first editing instructions in succession, thereby avoiding the problem of stopping response (out of memory) due to resource exhaustion. Therefore, in this embodiment, after receiving the first operation instruction, the execution load of the image generation link corresponding to the first operation instruction is first detected. For example, as shown in Figure 7, the specific implementation method of step S206 includes:

[0066] Step S2061: In response to the first editing instruction, a corresponding request token is generated. The request token is used to represent an image generation task for an image generation link. The request token is released after the image generation task is completed.

[0067] Step S2062: Obtain the preset target number of request tokens.

[0068] Step S2063: Obtain the real-time number of currently existing request tokens and compare it with the target number.

[0069] Step S2064: If the real-time quantity is less than the preset target quantity, execute step S207; otherwise, return to step S2063.

[0070] Example action: in response to receiving the first editing instruction, a request token for the task corresponding to the first editing instruction is generated. The request token is an identification information that characterizes the requested task and corresponds to a certain computing resource. In one possible implementation, a request token is generated, that is, a token thread is created for executing the corresponding image generation link. Afterwards, the number of token threads currently running in the memory is calculated, that is, the real-time number. If the real-time number is equal to or greater than the preset target number, it means that the load is large at this time, and then the newly generated first editing instruction will not be responded to for the time being. Optionally, after waiting for a preset period of time, return to step S2063 and re-compare. As other image generation links are executed, each time the corresponding task is completed, the request token will be released, and the real-time number of the request token will decrease until the real-time number of the currently running request token is less than the target number, then start responding to the first editing instruction and execute subsequent steps.

[0071] In the steps of this embodiment, by setting a target number of request tokens, the number of image generation links currently executed by the system is controlled, thereby avoiding the problem of stopping response due to exhaustion of computing resources and improving the real-time and stability of generating image preview frames during video editing.

[0072] Exemplarily, as shown in FIG8 , the specific implementation of step S2062 includes:

[0073] Step S2062A: Obtain the link length of the image generation link, where the link length represents the number of processing steps in the processing flow corresponding to the image generation link;

[0074] Step S2062B: Obtain the target quantity based on the link length.

[0075] For example, for different image generation links, that is, different image processing processes, the computing resources required and consumed are different. Setting a fixed target number to limit the number of request tokens will lead to the problem of low resource utilization. In this embodiment, the corresponding target number is determined by the link length of the image generation link. The longer the link length of the image generation link, the more processing steps and the more resources are consumed, and the corresponding target number is smaller, so as to limit the number of request tokens, reduce the number of image generation links executed at the same time, and ensure system stability; and the shorter the link length of the image generation link, the fewer processing steps and the less resources are consumed, and the corresponding target number is larger, so as to increase the number of request tokens, increase the number of image generation links executed at the same time, and improve response speed.

[0076] Step S207: obtaining a track synthesis module corresponding to the first editing instruction, where the track synthesis module includes at least two first functional units arranged in order and one second functional unit.

[0077] Step S208: Based on the target parameters, the sequence values ​​corresponding to the first functional units are configured to obtain a configured track synthesis module.

[0078] Step S209: calling the configured track synthesis module to generate a video image of the video data.

[0079] Exemplarily, the first functional unit is used to obtain the media material on the video editing track of the corresponding sequence value and send the media material to the first functional unit; the second functional unit is used to orderly merge the corresponding media material based on the unit sorting corresponding to the first functional unit to obtain video data.

[0080] In a possible implementation, the engine module can be composed of a plurality of orderly connected functional units, that is, the engine module also contains a smaller processing link inside, thereby realizing the specific functions of the engine module. In the process of configuring the engine module, the configuration of the engine module is realized by configuring the functional units inside the engine module. Figure 9 is a schematic diagram of the configuration process of a track synthesis module provided by an embodiment of the present disclosure. As shown in Figure 9, the track synthesis module M includes three first functional units, namely functional unit M1_1, functional unit M1_2, and functional unit M1_3; and a second functional unit, namely functional unit M2. Among them, the sequence value currently corresponding to the functional unit M1_1 is #1, and the functional unit M1_1 currently obtains the media material media_1 on the video editing track with the sequence value #1; similarly, the sequence value currently corresponding to the functional unit M1_2 is #2, which is used to obtain the media material media_2 on the video editing track with the sequence value #2; the sequence value currently corresponding to the functional unit M1_3 is #3, which is used to obtain the media material media_3 on the video editing track with the sequence value #3. The functional unit M_2 sequentially merges the obtained media materials media_1, media material media_2, and media material media_3 in an orderly manner according to the unit sorting of each first functional unit, i.e., the order of M1_1, M1_2, and M1_3, to generate a video image P1 of the video data. In the video image P1, at the target moment, the media materials media_1, media material media_2, and media material media_3 are displayed overlappingly in sequence, for example, the media material media_1 is at the highest display level (top level), the media material media_2 is at the middle display level (middle level), and the media material media_3 is at the lowest display level (bottom level).

[0081] After receiving the first editing instruction, according to the target parameters in the first editing instruction, the sequence value corresponding to the function unit M1_1 is configured to a sequence value of #2, and the sequence value corresponding to the function unit M1_2 is configured to a sequence value of #1. After configuration, the function unit M1_1 is used to obtain the media material media_2 on the video editing track with a sequence value of #2; and the function unit M1_2 is used to obtain the media material media_1 on the video editing track with a sequence value of #1, and the function unit M1_3 is used to obtain the media material media_3 on the video editing track with a sequence value of #3. Afterwards, the functional unit M_2 merges the obtained media materials media_2, media material media_1, and media material media_3 in order according to the unit sorting of each first functional unit, that is, the order of M1_1, M1_2, and M1_3, to generate a video image P2 of the video data. In the video image P2, at the target moment, the media materials media_2, media material media_1, and media material media_3 are displayed overlappingly in order, for example, the media material media_2 is at the highest display level (top level), the media material media_1 is at the middle display level (middle level), and the media material media_3 is at the lowest display level (bottom level).

[0082] Furthermore, in a possible implementation, before step S209, the following steps are further included:

[0083] Step S200: obtaining mode configuration information, where the mode configuration information is used to indicate the response mode of each engine module corresponding to the image generation link to the first editing instruction, wherein the response mode includes a data push mode or a data pull mode.

[0084] Accordingly, in a possible implementation, a specific implementation of step S209 includes: based on the mode configuration information, sequentially calling each engine module corresponding to the image generation link to generate a video image of the video data.

[0085] For example, data push mode and data pull mode are two different message processing modes. In the data push mode, starting from the upstream functional unit of the engine module (e.g., the second functional unit for obtaining media materials in the embodiment shown in FIG9 ), the processing results of the upstream functional units are sent to the downstream functional units step by step until the most downstream functional unit, ultimately achieving the generation and display of the video image of the output video. In the data pull mode, starting from the downstream functional unit of the engine module, request information is sent to the upstream functional units in sequence to inform the adjacent upstream functional units of the required data until the most upstream functional unit of the engine module (e.g., the second functional unit for obtaining media materials in the embodiment shown in FIG9 ) is reached. The most upstream functional unit determines the corresponding configuration parameters based on the received request information and then sends the processing results in reverse to the downstream functional units. For example, the second most upstream functional unit in the engine module sends the media data on track_1 and track_3 to the downstream functional units based on the received request information. After that, the downstream functional units send the processing results downward in sequence, ultimately achieving the generation and display of the video image of the output video. The process is the same as the data push mode and will not be repeated here.

[0086] In this embodiment, the response mode of each engine module is configured through mode configuration information, thereby achieving a more flexible video editing process and improving video editing efficiency. In particular, in the scheme of using the data pull mode to sequentially call the engine modules corresponding to the image generation link to generate video images of the video data, the corresponding media materials can be reversely obtained for display according to the specific needs of the final output video image without obtaining all the media materials. For example, media materials that are completely obscured in the video image do not need to be processed in the data pull mode. Therefore, the efficiency of image processing can be effectively improved, the efficiency of video image generation can be improved, and the consumption of computing resources can be reduced.

[0087] Corresponding to the image generation method of the above embodiment, FIG10 is a structural block diagram of the image generation device provided by the embodiment of the present disclosure. For ease of explanation, only the parts related to the embodiment of the present disclosure are shown. Referring to FIG10, the image generation device 3 includes:

[0088] The receiving module 31 is configured to receive a first editing instruction for video data, where the first editing instruction is used to set editing content of the video data.

[0089] The processing module 32 is used to configure the target engine module based on the first editing instruction to obtain the configured target engine module, wherein the target engine module is an engine module for controlling the editing content among the at least two engine modules corresponding to the image generation link, the image generation link is used to represent the processing flow of generating a video image of video data, and the engine module is used to implement at least one processing step in the processing flow.

[0090] The generating module 33 is used to independently call the configured target engine module to generate a video image of the video data.

[0091] In one embodiment of the present disclosure, a video image of video data overlaps and displays at least two media materials at a target moment, and a first editing instruction is used to set a display level of the media materials; the target engine module is a track synthesis module, and the track synthesis module is used to overlap and merge at least two media materials based on the display level of the media materials to generate a video image of the video data.

[0092] In one embodiment of the present disclosure, the first editing instruction includes a target parameter, which is used to characterize the mapping relationship between the sequence value of at least one video editing track and the display level. The track synthesis module includes at least two ordered first functional units and one second functional unit, wherein the first functional unit is used to obtain the media material on the video editing track corresponding to the sequence value and send the media material to the first functional unit; the second functional unit is used to orderly merge the corresponding media material based on the unit sorting corresponding to the first functional unit to generate a video image of the video data; the processing module 32 is specifically used to: configure the sequence value corresponding to each first functional unit based on the target parameter, and obtain the configured track synthesis module.

[0093] In one embodiment of the present disclosure, after receiving the first editing instruction, the processing module 32 is further used to: generate a corresponding request token, the request token is used to represent an image generation task for an image generation link, and the request token is released after the image generation task is completed; obtain the real-time number of currently existing request tokens; the processing module 32 is specifically used to: if the real-time number is less than the preset target number, then based on the first editing instruction, configure the target engine module to obtain the configured target engine module.

[0094] In one embodiment of the present disclosure, the processing module 32 is further used to: obtain the link length of the image generation link, where the link length represents the number of processing steps in the processing flow corresponding to the image generation link; and obtain the target number based on the link length.

[0095] In one embodiment of the present disclosure, at least two engine modules corresponding to the image generation link also include an image loading module and an image processing module, wherein the image loading module is used to load media materials onto the video editing track; and the image processing module is used to perform image processing on the media materials.

[0096] In one embodiment of the present disclosure, the receiving module 31 is further used to: receive a second editing instruction, the second editing instruction including at least two ordered step identifiers, the step identifiers being used to represent an engine module; and generate an image generation link according to the second editing instruction, wherein the image generation link is implemented based on a text graphic description language.

[0097] In one embodiment of the present disclosure, the receiving module 31 is further used to: receive a third editing instruction, which includes at least one custom parameter; and register the configuration parameters of the engine module according to the third editing instruction, so that the engine module can be configured based on the custom parameters.

[0098] In one embodiment of the present disclosure, the generation module 33 is further used to: obtain mode configuration information, the mode configuration information is used to indicate the response mode of each engine module corresponding to the image generation link to the first editing instruction, wherein the response mode includes a data push mode or a data pull mode; the generation module 33 is specifically used to: based on the mode configuration information, sequentially call each engine module corresponding to the image generation link to generate a video image of the video data.

[0099] The receiving module 31, processing module 32 and generating module 33 are connected in sequence. The image generating device 3 provided in this embodiment can implement the technical solution of the above method embodiment, and its implementation principle and technical effect are similar, which will not be described in detail in this embodiment.

[0100] FIG11 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure. As shown in FIG11 , the electronic device 7 includes:

[0101] A processor 41, and a memory 42 communicatively connected to the processor 41;

[0102] Memory 42 stores computer-executable instructions;

[0103] The processor 41 executes the computer-executable instructions stored in the memory 42 to implement the image generation method in the embodiments shown in FIG. 2 to FIG. 9 .

[0104] Optionally, the processor 41 and the memory 42 are connected via a bus 43 .

[0105] The relevant explanations can be understood by referring to the relevant descriptions and effects corresponding to the steps in the embodiments corresponding to Figures 2 to 9, and no further details will be given here.

[0106] An embodiment of the present disclosure provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are executed by a processor, they are used to implement the image generation method provided in any of the embodiments corresponding to Figures 2 to 9 of the present disclosure.

[0107] The present disclosure provides a computer program product, including a computer program. When the computer program is executed by a processor, the image generation method in the embodiments shown in FIG. 2 to FIG. 9 is implemented.

[0108] Referring to FIG12 , there is shown a schematic diagram of the structure of an electronic device 900 suitable for implementing an embodiment of the present disclosure. The electronic device 900 may be a terminal device or a server. The terminal device may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, personal digital assistants (PDAs), tablet computers (Portable Android Devices, PADs), portable multimedia players (PMPs), vehicle-mounted terminals (e.g., vehicle-mounted navigation terminals), and fixed terminals such as digital TVs and desktop computers. The electronic device shown in FIG12 is merely an example and should not limit the functionality and scope of use of the embodiments of the present disclosure.

[0109] As shown in FIG12 , the electronic device 900 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 into a random access memory (RAM) 903. Various programs and data required for the operation of the electronic device 900 are also stored in the RAM 903. The processing device 901, the ROM 902, and the RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.

[0110] Typically, the following devices may be connected to the I / O interface 905: an input device 906 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 907 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 908 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 909. The communication device 909 may allow the electronic device 900 to communicate with other devices wirelessly or by wire to exchange data. Although FIG12 shows an electronic device 900 with various devices, it should be understood that it is not required to implement or have all of the devices shown. More or fewer devices may be implemented or have alternatively.

[0111] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network via the communication device 909, or installed from the storage device 908, or installed from the ROM 902. When the computer program is executed by the processing device 901, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.

[0112] It should be noted that the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, device, or component. In the present disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination thereof.

[0113] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.

[0114] The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device executes the method shown in the above embodiment.

[0115] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages, or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet Service Provider).

[0116] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the module, program segment, or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0117] The units involved in the embodiments described in this disclosure may be implemented in software or hardware. In some cases, the name of a unit does not limit the unit itself. For example, the first acquisition unit may also be described as a "unit for acquiring at least two Internet Protocol addresses."

[0118] The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, and without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.

[0119] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0120] In a first aspect, according to one or more embodiments of the present disclosure, there is provided an image generation method, comprising:

[0121] A first editing instruction for video data is received, where the first editing instruction is used to set the editing content of the video data; based on the first editing instruction, a target engine module is configured to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among at least two engine modules corresponding to the image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow; the configured target engine module is separately called to generate a video image of the video data.

[0122] According to one or more embodiments of the present disclosure, the video image of the video data overlaps and displays at least two media materials at a target moment, and the first editing instruction is used to set the display level of the media material; the target engine module is a track synthesis module, and the track synthesis module is used to overlap and merge at least two of the media materials based on the display level of the media material to generate a video image of the video data.

[0123] According to one or more embodiments of the present disclosure, the first editing instruction includes a target parameter, which is used to characterize the mapping relationship between the sequence value of at least one video editing track and the display level. The track synthesis module includes at least two ordered first functional units and one second functional unit, wherein the first functional unit is used to obtain the media material on the video editing track corresponding to the sequence value and send the media material to the first functional unit; the second functional unit is used to orderly merge the corresponding media material based on the unit sorting corresponding to the first functional unit to generate a video image of the video data; the target engine module is configured based on the first editing instruction to obtain the configured target engine module, including: configuring the sequence value corresponding to each of the first functional units based on the target parameter to obtain the configured track synthesis module.

[0124] According to one or more embodiments of the present disclosure, after receiving the first editing instruction, it also includes: generating a corresponding request token, the request token is used to represent an image generation task for the image generation link, and the request token is released after the image generation task is completed; obtaining the real-time number of currently existing request tokens; configuring the target engine module based on the first editing instruction to obtain the configured target engine module, including: if the real-time number is less than the preset target number, then configuring the target engine module based on the first editing instruction to obtain the configured target engine module.

[0125] According to one or more embodiments of the present disclosure, the method further includes: obtaining a link length of the image generation link, the link length representing the number of processing steps of the processing flow corresponding to the image generation link; and obtaining the target number based on the link length.

[0126] According to one or more embodiments of the present disclosure, the at least two engine modules corresponding to the image generation link further include an image loading module and an image processing module, wherein the image loading module is used to load media materials onto the video editing track; and the image processing module is used to perform image processing on the media materials.

[0127] According to one or more embodiments of the present disclosure, the method further includes: receiving a second editing instruction, the second editing instruction including at least two ordered step identifiers, the step identifiers being used to characterize an engine module; generating an image generation link according to the second editing instruction, wherein the image generation link is implemented based on a text graphics description language.

[0128] According to one or more embodiments of the present disclosure, the method further includes: receiving a third editing instruction, wherein the third editing instruction includes at least one custom parameter; and registering the configuration parameters of the engine module according to the third editing instruction so that the engine module can be configured based on the custom parameters.

[0129] According to one or more embodiments of the present disclosure, it also includes: obtaining mode configuration information, wherein the mode configuration information is used to indicate the response mode of each engine module corresponding to the image generation link to the first editing instruction, wherein the response mode includes a data push mode or a data pull mode; the separately calling the configured target engine module to generate a video image of the video data includes: based on the mode configuration information, sequentially calling each engine module corresponding to the image generation link to generate a video image of the video data.

[0130] In a second aspect, according to one or more embodiments of the present disclosure, there is provided an image generating apparatus, comprising:

[0131] The receiving module is configured to receive a first editing instruction for video data, where the first editing instruction is used to set editing content of the video data.

[0132] A processing module is used to configure a target engine module based on the first editing instruction to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among the at least two engine modules corresponding to the image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow.

[0133] The generating module is used to separately call the configured target engine module to generate a video image of the video data.

[0134] According to one or more embodiments of the present disclosure, the video image of the video data overlaps and displays at least two media materials at a target moment, and the first editing instruction is used to set the display level of the media material; the target engine module is a track synthesis module, and the track synthesis module is used to overlap and merge at least two of the media materials based on the display level of the media material to generate a video image of the video data.

[0135] According to one or more embodiments of the present disclosure, the first editing instruction includes a target parameter, which is used to characterize the mapping relationship between the sequence value of at least one video editing track and the display level. The track synthesis module includes at least two ordered first functional units and one second functional unit, wherein the first functional unit is used to obtain the media material on the video editing track corresponding to the sequence value and send the media material to the first functional unit; the second functional unit is used to orderly merge the corresponding media materials based on the unit sorting corresponding to the first functional unit to generate a video image of the video data; the processing module is specifically used to: configure the sequence value corresponding to each of the first functional units based on the target parameter, and obtain the configured track synthesis module.

[0136] According to one or more embodiments of the present disclosure, after receiving the first editing instruction, the processing module is further used to: generate a corresponding request token, the request token is used to represent an image generation task for the image generation link, and the request token is released after the image generation task is completed; obtain the real-time number of currently existing request tokens; the processing module 32 is specifically used to: if the real-time number is less than the preset target number, then based on the first editing instruction, configure the target engine module to obtain the configured target engine module.

[0137] According to one or more embodiments of the present disclosure, the processing module is further used to: obtain the link length of the image generation link, where the link length represents the number of processing steps in the processing flow corresponding to the image generation link; and obtain the target number based on the link length.

[0138] According to one or more embodiments of the present disclosure, the at least two engine modules corresponding to the image generation link further include an image loading module and an image processing module, wherein the image loading module is used to load media materials onto the video editing track; and the image processing module is used to perform image processing on the media materials.

[0139] In one embodiment of the present disclosure, the receiving module is further used to: receive a second editing instruction, the second editing instruction including at least two ordered step identifiers, the step identifiers being used to represent an engine module; and generate an image generation link according to the second editing instruction, wherein the image generation link is implemented based on a text graphics description language.

[0140] According to one or more embodiments of the present disclosure, the receiving module is further used to: receive a third editing instruction, wherein the third editing instruction includes at least one custom parameter; and register the configuration parameters of the engine module according to the third editing instruction, so that the engine module can be configured based on the custom parameters.

[0141] According to one or more embodiments of the present disclosure, the generation module is further used to: obtain mode configuration information, wherein the mode configuration information is used to indicate the response mode of each engine module corresponding to the image generation link to the first editing instruction, wherein the response mode includes a data push mode or a data pull mode; the generation module is specifically used to: based on the mode configuration information, sequentially call each engine module corresponding to the image generation link to generate a video image of the video data.

[0142] In a third aspect, according to one or more embodiments of the present disclosure, there is provided an electronic device, comprising: a processor, and a memory communicatively connected to the processor;

[0143] The memory stores computer-executable instructions;

[0144] The processor executes the computer-executable instructions stored in the memory to implement the image generation method described in the first aspect and various possible designs of the first aspect.

[0145] In a fourth aspect, according to one or more embodiments of the present disclosure, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer-executable instructions. When a processor executes the computer-executable instructions, the image generation method described in the first aspect and various possible designs of the first aspect is implemented.

[0146] In a fifth aspect, an embodiment of the present disclosure provides a computer program product, including a computer program, which, when executed by a processor, implements the image generation method described in the first aspect and various possible designs of the first aspect.

[0147] The above description is merely a preferred embodiment of the present disclosure and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by the specific combination of the above-mentioned technical features, but also includes other technical solutions formed by any combination of the above-mentioned technical features or their equivalents without departing from the above-mentioned disclosed concepts. For example, a technical solution formed by replacing the above-mentioned features with (but not limited to) technical features with similar functions disclosed in this disclosure.

[0148] In addition, although each operation is described in a specific order, this should not be understood as requiring these operations to be performed in the specific order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details have been included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single embodiment in combination. On the contrary, the various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination mode.

[0149] Although the subject matter has been described in language specific to structural features and / or methodological logical acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims.

Claims

1. A method for generating an image, comprising: receiving a first editing instruction for video data, wherein the first editing instruction is used to set editing content of the video data; Based on the first editing instruction, a target engine module is configured to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among at least two engine modules corresponding to an image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow; as well as The configured target engine module is called separately to generate a video image of the video data.

2. The method according to claim 1, wherein: The video image of the video data overlaps and displays at least two media materials at a target time, and the first editing instruction is used to set a display level of the media materials; The target engine module is a track synthesis module, which is used to overlap and merge at least two of the media materials based on the display level of the media materials to generate a video image of the video data.

3. The method according to claim 2, wherein: The first editing instruction includes a target parameter, and the target parameter is used to represent a mapping relationship between a sequence value of at least one video editing track and a display level. The track synthesis module includes at least two ordered first functional units and one second functional unit, wherein the first functional unit is used to obtain a media material on a video editing track corresponding to the sequence value, and send the media material to the first functional unit; The second functional unit is used to sequentially merge corresponding media materials based on the unit sequence corresponding to the first functional unit to generate a video image of the video data; The step of configuring the target engine module based on the first editing instruction to obtain the configured target engine module includes: Based on the target parameters, the sequence values ​​corresponding to the first functional units are configured to obtain a configured track synthesis module.

4. The method according to any one of claims 1 to 3, wherein: After receiving the first editing instruction, the method further includes: Generate a corresponding request token, where the request token is used to represent an image generation task for the image generation link, and the request token is released after the image generation task is completed; Get the real-time number of existing request tokens; The step of configuring the target engine module based on the first editing instruction to obtain the configured target engine module includes: If the real-time number is less than the preset target number, a target engine module is configured based on the first editing instruction to obtain a configured target engine module.

5. The method according to claim 4, further comprising: Obtain the link length of the image generation link, wherein the link length represents the processing corresponding to the image generation link The number of processing steps in the process; The target quantity is obtained according to the link length.

6. The method according to claim 2, wherein: The at least two engine modules corresponding to the image generation link also include an image loading module and an image processing module, wherein the image loading module is used to load media materials onto the video editing track; and the image processing module is used to perform image processing on the media materials.

7. The method according to any one of claims 1 to 6, further comprising: receiving a second editing instruction, wherein the second editing instruction includes at least two ordered step identifiers, and the step identifiers are used to represent an engine module; According to the second editing instruction, an image generation link is generated, wherein the image generation link is implemented based on a text graphic description language.

8. The method according to any one of claims 1 to 7, further comprising: receiving a third editing instruction, wherein the third editing instruction includes at least one custom parameter; According to the third editing instruction, the configuration parameters of the engine module are registered so that the engine module can be configured based on the custom parameters.

9. The method according to any one of claims 1 to 8, further comprising: Acquire mode configuration information, where the mode configuration information is used to indicate a response mode of each engine module corresponding to the image generation link to the first editing instruction, wherein the response mode includes a data push mode or a data pull mode; The separately calling the configured target engine module to generate a video image of the video data includes: Based on the mode configuration information, each engine module corresponding to the image generation link is called in sequence to generate a video image of the video data.

10. An image generating device, comprising: A receiving module, used for receiving a first editing instruction for video data, wherein the first editing instruction is used for setting editing content of the video data; a processing module, configured to configure a target engine module based on the first editing instruction to obtain a configured target engine module, wherein the target engine module is an engine module for controlling the editing content among at least two engine modules corresponding to the image generation link, the image generation link is used to represent a processing flow for generating a video image of the video data, and the engine module is used to implement at least one processing step in the processing flow; A generation module is used to separately call the configured target engine module to generate a video image of the video data.

11. An electronic device, comprising: A processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the image generation method according to any one of claims 1 to 9.

12. A computer-readable storage medium, wherein: The computer-readable storage medium stores computer-executable instructions, and when the processor executes the computer-executable instructions, the image generation method according to any one of claims 1 to 9 is implemented.

13. A computer program product comprising a computer program, wherein: When the computer program is executed by a processor, the image generating method according to any one of claims 1 to 9 is implemented.

Citation Information

Patent Citations

  • Video editing method and system

    CN108600843A

  • Engine system and rendering method thereof

    CN111158866A

  • Multimedia editing method and device based on web page

    CN111666527A

  • Video clip synthesis method and electronic equipment

    CN113891113A

  • System resource allocation method and device

    CN116382899A