CN114615521A - Video processing method and device, computer readable storage medium and electronic equipment - Google Patents

Video processing method and device, computer readable storage medium and electronic equipment Download PDF

Info

Publication number
CN114615521A
CN114615521A CN202210234286.4A CN202210234286A CN114615521A CN 114615521 A CN114615521 A CN 114615521A CN 202210234286 A CN202210234286 A CN 202210234286A CN 114615521 A CN114615521 A CN 114615521A
Authority
CN
China
Prior art keywords
target
service
video
micro service
initial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210234286.4A
Other languages
Chinese (zh)
Other versions
CN114615521B (en
Inventor
刘聪
许健
刘思彦
刘柏
范长杰
周锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210234286.4A priority Critical patent/CN114615521B/en
Publication of CN114615521A publication Critical patent/CN114615521A/en
Application granted granted Critical
Publication of CN114615521B publication Critical patent/CN114615521B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Stored Programmes (AREA)

Abstract

The present disclosure relates to a video processing method and apparatus, a computer-readable storage medium, and an electronic device, and relates to the field of computer technology, wherein the method comprises: receiving request information sent by a client, analyzing initial video included in the request information to obtain a functional module included in the initial video, and packaging the functional module into micro service; acquiring a target micro service corresponding to the function module call chain in the micro service according to the function module call chain in the request information, and executing the target micro service to obtain result data; and acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client. The method and the device improve the efficiency of target video generation and reduce the resource consumption of users.

Description

Video processing method and device, computer readable storage medium and electronic equipment
Technical Field
The embodiment of the disclosure relates to the technical field of computers, in particular to a video processing method and device, a computer readable storage medium and an electronic device.
Background
Under the wave of the internet, the development of hardware and software technologies has promoted the emergence of intelligent devices and software. Meanwhile, videos based on virtual objects appear, and the requirements of different users are met.
In a virtual human-based video, information of a virtual object in the video, such as a motion, an expression, a gesture, etc., can be migrated to another virtual object. However, in the related art, the migration of actions, table migration, gestures, and the like of a virtual object requires downloading software development toolkits of all functional modules of the virtual object in a video, which occupies a storage space of a local machine of a user, and the subsequent update of the software development toolkits is difficult to synchronize the user in time; for the downloaded software development toolkit, the calling sequence of the functional modules and the logic realized by combination need to be compiled, so that the execution efficiency of the functional modules is reduced; a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and the like required when the software development kit of the function module runs need to be purchased, which results in higher use cost for the user.
Therefore, it is desirable to provide a new video processing method.
It is noted that the information disclosed in the above background section is only for enhancement of understanding of the background of the present disclosure and therefore may include information that does not constitute prior art that is already known to a person of ordinary skill in the art.
Disclosure of Invention
An object of the present disclosure is to provide a video processing method, a video processing apparatus, a computer-readable storage medium, and an electronic device, which overcome, at least to some extent, the problems of low performance efficiency of function modules and high use cost of users due to the limitations and disadvantages of the related art.
According to an aspect of the present disclosure, there is provided a video processing method including:
receiving request information sent by a client, analyzing initial video included in the request information to obtain a functional module included in the initial video, and packaging the functional module into micro service;
acquiring a target micro service corresponding to the function module call chain in the micro service according to the function module call chain in the request information, and executing the target micro service to obtain result data;
and acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client. In an exemplary embodiment of the present disclosure, parsing an initial video included in the request information to obtain a functional module included in the initial video includes:
acquiring an initial video included in the request information;
detecting the initial video, analyzing the activity of the virtual object when the initial video is determined to contain the virtual object, and acquiring the function of the virtual object contained in the initial video;
and acquiring a functional module corresponding to the function of the virtual object according to the function of the virtual object included in the initial video.
In an exemplary embodiment of the present disclosure, packaging the functional module as a microservice includes:
acquiring an environment required for executing the functional module;
and packaging the functional module and the environment required for executing the functional module into the micro-service.
In an exemplary embodiment of the present disclosure, before acquiring, according to a function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice, the video processing method further includes:
acquiring a function module to be called in the function module calling chain, determining a target micro service corresponding to the function module to be called, and generating a unique identifier corresponding to the target micro service;
and storing the target micro service and the unique identifier corresponding to the target micro service into a task information storage database.
In an exemplary embodiment of the present disclosure, obtaining a target microservice corresponding to the function module call chain included in the microservice, and executing the target microservice to obtain result data includes:
acquiring a calling sequence of the function module to be called in the function module calling chain;
and executing the target micro-service corresponding to the functional module to be called according to the calling sequence of the functional modules to be called to obtain the result data.
In an exemplary embodiment of the present disclosure, executing, according to a calling sequence of each function module to be called, a target microservice corresponding to the function module to be called to obtain the result data, where the executing includes:
acquiring an initial calling function module in the function modules to be called, an initial target micro-service corresponding to the initial calling function module and a message queue corresponding to the initial target micro-service;
writing service data corresponding to the initial target microservice into a message queue, and acquiring a dependent file for executing the initial target microservice in the shared data volume according to the unique identifier of the initial target microservice when the message queue responds that the service data exists;
executing the initial target micro service according to the dependent file to obtain intermediate data;
and executing the next target micro-service of the initial target micro-service by utilizing the intermediate data and the dependent file of the next target micro-service of the initial target micro-service to obtain the result data.
In an exemplary embodiment of the disclosure, executing a next target microservice of the starting target microservice using the intermediate data and a dependency file of the next target microservice of the starting target microservice to obtain the result data includes:
after intermediate data corresponding to the initial target micro service are obtained, storing the intermediate data to a return queue;
judging intermediate data included in the return queue, obtaining a next target microservice of the initial target microservice after the initial target microservice is determined to be executed, and writing service data of the next target microservice into a message queue corresponding to the next target microservice;
when the service data exist in the message queue corresponding to the next target micro service, acquiring a dependent file for executing the next target micro service in the shared data volume according to the unique identifier of the next target micro service; wherein the dependency file of the next target micro service at least comprises intermediate data of a last target micro service of the next target micro service;
and executing the next target micro service according to the dependent file of the next target micro service to obtain intermediate data of the next target micro service until the target micro service corresponding to the functional module to be called is completely executed to obtain the result data.
In an exemplary embodiment of the present disclosure, after obtaining the result data, the video processing method further includes:
acquiring a result return file included in the request information, and determining a target micro service of a result to be returned corresponding to the function module of the result to be returned according to the function module of the result to be returned included in the result return file;
uploading intermediate data obtained by executing the target micro service and the result data to a file object for storage;
and generating a download link corresponding to the intermediate data of the target micro service of the result to be returned and a download link of the result data, and sending the download link to the client.
In an exemplary embodiment of the present disclosure, generating a target video using the target model file and the result data includes:
acquiring target virtual object skeleton data included in the target model file;
and generating the target video according to the target virtual object bone data and the result data.
According to an aspect of the present disclosure, there is provided a video processing apparatus including:
the function encapsulation module is used for receiving request information sent by a client, analyzing initial video included in the request information to obtain a function module included in the initial video, and encapsulating the function module into micro-service;
a result data generating module, configured to obtain, according to a function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice, and execute the target microservice to obtain result data;
and the target video generation module is used for acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client.
According to an aspect of the present disclosure, there is provided a readable storage medium having stored thereon a computer program which, when executed by a processor, implements the video processing method according to any of the above-described exemplary embodiments.
According to an aspect of the present disclosure, there is provided an electronic device including:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the video processing method of any of the above exemplary embodiments via execution of the executable instructions.
The video processing method provided by the embodiment of the disclosure receives request information sent by a client, analyzes an initial video included in the request information to obtain a functional module included in the initial video, and encapsulates the functional module into a micro service; acquiring a target micro service corresponding to the function module call chain in the micro service according to the function module call chain in the request information, and executing the target micro service to obtain result data; acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client; on one hand, after request information of a client is received, an initial video included in the request information sent by the client is analyzed to obtain a function module included in the initial video, and the function module is packaged into a micro-service, so that the problems that a software development kit of all function modules of a virtual object needs to be downloaded and occupies a storage space of a local machine and a user needs to purchase a corresponding software environment and a corresponding hardware environment when executing the software development kit of the function module in the prior art are solved, the consumption of the capacity of the local storage space of the user is reduced, and the resource consumption of the user is reduced; on the other hand, the target micro-service corresponding to the function module call chain in the micro-service is determined according to the function module call chain included in the request information, and the target micro-service is executed, so that the problems that the downloaded software development toolkit needs to compile a call sequence and combine the logic to be realized in the related technology are solved, the target micro-service can be executed according to the function module call chain, and the execution efficiency of the function module is improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure. It is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without the exercise of inventive faculty.
Fig. 1 schematically illustrates a method flow diagram for video processing according to an example embodiment of the present disclosure.
Fig. 2 schematically illustrates a block diagram of a video processing system according to an example embodiment of the present disclosure.
Fig. 3 schematically shows a flowchart of a method for parsing an initial video in request information to obtain functional modules included in the initial video according to an example embodiment of the present disclosure.
FIG. 4 schematically illustrates a flow chart of a method of encapsulating functional modules as micro-services according to an example embodiment of the present disclosure.
Fig. 5 schematically illustrates a flow chart of a video processing method before acquiring a target microservice included in a microservice according to an example embodiment of the present disclosure.
FIG. 6 schematically illustrates a flow chart of a method of executing a target microservice, resulting in result data, according to an example embodiment of the present disclosure.
Fig. 7 is a flowchart schematically illustrating a method for executing a target microservice corresponding to a function module to be called according to a calling order of the function module to be called to obtain result data according to an exemplary embodiment of the present disclosure.
FIG. 8 schematically illustrates a flowchart of a method for executing a next target microservice with intermediate data and a dependency file of the next target microservice that initiates the target microservice, resulting in result data, according to an example embodiment of the present disclosure.
Fig. 9 schematically illustrates a flow chart of a video processing method after obtaining result data according to an example embodiment of the present disclosure.
FIG. 10 schematically illustrates a flow chart of a method for generating a target video using a target model file and result data according to an example embodiment of the present disclosure.
Fig. 11 schematically shows a block diagram of a video processing apparatus according to an example embodiment of the present disclosure.
Fig. 12 schematically illustrates an electronic device for implementing the above-described video processing method according to an exemplary embodiment of the present disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and the like. In other instances, well-known technical solutions have not been shown or described in detail to avoid obscuring aspects of the present disclosure.
Furthermore, the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repetitive description will be omitted. Some of the block diagrams shown in the figures are functional entities and do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
For a video based on a virtual object, information such as a motion, an expression, and a gesture of the virtual object in the video may be migrated to another virtual object, and specifically, identifying and processing the motion, the expression, and the gesture of the virtual object in the video, and outputting key data in the video includes: the method comprises the steps of setting a virtual object expression data set and a virtual object action model file, and applying output key data to a new virtual object. In the related art, when the actions, expressions, gestures and the like of a virtual object in a video are migrated, firstly, software development kits of all functional modules of the virtual object in the video are downloaded, and after the software development kits of the functional modules are downloaded, the calling sequence and the logic of a combination mode of the software development kits of the functional modules are compiled through codes; then, a CPU and a GPU required for a software development kit for running the function module are purchased, and a hardware environment and a software environment for executing the software development kit are built. And after preparing all execution environments, executing codes written by a user, and taking the video to be processed as input so as to obtain key data of the video to be processed. However, when the video to be processed is processed by the written code, a large amount of hardware resources of a user machine are occupied, and other software which is run by the user at the same time may be affected.
In view of one or more of the above problems, the present example embodiment first provides a video processing method, which may be run on a server, a server cloud, a cloud server, or the like; of course, those skilled in the art may also operate the method of the present invention on other platforms as needed, and this is not particularly limited in this exemplary embodiment. Referring to fig. 1, the video processing method may include the steps of:
step S110, receiving request information sent by a client, analyzing an initial video included in the request information to obtain a functional module included in the initial video, and packaging the functional module into a micro service;
s120, acquiring a target micro service corresponding to the function module calling chain in the micro service according to the function module calling chain in the request information, and executing the target micro service to obtain result data;
step S130, obtaining a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client.
The video processing method receives request information sent by a client, analyzes initial video included in the request information to obtain a functional module included in the initial video, and packages the functional module into micro-service; acquiring a target micro service corresponding to the function module call chain in the micro service according to the function module call chain in the request information, and executing the target micro service to obtain result data; acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client; on one hand, after request information of a client is received, an initial video included in the request information sent by the client is analyzed to obtain a function module included in the initial video, and the function module is packaged into a micro-service, so that the problems that in the prior art, a software development kit of all function modules of a virtual object needs to be downloaded, the storage space of a local machine is occupied, and a user needs to purchase a corresponding software environment and a corresponding hardware environment when executing the software development kit of the function module are solved, the consumption of the capacity of the local storage space of the user is reduced, and the resource consumption of the user is reduced; on the other hand, the target micro-service corresponding to the function module call chain in the micro-service is determined according to the function module call chain included in the request information, and the target micro-service is executed, so that the problems that the downloaded software development toolkit needs to compile a call sequence and combine the logic to be realized in the related technology are solved, the target micro-service can be executed according to the function module call chain, and the execution efficiency of the function module is improved.
Hereinafter, each step involved in the video processing method of the exemplary embodiment of the present disclosure is explained and explained in detail.
First, an application scenario and an object of the exemplary embodiments of the present disclosure are explained and explained. Specifically, the exemplary embodiment of the present disclosure may be applied to migration of actions, expressions, gestures, and the like of virtual objects in a video, and mainly researches how to improve migration efficiency of virtual objects in an initial video.
In the method, on the basis of the received request information, after the request information sent by the client is received, the initial video included in the request information is analyzed to obtain the function module of the virtual object included in the initial video, and the analyzed function module is packaged to obtain the micro-service, so that the resource consumption of the user for executing the function module is reduced; then, determining the target micro service to be executed and the execution sequence of the target micro service by using the function module call chain included in the request information, acquiring a dependent file required by the execution of the target micro service, executing the target micro service according to the dependent file, and obtaining a result file, thereby improving the execution efficiency of the function module; and finally, generating a target video according to the result file and the bone data of the target virtual object in the target model file included in the request information, so that the virtual object migration efficiency in the initial video is improved.
Next, the video processing system referred to in the exemplary embodiments of the present disclosure is explained and explained. Referring to fig. 2, the video processing system may include a client 210 and a server 220. The client 210 is configured to generate request information, where the request information includes an initial video, a function module call chain, a result return file, and a target model file; the request message is sent to the server 220. And the server 220 is connected with the client 210 through a network, and comprises an application programming interface service 221, a task scheduling module 222, a message queue 223, a function module 224, a result processing module 225 and a storage module 226. The api service 221 is configured to receive request information sent by the client, create a task state for an initial video in the request information, where the task is a target microservice, store the task state in a task information storage database 2261 of the storage module 226, and send the task information to the message queue 223; and providing a query service of a target micro-service execution state and a query service of a download link of intermediate data or result data; the task scheduling module 222 is in network connection with the message queue 223 and is used for receiving task information sent by the message queue and scheduling the target micro-service corresponding to the functional module in the functional module call chain according to the functional module call chain in the task information; the message queue 223 is connected to the task scheduling module 222 through a network, and is configured to respond to the service data in the message queue corresponding to the target microservice and execute a function module included in the corresponding function module 224 according to the monitored service data; the message queue can comprise a task queue, a virtual object detection queue, an action migration message queue, a Maya message queue, a return queue and a result queue; a function module 224, which is connected to the message queue 223 through a network, and may include a virtual object detection module, an action migration function module, and a Maya (three-dimensional modeling and animation software) function module, configured to execute a target micro-service corresponding to service data according to the service data included in the message queue, store intermediate data and result data generated by executing the target micro-service into a shared data volume 2263 of the storage module 226, and send the intermediate data, the result data, and task information to a return queue of the message queue; a result processing module 225, which is connected to the message queue 223 through a network, and is configured to receive the executed target microservice and the executed error target microservice sent by the result queue in the message queue, store intermediate data of the executed target microservice in a file object storage database 2262 of the storage module 226, and generate a download link corresponding to the intermediate data generated by the target microservice; and stores the task end state in the task information storage database 2261 of the storage module 226.
Hereinafter, steps S110 to S130 will be explained and explained in detail with reference to fig. 2.
In step S110, request information sent by a client is received, an initial video included in the request information is analyzed to obtain a functional module included in the initial video, and the functional module is encapsulated as a micro service.
In this example embodiment, the expression, the motion, the gesture, and the like of the virtual object included in the initial video are migrated to the target virtual object to generate the target video. The function module of the initial video is determined according to the activity of the virtual object in the initial video, the activity of the virtual object in the initial video may be a change in expression of the virtual object, a change in motion of the virtual object, or a change in gesture of the virtual object, and in this example embodiment, the activity of the virtual object in the initial video is not specifically limited; for example, an expression migration function module may be generated by using expression changes of the virtual object in the initial video, a gesture migration function module may be generated according to gesture changes of the virtual object in the initial video, and a motion migration function module may also be generated according to motion changes of the virtual object in the initial video. The functional module included in the initial video and the hardware environment and the software environment required to execute the functional module may be packaged as a micro-service corresponding to the functional module.
In addition, in this exemplary embodiment, the system may also provide a function module of the virtual object included in the video, the function module of the virtual object provided by the system may include an expression migration function module, a gesture migration function module, an action migration function module, and the like of the virtual object, the function module of the virtual object provided by the system is a basic function module, and the basic function module provided by the system is not specifically limited in this exemplary embodiment. After request information sent by a client is received, analyzing the initial video included in the request information, acquiring a function module corresponding to the activity of the virtual object in the system according to the activity of the virtual object in the initial video, and packaging the acquired function module into micro-service. When the function module is provided in the system, the same set of resources can be used in a time-sharing manner by a plurality of requests, so that the resource utilization rate is improved, and the cost is reduced.
In this exemplary embodiment, referring to fig. 3, parsing the initial video included in the request information to obtain the functional module included in the initial video may include steps S310 to S330:
s310, acquiring an initial video included in the request information;
s320, detecting the initial video, and analyzing the activity of the virtual object to acquire the function of the virtual object included in the initial video when the initial video is determined to include the virtual object;
step S330, acquiring a function module corresponding to the function of the virtual object according to the function of the virtual object included in the initial video.
Hereinafter, steps S310 to S330 will be further explained and explained. Specifically, after receiving the request information sent by the client, the server first obtains an initial video included in the request information, detects the initial video, and when it is determined that the received initial video includes a virtual object, analyzes the activity of the virtual object in the initial video, where the activity of the virtual object in the initial video may include expression change, gesture change, motion change, and the like of the virtual object in the initial video, and the activity of the virtual object is not specifically limited in this example embodiment; obtaining the functions of the virtual objects included in the initial video according to the activities of the virtual objects in the initial video, for example, when the expression changes of the virtual objects in the initial video, the expression functions of the virtual objects can be obtained; when the virtual object has gesture change in the initial video, the gesture function of the virtual object can be acquired; when there is a motion change in the initial video, the motion function of the virtual object may be acquired, and the function of the acquired virtual object is not specifically limited in this exemplary embodiment. After the function of the virtual object is obtained, a function module corresponding to the function of the virtual object may be obtained according to the obtained function, where the function module includes a code corresponding to the function of the virtual object.
In this exemplary embodiment, obtaining the functional modules included in the initial video may further include: after the initial video included in the request information is acquired, detecting the initial video, and when the initial video is determined to include the virtual object, analyzing the activity of the virtual object to obtain the activity of the virtual object; then, the function module corresponding to the activity of the virtual object is obtained in the system based on the activity of the virtual object obtained through analysis, and the function module corresponding to the activity of the virtual object is obtained in the system, so that the function module does not need to be generated according to the activity of the virtual object, the resource utilization rate is improved, and the cost is reduced.
After acquiring the function module of the virtual object included in the initial video, the acquired function module may be encapsulated to obtain a micro service, in this example embodiment, referring to fig. 4, the encapsulating the function module into the micro service may include step S410 and step S420:
s410, acquiring an environment required by executing the functional module;
step S420, the functional module and the environment needed for executing the functional module are packaged into micro-service.
Hereinafter, step S410 and step S420 will be further explained and explained. Specifically, first, an environment required for executing a functional module is obtained, and the environment is mainly required for obtaining a software tool development kit for executing a software functional module, and the environment includes a software environment and a hardware environment. For example, when a software development kit for executing a functional module needs to depend on software environments such as Maya, CUDA (Unified computing Device Architecture), PyTorch (open-source Python machine learning library), etc., has high requirements on hardware resources, and needs a CPU and a GPU of a specific model, the software environments such as Maya, CUDA, PyTorch, etc., and the CPU and the GPU of a specific model, which need to be depended on by the software development kit for executing the functional module, may be packaged with the functional module as a microservice. Each functional module can elastically expand and contract the capacity according to the resource usage amount of the functional module, and can also read the same shared data volume, wherein the shared data volume stores a dependency file required when the micro-service corresponding to the functional module is executed; micro-services are based on small functional blocks dedicated to a single responsibility and function, and combine complex large applications in a modular fashion. After the micro-service corresponding to the functional module is obtained, a registration interface of the micro-service can be opened, so that other software development kits can be added conveniently. The packaged micro-service is deployed on a cloud server in a distributed mode; the distributed deployment divides projects which need to be subjected to a large amount of calculation into small blocks, a plurality of computers respectively perform calculation, then the calculation results of the computers are uploaded, and the calculation results of the computers are uniformly combined to obtain results; after the client submits the request information, the user does not need to write the execution sequence and the combinational logic of the functional modules by himself, and the execution efficiency of the functional modules is improved.
In the embodiment of the present invention, by encapsulating the software environment and the hardware environment required when the function module is executed and the function module as a micro service, the problem that the software environment needs to be separately installed and the hardware environment needs to be prepared when a user uses a software tool development kit of any function module is solved, the consumption of the local storage resource of the user is reduced, and the resource utilization rate is improved.
In step S120, according to the function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice is obtained, and the target microservice is executed to obtain result data.
The function module calling chain comprises function modules to be called by the client and calling sequences of the function modules to be called, and the execution sequence of the target micro-service corresponding to the function modules to be called can be determined according to the calling sequences of the function modules to be called; and the result data is data obtained after target micro-services are executed in sequence and the last target micro-service is executed. Result data can be obtained according to the intermediate data of the previous target micro service; the intermediate data is generated when the target micro service is successfully executed, and the intermediate data and the result data can be stored in a shared data volume of the storage module.
In this exemplary embodiment, referring to fig. 5, before acquiring, according to the function module call chain included in the request information, the target microservice corresponding to the function module call chain included in the microservice, the video processing method may further include step S510 and step S520:
step 510, acquiring a function module to be called included in the function module calling chain, determining a target micro service corresponding to the function module to be called, and generating a unique identifier corresponding to the target micro service;
and S520, storing the target micro service and the unique identifier corresponding to the target micro service into a task information storage database.
Hereinafter, step S510 and step S520 will be further explained and explained. Specifically, a function module to be called included in a function module calling chain is obtained, a target micro service corresponding to the function module to be called is determined in the micro service, a unique identifier of the target micro service is generated, task information corresponding to the target micro service is generated in a task information storage database of a storage module, and the target micro service and the unique identifier of the target micro service are stored.
In this exemplary embodiment, referring to fig. 6, acquiring a target microservice corresponding to the function module call chain included in the microservice, and executing the target microservice to obtain result data may include step S610 and step S620:
s610, acquiring a calling sequence of each functional module to be called in the functional module calling chain;
and S620, executing the target micro-service corresponding to the functional module to be called according to the calling sequence of the functional modules to be called to obtain the result data.
Hereinafter, step S610 and step S620 will be further explained and explained. Specifically, after request information of a client is acquired, first, function modules to be called included in a function module calling chain in the request information and a calling sequence of each function module to be called are acquired, wherein the function module calling chain at least includes one function module to be called; after the function module to be called and the calling sequence thereof are obtained, the target micro-services included in the micro-services corresponding to the function module to be called and the execution sequence of each target micro-service can be determined, and each target micro-service is executed according to the execution sequence to obtain result data.
Further, referring to fig. 7, executing the target microservice corresponding to the function module to be called according to the calling sequence of each function module to be called to obtain the result data, which may include step S710-step S740:
step S710, acquiring an initial calling function module in the function modules to be called, an initial target micro-service corresponding to the initial calling function module and a message queue corresponding to the initial target micro-service;
step S720, writing service data corresponding to the initial target micro service into a message queue, and acquiring a dependent file for executing the initial target micro service in the shared data volume according to the unique identifier of the initial target micro service when the service data exists in the message queue;
step 730, executing the initial target micro service according to the dependent file to obtain intermediate data;
step s740, executing the next target microservice of the initial target microservice by using the intermediate data and the dependent file of the next target microservice of the initial target microservice, and obtaining the result data.
Hereinafter, steps S710 to S740 will be further explained and explained. Specifically, when the target micro-service is executed, firstly, a function module to be called at the beginning, a target micro-service at the beginning and a message queue corresponding to the target micro-service are obtained, wherein the function module to be called at the beginning, the target micro-service at the beginning and the message queue corresponding to the target micro-service at the beginning are included in a function module calling chain, a task scheduling module writes service data of the target micro-service at the beginning into the corresponding message queue, a function module of a virtual object in an initial video monitors the corresponding message queue in real time, when the function module at the beginning monitors that the service data exist in the message queue corresponding to the target micro-service at the beginning, the service data is actively read, a dependent file for executing the target micro-service at the beginning is obtained in a shared data volume according to the unique identification of the target micro-service at the beginning corresponding to the service data, after the dependent file is obtained, the target micro-service at the beginning is executed according to the dependent file, obtaining intermediate data; and then, acquiring a next target micro service of the initial target micro service, and executing the next target micro service by using the intermediate data of the initial target micro service and the dependent file of the next target micro service to obtain result data.
Further, referring to fig. 8, executing a next target microservice of the starting target microservice by using the intermediate data and a dependency file of the next target microservice of the starting target microservice to obtain the result data may include steps S810-S840:
step S810, after intermediate data corresponding to the initial target micro service are obtained, storing the intermediate data to a return queue;
step S820, judging intermediate data included in the return queue, obtaining a next target microservice of the initial target microservice after the initial target microservice is determined to be executed, and writing service data of the next target microservice into a message queue corresponding to the next target microservice;
step S830, when the service data exists in the message queue corresponding to the next target micro service, acquiring a dependent file for executing the next target micro service in the shared data volume according to the unique identifier of the next target micro service; wherein the dependency file of the next target micro service at least comprises intermediate data of a last target micro service of the next target micro service;
and S840, executing the next target micro service according to the dependent file of the next target micro service to obtain intermediate data of the next target micro service until the target micro service corresponding to the function module to be called is completely executed to obtain result data.
Hereinafter, steps S810 to S840 will be further explained and explained. Specifically, after the initial target microservice finishes executing to obtain the intermediate data, the intermediate data and the service data of the initial target microservice corresponding to the intermediate data can be stored in a return queue, the return queue sends the target microservice and the intermediate data generated by executing the target microservice to a task scheduling module, the task scheduling module judges the received target microservice, the service data corresponding to the target microservice and the intermediate data obtained by executing the target microservice, determines whether the target microservice corresponding to the intermediate data is successfully executed, acquires the next target microservice of the initial target microservice when the target microservice is successfully executed, writes the service data of the next target microservice into a message queue corresponding to the next target microservice, so that when the function module corresponding to the next target microservice monitors that the service data exists in the corresponding message queue, actively reading the service data, acquiring a dependent file for executing the next target micro service in a shared data volume according to the unique identifier of the service data, wherein the dependent file for the next target micro service at least comprises intermediate data obtained by executing the last target micro service of the current target micro service, executing the next target micro service according to the acquired dependent file to obtain intermediate data of the next target micro service, and storing the intermediate data of the next target micro service into a return queue; and repeating the executing steps until the target micro-service corresponding to the functional module to be called is completely executed successfully to obtain result data.
In this exemplary embodiment, referring to fig. 9, after obtaining the result data, the video processing method may further include steps S910 to S930:
step S910, a result return file included in the request information is obtained, and according to a function module of a result to be returned included in the result return file, a target micro service of the result to be returned corresponding to the function module of the result to be returned is determined;
s920, uploading intermediate data obtained by executing the target micro service and the result data to a file object for storage;
and S930, generating a download link corresponding to the intermediate data of the target micro service of the result to be returned and a download link of the result data, and sending the download link to the client.
Hereinafter, steps S910 to S930 will be further explained and explained. Specifically, first, a result return file included in request information sent by a client is obtained, wherein the result return file records a to-be-called function module which needs to return an intermediate result after executing a target micro service corresponding to the to-be-called function module, that is, the target micro service which needs to return intermediate data is determined according to the function module which needs to return the result and is included in the result return file; and then, uploading all intermediate data and result data obtained by executing the target micro service to a file object for storage, generating a download link corresponding to the intermediate data of the target micro service with a result to be returned after uploading is finished, storing the download link to a task information storage database by a result processing module, and sending the download link corresponding to the intermediate data of the target micro service with the result to be returned to a corresponding mailbox by a mail when the mail needing to be sent is specified in the service data of the target micro service corresponding to the intermediate data.
In addition, the execution state of the target micro service can be inquired from the application programming interface service through a WebSocket (a protocol for performing full duplex communication on a single TCP connection) interface in real time in the execution process of the target micro service, and intermediate data or a download link of result data can be inquired in the application programming interface service after the execution of the target micro service is finished. The problem that only a client can send a request and a server can only respond to the client request in a conventional Protocol such as HTTP (Hyper Text Transfer Protocol) is solved through a WebSocket interface.
In the embodiment of the present invention, the target micro service included in the micro service and the execution sequence of the target micro service are determined by the function module call chain in the request information, and the target micro service is executed according to the execution sequence to obtain the result data, thereby solving the problem that the call sequence and the logic of the combination mode need to be written by the user in the related art, and improving the execution efficiency of the function module; and for a single request message, although the execution of each target micro service has a sequential dependency relationship, when receiving a plurality of request messages, the target micro service corresponding to each request message can be executed in parallel, thereby further improving the execution efficiency.
In step S130, a target model file included in the request information is acquired, a target video is generated by using the target model file and the result data, and the target video is sent to the client.
The target model file is a static file of a target virtual object model and mainly is skeleton data of the target virtual object.
In this exemplary embodiment, referring to fig. 10, generating a target video by using the target model file and the result data may include steps S1010 and S1020:
step S1010, acquiring target virtual object skeleton data included in the target model file;
and S1020, generating the target video according to the target virtual object bone data and the result data.
Hereinafter, step S1010 and step S1020 will be further explained and explained. Specifically, after the result data generated after the target microservice is executed is obtained, the target model file included in the request information may be acquired, and the target video may be generated according to the skeleton data and the result data of the target virtual object included in the target model file. After the target video is generated, the target video may be sent to the client.
The video processing method provided by the disclosed example embodiment has at least the following advantages: on one hand, after request information sent by a client is received, the initial video included in the request information is analyzed to obtain the functional module included in the initial video, so that the problem that a user needs to download a software tool development kit of the functional module in the initial video in the related technology is solved, and the consumption of user storage resources is reduced; on the other hand, after the functional module included in the initial video is obtained, the hardware environment and the software environment required by the execution of the functional module are packaged to obtain the micro service corresponding to the functional module, so that the problem that the software environment or the hardware environment needs to be purchased in advance when a software development kit of the functional module is called in the related technology is solved, and the cost of generating the target video according to the initial video by the user is reduced; on the other hand, the target micro-service corresponding to the function module to be called and the execution sequence of the target micro-service are determined according to the function module call chain in the request information, and the target micro-service is executed according to the execution sequence of the target micro-service, so that the problem that a user needs to write the call sequence and the logic of a combination mode in the related technology is solved, and the execution efficiency of the target micro-service is improved.
An exemplary embodiment of the present disclosure further provides a video processing apparatus, as shown in fig. 11, which may include: a function encapsulation module 1110, a result data generation module 1120, and a target video generation module 1130. Wherein:
a function encapsulation module 1110, configured to receive request information sent by a client, parse an initial video included in the request information to obtain a function module included in the initial video, and encapsulate the function module as a micro service;
a result data generating module 1120, configured to obtain, according to the function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice, and execute the target microservice to obtain result data;
a target video generating module 1130, configured to obtain a target model file included in the request information, generate a target video by using the target model file and the result data, and send the target video to the client.
The specific details of each module in the video processing apparatus have been described in detail in the corresponding video processing method, and therefore are not described herein again.
In an exemplary embodiment of the present disclosure, parsing an initial video included in the request information to obtain a functional module included in the initial video includes:
acquiring an initial video included in the request information;
detecting the initial video, analyzing the activity of the virtual object when the initial video is determined to contain the virtual object, and acquiring the function of the virtual object contained in the initial video;
and acquiring a functional module corresponding to the function of the virtual object according to the function of the virtual object included in the initial video.
In an exemplary embodiment of the present disclosure, packaging the functional module as a microservice includes:
acquiring an environment required for executing the functional module;
and packaging the functional module and the environment required for executing the functional module into the micro-service.
In an exemplary embodiment of the present disclosure, before acquiring, according to a function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice, the video processing method further includes:
acquiring a function module to be called in the function module calling chain, determining a target micro service corresponding to the function module to be called, and generating a unique identifier corresponding to the target micro service;
and storing the target micro service and the unique identifier corresponding to the target micro service into a task information storage database.
In an exemplary embodiment of the present disclosure, acquiring a target microservice corresponding to the function module call chain included in the microservice, and executing the target microservice to obtain result data includes:
acquiring a calling sequence of the function module to be called in the function module calling chain;
and executing the target micro-service corresponding to the functional module to be called according to the calling sequence of the functional modules to be called to obtain the result data.
In an exemplary embodiment of the present disclosure, executing a target microservice corresponding to each to-be-called functional module according to a calling sequence of each to-be-called functional module to obtain the result data, includes:
acquiring an initial calling function module in the function modules to be called, an initial target micro-service corresponding to the initial calling function module and a message queue corresponding to the initial target micro-service;
writing service data corresponding to the initial target micro service into a message queue, and acquiring a dependent file for executing the initial target micro service in the shared data volume according to the unique identifier of the initial target micro service when the service data exists in the message queue;
executing the initial target micro service according to the dependent file to obtain intermediate data;
and executing the next target micro-service of the initial target micro-service by utilizing the intermediate data and the dependent file of the next target micro-service of the initial target micro-service to obtain the result data.
In an exemplary embodiment of the disclosure, executing a next target microservice of the starting target microservice using the intermediate data and a dependency file of the next target microservice of the starting target microservice to obtain the result data includes:
after intermediate data corresponding to the initial target micro service are obtained, storing the intermediate data to a return queue;
judging intermediate data included in the return queue, acquiring a next target micro service of the initial target micro service after the initial target micro service is determined to be completely executed, and writing service data of the next target micro service into a message queue corresponding to the next target micro service;
when the service data exist in the message queue corresponding to the next target micro service, acquiring a dependent file for executing the next target micro service in the shared data volume according to the unique identifier of the next target micro service; wherein the dependency file of the next target micro service at least comprises intermediate data of a last target micro service of the next target micro service;
and executing the next target micro service according to the dependent file of the next target micro service to obtain intermediate data of the next target micro service until the target micro service corresponding to the functional module to be called is completely executed to obtain the result data.
In an exemplary embodiment of the present disclosure, after obtaining the result data, the video processing method further includes:
acquiring a result return file included in the request information, and determining a target micro service of a result to be returned corresponding to the function module of the result to be returned according to the function module of the result to be returned included in the result return file;
uploading intermediate data obtained by executing the target micro service and the result data to a file object for storage;
and generating a download link corresponding to the intermediate data of the target micro service of the result to be returned and the download link of the result data, and sending the download link to the client.
In an exemplary embodiment of the present disclosure, generating a target video using the target model file and the result data includes:
acquiring target virtual object skeleton data included in the target model file;
and generating the target video according to the target virtual object bone data and the result data.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
In addition, although the various steps of the methods of the present disclosure are depicted in the drawings in a particular order,
however, this does not require or imply that these steps must be performed in this particular order, or that all of the illustrated steps must be performed, to achieve the desired results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc.
In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.
As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied as a system, method or program product. Accordingly, various aspects of the present disclosure may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
An electronic device 1200 according to this embodiment of the disclosure is described below with reference to fig. 12. The electronic device 1200 shown in fig. 12 is only an example and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 12, electronic device 1200 is embodied in the form of a general-purpose computing device. The components of the electronic device 1200 may include, but are not limited to: the at least one processing unit 1210, the at least one memory unit 1220, a bus 1230 connecting various system components (including the memory unit 1220 and the processing unit 1210), and a display unit 1240.
Wherein the storage unit stores program code that is executable by the processing unit 1210 to cause the processing unit 1210 to perform steps according to various exemplary embodiments of the present disclosure described in the above section "exemplary methods" of this specification. For example, the processing unit 1410 may execute step S110 as shown in fig. 1: receiving request information sent by a client, analyzing initial video included in the request information to obtain a functional module included in the initial video, and packaging the functional module into micro service; s120: acquiring a target micro service corresponding to the function module call chain included in the micro service according to the function module call chain included in the request information, and executing the target micro service to obtain result data; s130: and acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client.
The storage unit 1220 may include a readable medium in the form of a volatile memory unit, such as a random access memory unit (RAM)12201 and/or a cache memory unit 12202, and may further include a read only memory unit (ROM) 12203.
Storage unit 1220 may also include a program/utility 12204 having a set (at least one) of program modules 12205, such program modules 12205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination thereof may comprise an implementation of a network environment.
Bus 1230 may be one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
The electronic device 1200 may also communicate with one or more external devices 1300 (e.g., keyboard, pointing device, bluetooth device, etc.), with one or more devices that enable a user to interact with the electronic device 1200, and/or with any devices (e.g., router, modem, etc.) that enable the electronic device 1200 to communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interfaces 1250. Also, the electronic device 1200 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network such as the Internet) via the network adapter 1260. As shown, the network adapter 1260 communicates with the other modules of the electronic device 1200 via the bus 1230. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with the electronic device 1200, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
In an exemplary embodiment of the present disclosure, there is also provided a computer readable storage medium having stored thereon a program product capable of implementing the above-described method of the present specification. In some possible embodiments, various aspects of the disclosure may also be implemented in the form of a program product comprising program code for causing a terminal device to perform the steps according to various exemplary embodiments of the disclosure described in the "exemplary methods" section above of this specification, when the program product is run on the terminal device.
The program product for implementing the above method according to the embodiments of the present disclosure may employ a portable compact disc read only memory (CD-ROM) and include program codes, and may be run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not so limited, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
A computer readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
Furthermore, the above-described figures are merely schematic illustrations of processes included in methods according to exemplary embodiments of the present disclosure, and are not intended to be limiting. It will be readily understood that the processes shown in the above figures are not intended to indicate or limit the chronological order of the processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, e.g., in multiple modules.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.

Claims (12)

1. A video processing method, comprising:
receiving request information sent by a client, analyzing initial video included in the request information to obtain a functional module included in the initial video, and packaging the functional module into micro service;
acquiring a target micro service corresponding to the function module call chain included in the micro service according to the function module call chain included in the request information, and executing the target micro service to obtain result data;
and acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client.
2. The video processing method according to claim 1, wherein parsing the initial video included in the request message to obtain the functional module included in the initial video comprises:
acquiring an initial video included in the request information;
detecting the initial video, analyzing the activity of the virtual object when the initial video is determined to contain the virtual object, and acquiring the function of the virtual object contained in the initial video;
and acquiring a functional module corresponding to the function of the virtual object according to the function of the virtual object included in the initial video.
3. The video processing method of claim 1, wherein encapsulating the functional module as a microservice comprises:
acquiring an environment required for executing the functional module;
and packaging the functional module and the environment required for executing the functional module into the micro-service.
4. The video processing method according to claim 1, wherein before acquiring, according to a function module call chain included in the request information, a target micro service corresponding to the function module call chain included in the micro service, the video processing method further comprises:
acquiring a function module to be called in the function module calling chain, determining a target micro service corresponding to the function module to be called, and generating a unique identifier corresponding to the target micro service;
and storing the target micro service and the unique identifier corresponding to the target micro service into a task information storage database.
5. The video processing method according to claim 4, wherein obtaining a target microservice corresponding to the functional module call chain included in the microservice, and executing the target microservice to obtain result data comprises:
acquiring a calling sequence of the function module to be called in the function module calling chain;
and executing the target micro-service corresponding to the functional module to be called according to the calling sequence of the functional modules to be called to obtain the result data.
6. The video processing method according to claim 5, wherein executing the target microservice corresponding to the function module to be called according to the calling sequence of each function module to be called to obtain the result data comprises:
acquiring an initial calling function module in the function modules to be called, an initial target micro-service corresponding to the initial calling function module and a message queue corresponding to the initial target micro-service;
writing service data corresponding to the initial target micro service into a message queue, and acquiring a dependent file for executing the initial target micro service in the shared data volume according to the unique identifier of the initial target micro service when the service data exists in the message queue;
executing the initial target micro service according to the dependent file to obtain intermediate data;
and executing the next target micro service of the initial target micro service by utilizing the intermediate data and the dependent file of the next target micro service of the initial target micro service to obtain the result data.
7. The video processing method of claim 6, wherein executing a next target microservice of the starting target microservice using the intermediate data and a dependency file of the next target microservice of the starting target microservice to obtain the result data comprises:
after intermediate data corresponding to the initial target micro service are obtained, storing the intermediate data to a return queue;
judging intermediate data included in the return queue, obtaining a next target microservice of the initial target microservice after the initial target microservice is determined to be executed, and writing service data of the next target microservice into a message queue corresponding to the next target microservice;
when the service data exist in the message queue corresponding to the next target micro service, acquiring a dependent file for executing the next target micro service in the shared data volume according to the unique identifier of the next target micro service; wherein the dependency file of the next target micro service at least comprises intermediate data of a last target micro service of the next target micro service;
and executing the next target micro service according to the dependent file of the next target micro service to obtain intermediate data of the next target micro service until the target micro service corresponding to the functional module to be called is completely executed to obtain the result data.
8. The video processing method of claim 7, wherein after obtaining the result data, the video processing method further comprises:
acquiring a result return file included in the request information, and determining a target micro service of a result to be returned corresponding to the function module of the result to be returned according to the function module of the result to be returned included in the result return file;
uploading intermediate data obtained by executing the target micro service and the result data to a file object for storage;
and generating a download link corresponding to the intermediate data of the target micro service of the result to be returned and a download link of the result data, and sending the download link to the client.
9. The video processing method of claim 1, wherein generating a target video using the target model file and the result data comprises:
acquiring target virtual object skeleton data included in the target model file;
and generating the target video according to the target virtual object bone data and the result data.
10. A video processing apparatus, comprising:
the function encapsulation module is used for receiving request information sent by a client, analyzing initial video included in the request information to obtain a function module included in the initial video, and encapsulating the function module into micro-service;
a result data generating module, configured to obtain, according to a function module call chain included in the request information, a target microservice corresponding to the function module call chain included in the microservice, and execute the target microservice to obtain result data;
and the target video generation module is used for acquiring a target model file included in the request information, generating a target video by using the target model file and the result data, and sending the target video to the client.
11. A readable storage medium on which a computer program is stored, which computer program, when being executed by a processor, carries out the video processing method of any one of claims 1 to 9.
12. An electronic device, comprising:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the video processing method of any of claims 1-9 via execution of the executable instructions.
CN202210234286.4A 2022-03-10 2022-03-10 Video processing method and device, computer readable storage medium and electronic equipment Active CN114615521B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210234286.4A CN114615521B (en) 2022-03-10 2022-03-10 Video processing method and device, computer readable storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210234286.4A CN114615521B (en) 2022-03-10 2022-03-10 Video processing method and device, computer readable storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN114615521A true CN114615521A (en) 2022-06-10
CN114615521B CN114615521B (en) 2024-02-23

Family

ID=81862801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210234286.4A Active CN114615521B (en) 2022-03-10 2022-03-10 Video processing method and device, computer readable storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN114615521B (en)

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330576A (en) * 2016-11-18 2017-01-11 北京红马传媒文化发展有限公司 Automatic scaling and migration scheduling method, system and device for containerization micro-service
US20180270327A1 (en) * 2017-03-17 2018-09-20 International Business Machines Corporation Automatic interdependency resolution for micro-service deployments
CN109150978A (en) * 2018-07-24 2019-01-04 北京百度网讯科技有限公司 The method and apparatus for debugging micro services
US20190098106A1 (en) * 2017-09-25 2019-03-28 Splunk Inc. Proxying hypertext transfer protocol (http) requests for microservices
CN109921927A (en) * 2019-02-20 2019-06-21 苏州人之众信息技术有限公司 Real-time calling D-chain trace method based on micro services
CN109961204A (en) * 2017-12-26 2019-07-02 中国移动通信集团浙江有限公司 Quality of service analysis method and system under a kind of micro services framework
CN110333917A (en) * 2019-07-19 2019-10-15 深圳前海微众银行股份有限公司 Data processing method, device, equipment and readable storage medium storing program for executing based on micro services
CN110457143A (en) * 2019-07-25 2019-11-15 腾讯科技(深圳)有限公司 The call method and device of micro services
US20190354416A1 (en) * 2018-05-16 2019-11-21 ChartIQ, Inc. System and method for integrating multiple applications
CN111049878A (en) * 2019-10-23 2020-04-21 平安科技(深圳)有限公司 Method, device, electronic device and storage medium for visualizing micro-service call chain
US20200133718A1 (en) * 2018-10-31 2020-04-30 Nutanix, Inc. Virtual machine migration task management
CN111798551A (en) * 2020-07-20 2020-10-20 网易(杭州)网络有限公司 Virtual expression generation method and device
US20200356866A1 (en) * 2019-05-08 2020-11-12 International Business Machines Corporation Operative enterprise application recommendation generated by cognitive services from unstructured requirements
CN112256359A (en) * 2020-10-26 2021-01-22 卫宁健康科技集团股份有限公司 Micro-service merging method and device, electronic equipment and readable storage medium
US20210185111A1 (en) * 2019-12-16 2021-06-17 Beijing Baidu Netcom Science And Technology Co., Ltd. Data processing methods, electronic devices, and storage media
CN113269700A (en) * 2021-04-29 2021-08-17 北京达佳互联信息技术有限公司 Video generation method and device, electronic equipment and storage medium
CN113559499A (en) * 2021-09-24 2021-10-29 腾讯科技(深圳)有限公司 Service processing method and device for virtual scene, electronic equipment and storage medium
CN113633983A (en) * 2021-08-16 2021-11-12 上海交通大学 Method, device, electronic equipment and medium for controlling expression of virtual character
CN113923230A (en) * 2020-06-22 2022-01-11 华为技术有限公司 Data synchronization method, electronic device, and computer-readable storage medium

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330576A (en) * 2016-11-18 2017-01-11 北京红马传媒文化发展有限公司 Automatic scaling and migration scheduling method, system and device for containerization micro-service
US20180270327A1 (en) * 2017-03-17 2018-09-20 International Business Machines Corporation Automatic interdependency resolution for micro-service deployments
US20190098106A1 (en) * 2017-09-25 2019-03-28 Splunk Inc. Proxying hypertext transfer protocol (http) requests for microservices
CN109961204A (en) * 2017-12-26 2019-07-02 中国移动通信集团浙江有限公司 Quality of service analysis method and system under a kind of micro services framework
US20190354416A1 (en) * 2018-05-16 2019-11-21 ChartIQ, Inc. System and method for integrating multiple applications
CN109150978A (en) * 2018-07-24 2019-01-04 北京百度网讯科技有限公司 The method and apparatus for debugging micro services
US20200133718A1 (en) * 2018-10-31 2020-04-30 Nutanix, Inc. Virtual machine migration task management
CN109921927A (en) * 2019-02-20 2019-06-21 苏州人之众信息技术有限公司 Real-time calling D-chain trace method based on micro services
US20200356866A1 (en) * 2019-05-08 2020-11-12 International Business Machines Corporation Operative enterprise application recommendation generated by cognitive services from unstructured requirements
CN110333917A (en) * 2019-07-19 2019-10-15 深圳前海微众银行股份有限公司 Data processing method, device, equipment and readable storage medium storing program for executing based on micro services
CN110457143A (en) * 2019-07-25 2019-11-15 腾讯科技(深圳)有限公司 The call method and device of micro services
CN111049878A (en) * 2019-10-23 2020-04-21 平安科技(深圳)有限公司 Method, device, electronic device and storage medium for visualizing micro-service call chain
WO2021077506A1 (en) * 2019-10-23 2021-04-29 平安科技(深圳)有限公司 Micro-service call chain concretization method and device, electronic device and storage medium
US20210185111A1 (en) * 2019-12-16 2021-06-17 Beijing Baidu Netcom Science And Technology Co., Ltd. Data processing methods, electronic devices, and storage media
CN113923230A (en) * 2020-06-22 2022-01-11 华为技术有限公司 Data synchronization method, electronic device, and computer-readable storage medium
CN111798551A (en) * 2020-07-20 2020-10-20 网易(杭州)网络有限公司 Virtual expression generation method and device
CN112256359A (en) * 2020-10-26 2021-01-22 卫宁健康科技集团股份有限公司 Micro-service merging method and device, electronic equipment and readable storage medium
CN113269700A (en) * 2021-04-29 2021-08-17 北京达佳互联信息技术有限公司 Video generation method and device, electronic equipment and storage medium
CN113633983A (en) * 2021-08-16 2021-11-12 上海交通大学 Method, device, electronic equipment and medium for controlling expression of virtual character
CN113559499A (en) * 2021-09-24 2021-10-29 腾讯科技(深圳)有限公司 Service processing method and device for virtual scene, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN114615521B (en) 2024-02-23

Similar Documents

Publication Publication Date Title
US10977010B2 (en) Development environment for real-time dataflow programming language
US10951552B2 (en) Generation of a chatbot interface for an application programming interface
WO2018228211A1 (en) Application conversion method, apparatus and device
CN110083455B (en) Graph calculation processing method, graph calculation processing device, graph calculation processing medium and electronic equipment
US9753704B2 (en) Web-based scan-task enabled system and method of and apparatus for developing and deploying the same on a client-server network
CN107291438B (en) Automatic script generation method and device and electronic equipment
JP6871943B2 (en) Preformed instructions for mobile cloud services
US10185558B2 (en) Language-independent program composition using containers
US10977076B2 (en) Method and apparatus for processing a heterogeneous cluster-oriented task
CN110543297B (en) Method and apparatus for generating source code
US8938712B2 (en) Cross-platform virtual machine and method
CN111290778A (en) AI model packaging method, platform and electronic equipment
CN110795181A (en) Application program interface display method and device based on skip protocol and electronic equipment
CN110895471A (en) Installation package generation method, device, medium and electronic equipment
CN111338623A (en) Method, device, medium and electronic equipment for developing user interface
CN111857658A (en) Method, device, medium and electronic equipment for rendering dynamic component
CN110990746A (en) Page loading method, device, system, storage medium and electronic equipment
CN114036439A (en) Website building method, device, medium and electronic equipment
US10409762B2 (en) Remote direct memory access-based on static analysis of asynchronous blocks
CN114615521B (en) Video processing method and device, computer readable storage medium and electronic equipment
CN110347562A (en) Collecting method, device, computer-readable medium and intelligent terminal
CN114028801A (en) User input method, device, equipment and storage medium based on cloud
CN116848580A (en) Structural self-aware model for utterance parsing for multiparty conversations
CN111782196A (en) MVP architecture-based development method and device
CN112882698A (en) Development environment generation method and device, computer storage medium and electronic device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant