Video editing method and device
Through the template recommendation mechanism between the terminal device and the server, the video editing templates supported by the target application are filtered out, which solves the problem of maintaining multiple video editing template libraries in the existing technology, and improves management efficiency and convenience of use.
Patent Information
- Application Number
- CN202410309908.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-18
- Publication Date
- 2025-04-01
- Estimated Expiration
- 2044-03-18
AI Technical Summary
The prior art requires the construction of video editing template libraries for different applications and different versions of the same application, which leads to increased maintenance and management difficulties.
By implementing a template recommendation mechanism between the terminal device and the server, the terminal device sends a function list of the target application to the server, the server filters out the supported video editing templates, and returns to the terminal device for display and use.
It avoids the use of unsupported functions of video editing templates, and reduces the workload of maintaining multiple video editing template libraries and improves management efficiency.
Smart Images

Figure CN118075561B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of video editing technology, and in particular to a video editing method and device. Background Art
[0002] With the popularity of smartphones and other mobile devices, people are increasingly inclined to use various applications (APPs) to edit and create videos. These applications provide a variety of functions, allowing users to easily edit videos, add special effects, process audio, and more.
[0003] In order to facilitate users to edit videos, the related art proposes a solution of using video editing templates. In this solution, users can directly apply video editing templates to crop videos, add special effects, process audio, add subtitles, and other operations, so as to quickly achieve specific editing effects and styles. However, since different applications support different video editing functions, even different versions of the same application support different video editing functions. Therefore, in the related art, it is necessary to build video editing template libraries for different applications and different versions of the same application to avoid the video editing templates using video editing functions that are not supported by the current application. However, this approach requires the maintenance and management of multiple video editing template libraries at the same time, which will undoubtedly increase the workload and management difficulty. Summary of the invention
[0004] In view of this, an embodiment of the present application provides a video editing method and device for avoiding the maintenance and management of multiple video editing template libraries while preventing the video editing template from using video editing functions that are not supported by the current application.
[0005] In order to achieve the above purpose, the embodiments of the present application provide the following technical solutions:
[0006] In a first aspect, an embodiment of the present application provides a video editing method, which is applied to a terminal device, and the method includes:
[0007] Receiving a template viewing operation input by a user, wherein the template viewing operation is used to trigger displaying video editing templates available for selection by the user in a user interface of a target application;
[0008] In response to the template viewing operation, sending a template request message carrying a function list of the target application to a server, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0009] receiving a template recommendation list sent by the server, wherein the template recommendation list includes display information of at least one video editing template; video editing functions that each video editing template in the template recommendation list relies on belong to video editing functions supported by the target application;
[0010] The video editing templates available for user selection are displayed in the user interface of the target application according to the template recommendation list.
[0011] As an optional implementation of the application embodiment, after displaying the video editing templates available for selection by the user in the user interface of the target application according to the template recommendation list, the method further includes:
[0012] Receiving a user's selection operation on display information of a first video editing template in a user interface of the target application;
[0013] Sending template acquisition information for requesting to acquire the first video editing template to the server;
[0014] Receiving the first video editing template sent by the server;
[0015] Video editing is performed according to the first video editing template.
[0016] As an optional implementation of the application embodiment, before sending the template request information carrying the function list of the target application to the server, the method further includes:
[0017] Obtaining an installation package of the target application;
[0018] Parsing the installation package of the target application to obtain a function list of the target application;
[0019] The function list of the target application is saved to a preset storage location.
[0020] As an optional implementation of the application embodiment, before sending the template request information carrying the function list of the target application to the server, the method further includes:
[0021] Determining various video editing functions supported by the target application;
[0022] A function list of the target application is generated according to identification information of each video editing function supported by the target application.
[0023] In a second aspect, an embodiment of the present application provides a video editing method, which is applied to a server, and the method includes:
[0024] Receiving a template request message sent by a terminal device and carrying a function list of a target application, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0025] Obtain dependency information of each video editing template in the initial template recommendation list, wherein the dependency information of any video editing template includes the video editing function that the video editing template depends on;
[0026] Filter out the video editing templates in the initial template recommendation list whose dependent video editing functions do not belong to the video editing functions supported by the target application, so as to determine and obtain a template recommendation list;
[0027] Send the template recommendation list to the terminal device.
[0028] As an optional implementation of the embodiment of the present application, after sending the template recommendation list to the terminal device, the method further includes:
[0029] Receiving template acquisition information sent by the terminal device for requesting to acquire the first video editing template;
[0030] Acquire the first video editing template from a template library;
[0031] Send the first video editing template to the terminal device.
[0032] As an optional implementation of the embodiment of the present application, the method further includes:
[0033] Acquire a second video editing template and dependency information of the second video editing template;
[0034] The second video editing template is saved to a template library, and dependency information of the second video editing template is saved to a preset storage location.
[0035] As an optional implementation of the embodiment of the present application, before obtaining the dependency information of each video editing template in the initial template recommendation list, it includes:
[0036] Obtain the recommendation degree of each video template based on a preset recommendation algorithm;
[0037] The initial template recommendation list is generated according to the recommendation degree of each video template.
[0038] In a third aspect, an embodiment of the present application provides a terminal device, including:
[0039] A user input unit, used to receive a template viewing operation input by a user, wherein the template viewing operation is used to trigger displaying video editing templates available for selection by the user in a user interface of a target application;
[0040] a sending unit, configured to send, in response to the template viewing operation, a template request message carrying a function list of the target application to a server, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0041] A receiving unit, configured to receive a template recommendation list sent by the server, wherein the template recommendation list includes display information of at least one video editing template; the video editing functions that each video editing template in the template recommendation list relies on belong to the video editing functions supported by the target application;
[0042] A processing unit is used to display video editing templates available for user selection in the user interface of the target application according to the template recommendation list.
[0043] As an optional implementation of the embodiment of the present application,
[0044] The user input unit is further configured to receive a user's selection operation on display information of a first video editing template in the user interface of the target application after the processing unit displays video editing templates available for selection by the user in the user interface of the target application according to the template recommendation list;
[0045] The sending unit is further used to send template acquisition information for requesting to acquire the first video editing template to the server;
[0046] The receiving unit is further configured to receive the first video editing template sent by the server;
[0047] The processing unit is further used to perform video editing according to the first video editing template.
[0048] As an optional implementation of the embodiment of the present application, the processing unit is also used to obtain the installation package of the target application before sending a template request information carrying the function list of the target application to the server; parse the installation package of the target application to obtain the function list of the target application; and save the function list of the target application to a preset storage location.
[0049] As an optional implementation of the embodiment of the present application, the processing unit is also used to determine the various video editing functions supported by the target application before sending a template request message carrying the function list of the target application to the server; and generate the function list of the target application based on the identification information of the various video editing functions supported by the target application.
[0050] In a fourth aspect, an embodiment of the present application provides a server, including:
[0051] A receiving unit, configured to receive a template request message sent by a terminal device and carrying a function list of a target application, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0052] An acquisition unit, used to acquire dependency information of each video editing template in the initial template recommendation list, wherein the dependency information of any video editing template includes a video editing function that the video editing template depends on;
[0053] A processing unit, configured to filter out video editing templates in the initial template recommendation list whose dependent video editing functions do not belong to the video editing functions supported by the target application, so as to determine and obtain a template recommendation list;
[0054] A sending unit is used to send the template recommendation list to the terminal device.
[0055] As an optional implementation of the embodiment of the present application, the receiving unit is further used to receive template acquisition information sent by the terminal device for requesting to obtain the first video editing template after sending the template recommendation list to the terminal device;
[0056] The processing unit is further used to obtain the first video editing template from a template library;
[0057] The sending unit is further used to send the first video editing template to the terminal device.
[0058] As an optional implementation of the embodiment of the present application,
[0059] The receiving unit is further configured to receive a second video editing template uploaded by the terminal device;
[0060] The processing unit is further used to obtain dependency information of the second video editing template; save the second video editing template to a template library, and save the dependency information of the second video editing template to a preset storage location.
[0061] As an optional implementation of the embodiment of the present application, the processing unit is also used to obtain the recommendation degree of each video template based on a preset recommendation algorithm before obtaining the dependency information of each video editing template in the initial template recommendation list; and generate the initial template recommendation list according to the recommendation degree of each video template.
[0062] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising: a memory and a processor, wherein the memory is used to store a computer program and the processor is used to enable the electronic device to implement the video editing method described in any of the above embodiments when executing the computer program.
[0063] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, which, when the computer program is executed by a computing device, enables the computing device to implement any of the above-mentioned video editing methods.
[0064] In a seventh aspect, an embodiment of the present application provides a computer program product, which, when executed on a computer, enables the computer to implement any of the above-mentioned video editing methods.
[0065] The video editing method provided in the embodiment of the present application, when receiving a template viewing operation input by the user for triggering the display of video editing templates available for selection by the user in the user interface of the target application, in response to the template viewing operation, sends a template request message carrying identification information of each video editing function supported by the target application to the server, then receives a template recommendation list including display information of at least one video editing template sent by the server, and displays the video editing template available for selection by the user in the user interface of the target application according to the template recommendation list. Since the terminal device can send identification information of each video editing function supported by the target application to the server when receiving the template viewing operation input by the user, the server can send display information of video editing templates whose dependent video editing functions belong to the video editing functions supported by the target application to the client according to the video editing functions supported by the target application, so the embodiment of the present application can avoid the video editing template from using video editing functions not supported by the current application while avoiding the maintenance and management of multiple video editing template libraries. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0067] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings required in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0068] Figure 1 A scene construction diagram for video editing provided in an embodiment of the present application;
[0069] Figure 2 One of the interactive flow charts of the video editing method provided in the embodiment of the present application;
[0070] Figure 3 One of the user interface schematic diagrams provided in the embodiment of the present application;
[0071] Figure 4 The second interactive flow chart of the video editing method provided in the embodiment of the present application;
[0072] Figure 5 The second user interface diagram provided in the embodiment of the present application;
[0073] Figure 6 A schematic diagram of the structure of a terminal device provided in an embodiment of the present application;
[0074] Figure 7 A schematic diagram of the structure of a server provided in an embodiment of the present application;
[0075] Figure 8 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0076] In order to more clearly understand the above-mentioned purposes, features and advantages of the present application, the scheme of the present application will be further described below. It should be noted that the embodiments of the present application and the features in the embodiments can be combined with each other without conflict.
[0077] In the following description, many specific details are set forth to facilitate a full understanding of the present application, but the present application may also be implemented in other ways different from those described herein. Obviously, the embodiments in the specification are only part of the embodiments of the present application, rather than all of the embodiments.
[0078] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way. In addition, in the description of the embodiments of the present application, unless otherwise specified, the meaning of "multiple" refers to two or more.
[0079] The following first describes the scene architecture of the video editing method in some embodiments of the present application. Figure 1 As shown, in some embodiments, the scene architecture of the video editing method includes: a terminal device 11, a server 12 and a template library 13.
[0080] The terminal device 11 may be a mobile phone, a tablet computer, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), a smart watch, a smart bracelet, etc., or the terminal device may also be other types of terminal devices, and the disclosed embodiment does not limit the type of the terminal device. The terminal device 11 is installed with a target application capable of video editing, and the target application includes at least one video editing function module to support at least one video editing function. The terminal device 11 may be connected to the server 12 through a local area network (LAN), a wireless local area network (WLAN) or other networks. The server 12 may provide the terminal device 11 with content and interactive information such as video editing templates. The server 12 may be a cluster or multiple clusters, and may include one or more types of servers. The template library 13 may be connected to the server 12 through a dedicated line, a local area network, a wireless local area network, etc. The server 12 may save the video editing template uploaded by the user or the video editing template generated according to the video edited by the user to the template library 13, or may obtain the video editing template saved in the template library 13.
[0081] When the terminal device 11 receives a template viewing operation input by the user for triggering the display of a video editing template available for selection by the user in the user interface of the target application, the terminal device 11 may send a template request message carrying a function list of the target application to the server 12. The function list of the target application includes identification information of each video editing function supported by the target application. The server 12 may filter out video editing templates whose dependent video editing functions all belong to the video editing functions supported by the target application based on the function list of the target application, generate a template recommendation list based on the display information of the filtered video editing templates, and send it to the terminal device 11. The terminal device 11 may display the video editing template available for selection by the user in the user interface of the target application based on the template recommendation list sent by the server 12. The terminal device 11 may also send template acquisition information to the server when receiving a user selection operation on any video editing template displayed in the user interface of the target application, and the server 12 may also obtain the video editing template from the template library 13 and send the video editing template to the terminal device 11. The terminal device may also perform video editing based on the video editing template.
[0082] The present application embodiment provides a video editing method, referring to Figure 2 As shown, the video editing method comprises the following steps:
[0083] S101. A terminal device receives a template viewing operation input by a user.
[0084] The template viewing operation is used to trigger the display of video editing templates available for user selection in the user interface of the target application.
[0085] In some embodiments, the template viewing operation may be a user clicking operation on a control in the user interface of the target application for triggering the target application to display video editing templates available for selection by the user, or a voice command or one or more specific gestures. The specific gesture may be any one of a single-click gesture, a sliding gesture, a pressure recognition gesture, a long-press gesture, an area change gesture, a double-press gesture, and a double-click gesture.
[0086] For example, refer to Figure 3 As shown, the user interface 300 of the target application includes a template control 31 for triggering the target application to display video editing templates for user selection. When a user operation on the template control 31 is received, it is determined that the terminal device has received the template viewing operation input by the user.
[0087] S102: In response to the template viewing operation, the terminal device sends a template request message carrying a function list of the target application to a server.
[0088] Correspondingly, the server receives the template request information carrying the function list of the target application sent by the terminal device.
[0089] The function list of the target application includes identification information of each video editing function supported by the target application.
[0090] Exemplarily, the various video editing functions supported by the target application may include: one or more of: editing, speed adjustment, transition, special effects, subtitles, music, dubbing, watermark, cover and merging.
[0091] In some embodiments, the function list of the target application may include the names of various video editing functions supported by the target application.
[0092] For example, if the target application supports video editing function A and video editing function B, the function list of the target application may be as follows:
[0093] Video editing function A;
[0094] Video editing function B.
[0095] In some embodiments, the function list of the target application may include various video editing functions with tag information of each video editing function, wherein the tag information of the video editing functions supported by the target application is a first preset value, and the tag information of the video editing functions not supported by the target application is a second preset value.
[0096] For example, if the target application supports video editing function A, video editing function B, and video editing function D, the function list of the target application may be as shown in Table 1 below:
[0097] Table 1
[0098] Video editing function name Tag information Video Editing FunctionA 1 Video Editing FunctionB 1 Video editing function C 0 Video editing function D 1 Video Editing Function 0 Video Editing Function 0 Video editing function 0
[0099] S103: The server obtains dependency information of each video editing template in the initial template recommendation list.
[0100] The dependency information of any video editing template includes the video editing function that the video editing template depends on.
[0101] In some embodiments, the server may store the video editing functions that each video editing template depends on, and extract dependency information of each video editing template in the initial template recommendation list from the stored video editing functions.
[0102] In some embodiments, the server may store the video editing functions that each video editing template depends on in the form of template function fields (features), wherein each data bit of the template function field corresponds to a video editing function, and the value on the data bit indicates whether the video editing template depends on the video editing function.
[0103] For example: the video editing functions include: video editing functions A to video editing functions H, and the video editing functions that a certain video editing template depends on include: video editing function A, video editing function D, and video editing function F, then the template function field of the video editing template can be: 10010100. For another example: the template function field of the video editing template is: 01100101, then it can be determined that the video editing functions that the video editing template depends on include: video editing function B, video editing function C, video editing function F, and video editing function H, and does not depend on video editing function A, video editing function D, video editing function E, and video editing function G.
[0104] S104: The server filters out video editing templates in the initial template recommendation list whose dependent video editing functions do not belong to the video editing functions supported by the target application, so as to determine and obtain a template recommendation list.
[0105] That is, determine whether the video editing functions that each video editing template in the initial template recommendation list depends on are video editing functions supported by the target application. If the video editing functions that a certain video editing template depends on are all video editing functions supported by the target application, then retain the video editing template; if one or more video editing functions that a certain video editing template depends on are not supported by the target application, then delete the video editing template from the initial template recommendation list.
[0106] It should be noted that the initial template recommendation list and the template recommendation list do not store the video editing template itself, but the display information or identification information of the video editing template. The display information or identification information of the video editing template may include the cover of the video editing template, the inspection introduction of the video editing template, the type of the video editing template, and other information.
[0107] S105. The server sends the template recommendation list to the terminal device.
[0108] Correspondingly, the terminal device receives the template recommendation list sent by the server.
[0109] The template recommendation list includes display information of at least one video editing template; and the video editing functions that each video editing template in the template recommendation list relies on all belong to the video editing functions supported by the target application.
[0110] S106: The terminal device displays video editing templates available for user selection in the user interface of the target application according to the template recommendation list.
[0111] The video editing method provided in the embodiment of the present application, when receiving a template viewing operation input by the user for triggering the display of video editing templates available for selection by the user in the user interface of the target application, in response to the template viewing operation, sends a template request message carrying identification information of each video editing function supported by the target application to the server, then receives a template recommendation list including display information of at least one video editing template sent by the server, and displays the video editing template available for selection by the user in the user interface of the target application according to the template recommendation list. Since the terminal device can send identification information of each video editing function supported by the target application to the server when receiving the template viewing operation input by the user, the server can send display information of video editing templates whose dependent video editing functions belong to the video editing functions supported by the target application to the client according to the video editing functions supported by the target application, so the embodiment of the present application can avoid the video editing template from using video editing functions not supported by the current application while avoiding the maintenance and management of multiple video editing template libraries.
[0112] Since the terminal device needs to send a template request message carrying the function list of the target application to the server, the terminal device needs to obtain the function list of the target application before sending the template request message carrying the function list of the target application to the server. The following further describes the implementation method of the terminal device obtaining the function list of the target application.
[0113] In some embodiments, the implementation method of the terminal device obtaining the function list of the target application includes: obtaining the installation package of the target application; parsing the installation package of the target application to obtain the function list of the target application.
[0114] That is, when building the target application installation package, the function list of the application is added to the application installation package. The terminal device downloads the target application installation package, parses the target application installation package, and obtains the function list of the target application when installing the target application.
[0115] Since in the above embodiment, the terminal device obtains the function list of the target application during the installation of the target application, and sending a template request message carrying the function list of the target application to the server is a step in the process of running the target application, after parsing the installation package of the target application to obtain the function list of the target application, the terminal device can first save the function list of the target application to a preset storage location, and when it needs to send a template request message carrying the function list of the target application to the server, read the function list of the target application from the preset storage location.
[0116] In some embodiments, the implementation method of the terminal device obtaining the function list of the target application includes: determining each video editing function supported by the target application; and generating the function list of the target application according to the identification information of each video editing function supported by the target application.
[0117] Exemplarily, the video editing functions supported by the application can be automatically obtained by analyzing the code, interface or other relevant information of the application.
[0118] When receiving a template viewing operation input by the user, the terminal device can obtain the function list of the target application through the above embodiment, or it can obtain and save the function list of the target application in advance through the above embodiment, and when receiving a template viewing operation input by the user, directly read the saved function list of the target application.
[0119] Since the server obtains the template recommendation list by filtering out the video editing templates whose video editing functions are not supported by the target application in the initial template recommendation list, the server needs to generate the initial template recommendation list before recommending the video editing templates in the initial template recommendation list. The following describes the implementation method of the server generating the initial template recommendation list.
[0120] In some embodiments, the implementation method of generating the initial template recommendation list by the server includes: obtaining the recommendation degree of each video template based on a preset recommendation algorithm; and generating the initial template recommendation list according to the recommendation degree of each video template.
[0121] The preset recommendation algorithms may include: collaborative filtering recommendation algorithm, content-based recommendation algorithm, hybrid recommendation algorithm, etc. Among them, the collaborative filtering recommendation algorithm is an algorithm that recommends based on the user's historical behavior and the similarity with other users, the content-based recommendation algorithm is an algorithm that recommends based on the attributes of the video editing template and the user's preferences, and the hybrid recommendation algorithm is an algorithm that combines the collaborative filtering recommendation algorithm and the content-based recommendation algorithm.
[0122] exist Figure 1 Based on the embodiment shown, refer to Figure 4 As shown, after the terminal device displays the video editing templates available for user selection in the user interface of the target application according to the template recommendation list, the video editing method further includes the following steps:
[0123] S401. A terminal device receives a user's selection operation on display information of a first video editing template in a user interface of the target application.
[0124] The first video editing template in the embodiment of the present application may be any video editing template in the user interface of the target application.
[0125] It should be noted that the user interface of the target application displays the video recommendation templates in the template recommendation list, so the first video editing template is the video recommendation template in the template recommendation list.
[0126] S402: The terminal device sends template acquisition information for requesting to acquire the first video editing template to the server.
[0127] Correspondingly, the server receives template acquisition information sent by the terminal for requesting to acquire the first video editing template.
[0128] For example, refer to Figure 5 As shown, after the video editing templates available for user selection are displayed in the user interface of the target application according to the template recommendation list, the user interface 500 of the target application includes display information of multiple video editing templates. When the user inputs a selection operation for the display information of the video editing template F in the user interface 500 of the target application, the terminal device sends template acquisition information for requesting to obtain the video editing template F to the server.
[0129] S403: The server obtains the first video editing template from a template library.
[0130] In some embodiments, the server stores the storage location of each video editing template in the template library, and the implementation method for the server to obtain the first video editing template from the template library includes: reading the first video editing template from the template library according to the storage location of the first video editing template in the template library.
[0131] In some embodiments, the implementation method of the server obtaining the first video editing template from the template library includes: sending a template acquisition request carrying identification information of the first video editing template to the template library, and receiving the first video editing template sent by the template library.
[0132] S404: The server sends the first video editing template to the terminal device.
[0133] Correspondingly, the terminal device receives the first video editing template sent by the server.
[0134] S405: The terminal device performs video editing according to the first video editing template.
[0135] In some embodiments, the video editing method provided by the above embodiments also includes: the server receives a second video editing template uploaded by the terminal device, obtains dependency information of the second video editing template, saves the second video editing template to a template library, and saves the dependency information of the second video editing template to a preset storage location.
[0136] In some embodiments, the implementation manner in which the server obtains the dependency information of the second video editing template includes: analyzing the second video editing template to obtain the dependency information of the second video editing template.
[0137] In some embodiments, the implementation manner in which the server obtains the dependency information of the second video editing template includes: receiving the dependency information of the second video editing template uploaded by a terminal device.
[0138] Based on the same inventive concept, as an implementation of the above method, the embodiment of the present application also provides a terminal device and a server. This embodiment corresponds to the above method embodiment. For the ease of reading, this embodiment will no longer repeat the details of the above method embodiment one by one, but it should be clear that the terminal device and server in this embodiment can correspond to the implementation of all the contents in the above method embodiment.
[0139] The present application embodiment provides a terminal device, Figure 6 is a schematic diagram of the structure of the terminal device, such as Figure 6 As shown, the terminal device 600 includes:
[0140] A user input unit 61, used to receive a template viewing operation input by a user, wherein the template viewing operation is used to trigger displaying video editing templates available for user selection in a user interface of a target application;
[0141] A sending unit 62, configured to send, in response to the template viewing operation, a template request message carrying a function list of the target application to a server, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0142] The receiving unit 63 is used to receive a template recommendation list sent by the server, wherein the template recommendation list includes display information of at least one video editing template; the video editing functions that each video editing template in the template recommendation list relies on belong to the video editing functions supported by the target application;
[0143] The processing unit 64 is configured to display video editing templates available for selection by the user in the user interface of the target application according to the template recommendation list.
[0144] As an optional implementation of the embodiment of the present application,
[0145] The user input unit 61 is further configured to receive a user's selection operation on display information of a first video editing template in the user interface of the target application after the processing unit displays video editing templates available for selection by the user in the user interface of the target application according to the template recommendation list;
[0146] The sending unit 62 is further used to send template acquisition information for requesting to acquire the first video editing template to the server;
[0147] The receiving unit 63 is further configured to receive the first video editing template sent by the server;
[0148] The processing unit 64 is further configured to perform video editing according to the first video editing template.
[0149] As an optional implementation of the embodiment of the present application, the processing unit 64 is also used to obtain the installation package of the target application before sending a template request message carrying the function list of the target application to the server; parse the installation package of the target application to obtain the function list of the target application; and save the function list of the target application to a preset storage location.
[0150] As an optional implementation of the embodiment of the present application, the processing unit 64 is also used to determine the various video editing functions supported by the target application before sending a template request message carrying the function list of the target application to the server; and generate the function list of the target application according to the identification information of the various video editing functions supported by the target application.
[0151] The terminal device provided in the embodiment of the present application can execute the video editing method provided in any of the above embodiments, and its implementation principle and technical effect are similar, which will not be repeated here.
[0152] The present application embodiment provides a server, Figure 7 is a schematic diagram of the server structure, such as Figure 7 As shown, the server 700 includes:
[0153] The receiving unit 71 is used to receive a template request message sent by a terminal device and carrying a function list of a target application, wherein the function list of the target application includes identification information of each video editing function supported by the target application;
[0154] An acquiring unit 72 is used to acquire dependency information of each video editing template in the initial template recommendation list, wherein the dependency information of any video editing template includes the video editing function that the video editing template depends on;
[0155] A processing unit 73 is used to filter out the video editing templates whose video editing functions are not supported by the target application in the initial template recommendation list, so as to determine and obtain a template recommendation list;
[0156] The sending unit 74 is configured to send the template recommendation list to the terminal device.
[0157] As an optional implementation of the embodiment of the present application, the receiving unit 71 is further used to receive template acquisition information sent by the terminal device for requesting to obtain the first video editing template after sending the template recommendation list to the terminal device;
[0158] The processing unit 73 is further configured to obtain the first video editing template from a template library;
[0159] The sending unit 74 is further configured to send the first video editing template to the terminal device.
[0160] As an optional implementation of the embodiment of the present application,
[0161] The receiving unit 71 is further configured to receive a second video editing template uploaded by the terminal device;
[0162] The processing unit 73 is further used to obtain dependency information of the second video editing template; save the second video editing template to a template library, and save the dependency information of the second video editing template to a preset storage location.
[0163] As an optional implementation of the embodiment of the present application, the processing unit 73 is also used to obtain the recommendation degree of each video template based on a preset recommendation algorithm before obtaining the dependency information of each video editing template in the initial template recommendation list; and generate the initial template recommendation list according to the recommendation degree of each video template.
[0164] The server provided in the embodiment of the present application can execute the video editing method provided in any of the above embodiments, and its implementation principle and technical effect are similar, which will not be repeated here.
[0165] Based on the same inventive concept, an embodiment of the present application also provides an electronic device. Figure 8 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application, such as Figure 8 As shown, the electronic device provided in this embodiment includes: a memory 801 and a processor 802, wherein the memory 801 is used to store a computer program, and the processor 802 is used to execute the video editing method provided in the above embodiment when executing the computer program.
[0166] Based on the same inventive concept, an embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the computing device implements the video editing method provided in the above embodiment.
[0167] Based on the same inventive concept, an embodiment of the present application further provides a computer program product. When the computer program product is run on a computer, the computing device implements the video editing method provided in the above embodiment.
[0168] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media that include computer-usable program code.
[0169] The processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.
[0170] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0171] Computer readable media include permanent and non-permanent, removable and non-removable storage media. Storage media can be implemented by any method or technology to store information, and the information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0172] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some or all of the technical features therein, and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A video editing method, characterized in that: The method comprises: Receiving a template viewing operation input by a user, wherein the template viewing operation is used to trigger displaying video editing templates available for selection by the user in a user interface of a target application; In response to the template viewing operation, sending a template request message carrying a function list of the target application to a server, wherein the function list of the target application includes identification information of each video editing function supported by the target application; receiving a template recommendation list sent by the server, wherein the template recommendation list includes display information of at least one video editing template; video editing functions that each video editing template in the template recommendation list relies on belong to video editing functions supported by the target application; The video editing templates available for user selection are displayed in the user interface of the target application according to the template recommendation list.
2. The method according to claim 1, characterized in that After displaying the video editing templates available for selection by the user in the user interface of the target application according to the template recommendation list, the method further includes: Receiving a user's selection operation on display information of a first video editing template in a user interface of the target application; Sending template acquisition information for requesting to acquire the first video editing template to the server; Receiving the first video editing template sent by the server; Video editing is performed according to the first video editing template.
3. The method according to claim 1, characterized in that: Before sending the template request information carrying the function list of the target application to the server, the method further includes: Obtaining an installation package of the target application; Parsing the installation package of the target application to obtain a function list of the target application; The function list of the target application is saved to a preset storage location.
4. The method according to claim 1, characterized in that: Before sending the template request information carrying the function list of the target application to the server, the method further includes: Determining various video editing functions supported by the target application; A function list of the target application is generated according to identification information of each video editing function supported by the target application.
5. A video editing method, characterized in that: The method comprises: Receiving a template request message sent by a terminal device and carrying a function list of a target application, wherein the function list of the target application includes identification information of each video editing function supported by the target application; Obtain dependency information of each video editing template in the initial template recommendation list, wherein the dependency information of any video editing template includes the video editing function that the video editing template depends on; Filter out the video editing templates in the initial template recommendation list whose dependent video editing functions do not belong to the video editing functions supported by the target application, so as to determine and obtain a template recommendation list; Send the template recommendation list to the terminal device.
6. The method according to claim 5, characterized in that After sending the template recommendation list to the terminal device, the method further includes: Receiving template acquisition information sent by the terminal device for requesting to acquire a first video editing template; Acquire the first video editing template from a template library; Send the first video editing template to the terminal device.
7. The method according to claim 5, characterized in that The method further comprises: Receiving a second video editing template uploaded by the terminal device; Obtaining dependency information of the second video editing template; The second video editing template is saved to a template library, and dependency information of the second video editing template is saved to a preset storage location.
8. The method according to claim 5, characterized in that Before obtaining the dependency information of each video editing template in the initial template recommendation list, the following steps are included: Obtain the recommendation degree of each video template based on a preset recommendation algorithm; The initial template recommendation list is generated according to the recommendation degree of each video template.
9. A terminal device, characterized in that: include: A user input unit, used to receive a template viewing operation input by a user, wherein the template viewing operation is used to trigger displaying video editing templates available for selection by the user in a user interface of a target application; a sending unit, configured to send, in response to the template viewing operation, a template request message carrying a function list of the target application to a server, wherein the function list of the target application includes identification information of each video editing function supported by the target application; A receiving unit, configured to receive a template recommendation list sent by the server, wherein the template recommendation list includes display information of at least one video editing template; The video editing functions that each video editing template in the template recommendation list relies on are all video editing functions supported by the target application; A processing unit is used to display video editing templates available for user selection in the user interface of the target application according to the template recommendation list.
10. A server, characterized in that: include: A receiving unit, configured to receive a template request message sent by a terminal device and carrying a function list of a target application, wherein the function list of the target application includes identification information of each video editing function supported by the target application; An acquisition unit, used to acquire dependency information of each video editing template in the initial template recommendation list, wherein the dependency information of any video editing template includes a video editing function that the video editing template depends on; A processing unit, configured to filter out video editing templates in the initial template recommendation list whose dependent video editing functions do not belong to the video editing functions supported by the target application, so as to determine and obtain a template recommendation list; A sending unit is used to send the template recommendation list to the terminal device.
11. An electronic device, characterized in that: include: A memory and a processor, wherein the memory is used to store a computer program and the processor is used to enable the electronic device to implement the video editing method according to any one of claims 1 to 8 when executing the computer program.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a computing device, the computing device implements the video editing method according to any one of claims 1 to 8.
13. A computer program product, characterized in that When the computer program product runs on a computer, the computer is enabled to implement the video editing method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Editing template recommendation method and device, electronic equipment and storage medium
CN111105819A
Video generation method and device, electronic equipment and storage medium
CN112637675A