Media editing method and device, equipment and storage medium
By allowing multiple editing tasks to be created and managed simultaneously and showing task progress, the inefficiency problem in existing media editing tools is solved, achieving a more efficient media editing process.
Patent Information
- Application Number
- CN202410140962.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-31
- Publication Date
- 2025-08-01
AI Technical Summary
Existing media editing tools are inefficient when performing multiple editing operations and need to wait for the previous editing task to complete before subsequent operations are initiated.
Allows the creation and management of multiple editing tasks at the same time, and displays task progress through the task panel, supporting asynchronous editing operations.
Improves the efficiency of media editing, allowing users to handle multiple editing tasks simultaneously without waiting for the previous task to complete.
Smart Images

Figure CN120406781A_ABST
Abstract
Description
Technical Field
[0001] Example embodiments of the present disclosure generally relate to the field of computers, and particularly to methods, apparatuses, devices, and computer-readable storage media for media editing. Background Art
[0002] Media editing tools can help people perform various types of editing operations on media files. Taking the video editing scenario as an example, media editing tools can support users to perform various types of editing on video files, such as anti-shake and denoising.
[0003] Generally speaking, the editing of media content involves the execution of multiple operations. How to effectively manage and execute such editing operations will affect the efficiency of media editing. Summary of the Invention
[0004] In a first aspect of the present disclosure, a method for media editing is provided. The method includes: creating a first editing task corresponding to a first editing operation in response to the first editing operation triggered for a first media material and adding the first editing task to a task list; creating a second editing task corresponding to a second editing operation in response to the second editing operation triggered for a second media material and adding the second editing task to the task list when the first editing task has not been completed; and displaying a task panel based on a received preset operation, where the task panel is used to display task information, and the task information indicates the execution progress of multiple editing tasks in the task list, and the multiple editing tasks include the first editing task and the second editing task.
[0005] In a second aspect of the present disclosure, an apparatus for media editing is provided. The apparatus includes: a first creation module configured to create a first editing task corresponding to a first editing operation in response to the first editing operation triggered for a first media material and add the first editing task to a task list; a second creation module configured to create a second editing task corresponding to a second editing operation in response to the second editing operation triggered for a second media material and add the second editing task to the task list when the first editing task has not been completed; and a panel display module configured to display a task panel based on a received preset operation, where the task panel is used to display task information, and the task information indicates the execution progress of multiple editing tasks in the task list, and the multiple editing tasks include the first editing task and the second editing task.
[0006] In a third aspect of the present disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. The instructions, when executed by the at least one processing unit, cause the device to perform the method of the first aspect.
[0007] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided. A computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to implement the method of the first aspect.
[0008] It should be understood that the content described in this part is not intended to define the key features or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In combination with the accompanying drawings and with reference to the following detailed description, the above and other features, advantages and aspects of the embodiments of the present disclosure will become more obvious. In the drawings, the same or similar reference numerals denote the same or similar elements, where:
[0010] Figure 1 A schematic diagram showing an example environment in which embodiments of the present disclosure can be implemented;
[0011] Figure 2 A flowchart showing an example process of managing an editing task according to some embodiments of the present disclosure;
[0012] Figures 3A to 3C An example interface according to some embodiments of the present disclosure;
[0013] Figures 4A to 4D An example interface according to some embodiments of the present disclosure;
[0014] Figure 5 A schematic diagram showing a task management system according to some embodiments of the present disclosure;
[0015] Figure 6 A schematic structural block diagram showing an example device for media editing according to some embodiments of the present disclosure; and
[0016] Figure 7 A block diagram showing an electronic device capable of implementing multiple embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0017] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not used to limit the protection scope of the present disclosure.
[0018] Note that the titles of any sections / subsections provided in this document are not restrictive. Various embodiments are described throughout this document, and any type of embodiment can be included under any section / subsection. Additionally, the embodiments described in any section / subsection can be combined with any other embodiments described in the same section / subsection and / or different sections / subsections in any manner.
[0019] In the description of the embodiments of the present disclosure, the term "including" and its like shall be understood as an open inclusion, i.e., "including but not limited to". The term "based on" shall be understood as "at least partially based on". The term "an embodiment" or "the embodiment" shall be understood as "at least one embodiment". The term "some embodiments" shall be understood as "at least some embodiments". There may also be other explicit and implicit definitions hereinafter. The terms "first", "second", etc. may refer to different or the same objects. There may also be other explicit and implicit definitions hereinafter.
[0020] The embodiments of the present disclosure may involve the user's data, data acquisition and / or use, etc. These aspects all comply with the corresponding laws, regulations and related provisions. In the embodiments of the present disclosure, all data collection, acquisition, processing, processing, forwarding, use, etc. are carried out on the premise that the user is aware and confirms. Correspondingly, when implementing the embodiments of the present disclosure, the types, usage scopes, usage scenarios, etc. of the data or information that may be involved should be informed to the user and the user's authorization should be obtained through appropriate means in accordance with the relevant laws and regulations. The specific notification and / or authorization methods may vary according to the actual situation and application scenarios, and the scope of the present disclosure is not limited in this regard.
[0021] In the solutions of this specification and embodiments, if personal information processing is involved, it will be processed on the premise of having a legal basis (such as obtaining the consent of the personal information subject, or being necessary for performing a contract, etc.), and will only be processed within the specified or agreed scope. The user's refusal to process personal information other than the necessary information required for basic functions will not affect the user's use of basic functions.
[0022] As briefly mentioned above, the editing of media content involves the execution of multiple editing operations. Some traditional media editing solutions only support the serial execution of such multiple editing operations, which causes the user to wait for the completion of the previous editing task before being able to initiate subsequent editing operations, greatly affecting the editing efficiency.
[0023] Embodiments of the present disclosure propose a solution for media editing. According to this solution, in response to a first editing operation triggered for a first media material, a first editing task corresponding to the first editing operation can be created and added to a task list. Further, in the case where the first editing task is not completed, in response to a second editing operation triggered for a second media material, a second editing task corresponding to the second editing operation can be created and added to the task list.
[0024] Further, based on a received preset operation, a task panel can be displayed. The task panel is used to display task information, and the task information indicates the execution progress of multiple editing tasks in the task list. The multiple editing tasks include the first editing task and the second editing task.
[0025] In this way, embodiments of the present disclosure can support a user to simultaneously create multiple editing tasks for multiple media materials, and facilitate the user to perceive the status of the multiple editing tasks, thereby improving the efficiency of media editing.
[0026] Various example implementations of this solution are further described in detail below with reference to the accompanying drawings.
[0027] Example environment
[0028] Figure 1 FIG. shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. As Figure 1 shown, the example environment 100 may include an electronic device 110.
[0029] In this example environment 100, the electronic device 110 may run an application 120 that supports interface interaction. The application 120 may be any suitable type of application for interface interaction, and its examples may include, but are not limited to: a media editing application or any other suitable application with media editing capabilities. The user 140 may interact with the application 120 via the electronic device 110 and / or its attached devices.
[0030] In Figure 1 the environment 100, if the application 120 is in an active state, the electronic device 110 may present an interface 150 for supporting interface interaction through the application 120.
[0031] In some embodiments, the electronic device 110 communicates with the server 130 to implement the provision of services for the application 120. The electronic device 110 can be any type of mobile terminal, fixed terminal or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, handheld computers, portable game terminals, VR / AR devices, Personal Communication System (PCS) devices, personal navigation devices, Personal Digital Assistant (PDA), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio broadcast receivers, e-book devices, game devices, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. In some embodiments, the electronic device 110 is also capable of supporting any type of user interface (such as a "wearable" circuit, etc.).
[0032] The server 130 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms. The server 130 can include, for example, a computing system / server, such as a mainframe, an edge computing node, a computing device in a cloud environment, and so on. The server 130 can provide backend services for the application 120 that supports virtual scenarios in the electronic device 110.
[0033] A communication connection can be established between the server 130 and the electronic device 110. The communication connection can be established by wired or wireless means. The communication connection can include, but is not limited to, a Bluetooth connection, a mobile network connection, a Universal Serial Bus (USB) connection, a Wireless Fidelity (WiFi) connection, etc., and the embodiments of the present disclosure are not limited in this regard. In the embodiments of the present disclosure, the server 130 and the electronic device 110 can implement signaling interaction through the communication connection therebetween.
[0034] It should be understood that the structures and functions of the various elements in the environment 100 are described only for exemplary purposes, without implying any limitation on the scope of the present disclosure.
[0035] Some exemplary embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.
[0036] Example process
[0037] Figure 2 shows a flowchart of an example process 200 for media editing according to some embodiments of the present disclosure. The process 200 may be implemented at the electronic device 110. The following will refer to Figure 1 to describe the process 200.
[0038] As Figure 2 shown, at block 210, in response to a first edit operation triggered for a first media material, the electronic device 110 creates a first edit task corresponding to the first edit operation and adds the first edit task to a task list.
[0039] The following will refer to Figures 3A to 3C and Figures 4A to 4D to describe the process 200. Figures 3A to 3C shows example media editing interfaces 300A to 300C according to some embodiments of the present disclosure, Figures 4A to 4D shows example media editing interfaces 400A to 400D according to some embodiments of the present disclosure. The interfaces 300A to 300C and the interfaces 400A to 400D may be provided by Figure 1 the electronic device 110 shown.
[0040] As Figure 3A shown, the interface 300A may correspond to an editing interface for media content 305. As an example, such media content 305 may include, for example, image content or video content. For example, the electronic device 110 may receive an editing request from a user for a certain media segment in the video content.
[0041] As shown in the figure, the electronic device 110 may provide edit entries corresponding to various types of edit operations in the interface 300A. For example, taking the edit operation of "keying out" as an example, the electronic device 110 may receive the user's selection of the entry 310 to receive the user's first edit operation triggered for the media content 305 or the first media material (e.g., the first segment of the video) in the media content 305 to execute the edit request of "keying out".
[0042] In some embodiments, the electronic device 110 may correspondingly create a first edit task corresponding to the first edit operation and add the first edit task to the task list. The process of edit task creation and addition will be described in detail below.
[0043] In some embodiments, as Figure 3B shown, after receiving that the first edit task is added to the task list, the electronic device 110 may display addition information 315 in the interface 300B to indicate that the first edit task (e.g., the "keying out" task) corresponding to the edit request has been added to the task list.
[0044] Additionally, the electronic device 110 may also display a cancellation control for canceling the first editing task in association with the added information 315. As an example, after receiving a trigger for the cancellation control, the electronic device 110 will delete the first editing task from the task list.
[0045] Furthermore, as Figure 3C shown, after no trigger for the cancellation control is received within a preset time period, the electronic device 110 may display a status element 320 in the interface 300C. The status element 320 may be used to indicate the processing status of a set of editing tasks to be completed.
[0046] Taking Figure 3C as an example, when there is only the "keying" editing task to be processed currently, the electronic device 110 may use the status element 320 to display the number of the set of editing tasks and the processing progress of the set of editing tasks. For example, the electronic device 110 may use a progress bar to represent the overall processing progress of the set of editing tasks.
[0047] In some embodiments, the electronic device 110 may, for example, use a unified display component to display the added information 315 and the status element 320. As an example, when receiving a new editing request, the electronic device 110, for example, stops displaying the status element 320, and correspondingly presents the added information 315 corresponding to the new editing request, and after a preset time period, displays the updated status element 320.
[0048] Continuing to refer to Figure 2 , at block 220, when the first editing task has not been completed, the electronic device 110, in response to a second editing operation triggered for a second media material, creates a second editing task corresponding to the second editing operation and adds the second editing task to the task list.
[0049] In some embodiments, the electronic device 110 may receive multiple editing requests initiated by a user simultaneously and may correspondingly create multiple editing tasks.
[0050] As an example, when the first editing task is waiting to be executed or is being executed, the electronic device 110 may create a second editing task for the second media material based on a second editing operation triggered by the user for the second media material.
[0051] In some embodiments, the first media material and the second media material may be the same media material, for example, the same video clip. That is, the electronic device 110 may support a user in initiating a new editing request for a specific media material when an existing editing task for the specific media material has not been completed, and creating and adding a new editing task.
[0052] In some embodiments, the first media material and the second media material may be different media materials. That is, the electronic device 110 may support a user in initiating a new editing request for another media material and creating and adding a new editing task when an existing editing task for a specific media material is not completed.
[0053] In some embodiments, the electronic device 110 may update the status elements displayed in the interface accordingly based on the processing status of multiple editing tasks added to the task list.
[0054] Continuing to refer to Figure 4A , as an example, when the electronic device 110 currently has multiple editing tasks to be processed, the electronic device 110 may use the status element 405 to characterize the processing status of the multiple editing tasks to be processed. For example, the number of editing tasks to be processed is 10, and the processing progress of these 10 editing tasks can be represented by a progress bar.
[0055] Continuing to refer to Figure 2 , at block 230, the electronic device 110 displays a task panel based on a received preset operation. The task panel is used to display task information, and the task information indicates the execution progress of multiple editing tasks in the task list. The multiple editing tasks include a first editing task and a second editing task.
[0056] In some embodiments, the electronic device 110 may receive a user's selection of the status element 405 and may accordingly present the task panel 410 as Figure 4B shown. As Figure 4B shown, the task panel 410 may present the task information of multiple editing tasks to be completed to indicate the execution progress of the multiple editing tasks.
[0057] As shown in the figure, for example, 10 editing tasks are currently in a pending state, including editing tasks 415-1 to 415-6 (collectively or individually referred to as editing task 415) as shown. The electronic device 110 may also display other editing tasks based on a swipe operation in the task panel 410, for example.
[0058] In some embodiments, as Figure 4B shown, the electronic device 110 may display multiple description items corresponding to multiple editing tasks. For example, one line of information in the task panel 410 may correspond to one description item.
[0059] As Figure 4B shown, taking editing task 415-1 as an example, the corresponding description item may include, for example, the identifier corresponding to the editing task 415-1 (e.g., "intelligent matting"). Additionally, the description item may further include the processing progress of the editing task 415-1 (e.g., "40%").
[0060] In some embodiments, the electronic device 110 may update such a description item, for example, according to a preset period, so as to present the real-time processing status of the set of editing tasks 415 through the task panel 410.
[0061] Continuing to refer to Figure 4B , the electronic device 110 may also provide one or more controls associated with the description item for controlling the execution of the corresponding editing task. For example, the electronic device 110 may provide a stop execution control for canceling the corresponding editing task associated with each description item.
[0062] Continuing to refer to Figure 4C , when the editing task 415-3 is completed, for example, the electronic device 110 may update the description item corresponding to the editing task 415-3 to indicate that the editing task 415-3 has been executed and completed. For example, the electronic device 110 may display a corresponding icon to indicate that the editing task has been completed.
[0063] In some embodiments, after a preset period of time when the editing task 415-3 is completed, the electronic device 110 may stop displaying the description item corresponding to the editing task 415-3 on the task panel 410.
[0064] In some embodiments, the electronic device 110 may also update the status element 405 synchronously, for example, to update the number and processing progress of the editing tasks to be processed.
[0065] In some embodiments, some editing tasks may also fail to execute. For example, as Figure 4D shown, the editing task 415-3 may, for example, fail to execute. Accordingly, the electronic device 110 may update the description item corresponding to the editing task 415-3 to indicate that the editing task 415-3 has failed to execute.
[0066] Additionally, the electronic device 110 may provide a re-execution control for triggering the re-execution of the editing task 415-3 associated with the description item of the editing task 415-3.
[0067] In some embodiments, when the editing tasks to be processed include editing tasks that have failed to execute, the electronic device 110 may also update the status element 405. As an example, the electronic device 110 may display an indicator (for example, a small red dot above the number) to indicate that at least one editing task has failed to execute.
[0068] Based on the processes described above, the embodiments of the present disclosure can represent the execution status of the currently pending editing tasks through the status element and / or the task panel 410, thereby helping to improve the media editing efficiency.
[0069] In some embodiments, the electronic device 110 may determine the display order of a plurality of description items corresponding to a plurality of editing tasks 415 in the task panel 410.
[0070] In some embodiments, the electronic device 110 may, for example, determine the display order of the corresponding description items according to the execution status of the plurality of editing tasks 415. Such an execution status may include, for example: to be executed, in execution, or execution failed.
[0071] As an example, the description item corresponding to an editing task with execution failed may, for example, have a higher display priority. As another example, the description items corresponding to tasks in execution and editing tasks to be executed may, for example, have a lower display priority.
[0072] In some embodiments, when there is no unexecuted editing task, the electronic device 110 may, for example, also sort the plurality of description items based on the creation time of each editing task. For example, the description item corresponding to an editing task with an earlier creation time may, for example, have a higher display priority.
[0073] Alternatively, the electronic device 110 may, for example, also sort the plurality of description items based on the execution order of each editing task. For example, the description item corresponding to an editing task with a higher execution order may, for example, have a higher display priority.
[0074] Based on such a manner, the embodiments of the present disclosure can help users obtain the status of editing tasks more efficiently.
[0075] In some embodiments, the size information of the task panel 410 may be adaptively adjusted according to the number of editing tasks to be processed. As an example, when the task panel 410 is triggered to be displayed, the electronic device 110 may determine the size of the task panel, for example, the display height, according to the number of current editing tasks to be processed.
[0076] Further, when the task panel 410 is kept displayed, the electronic device 110 may, for example, keep the display size of the task panel. For example, Figure 4C As an example, after the electronic device 110 stops displaying the description item corresponding to the editing task 415-3, the electronic device 110 will not adjust the height of the task panel 410 either.
[0077] As mentioned above, the media content may include video content, for example. Correspondingly, the editing tasks mentioned above may correspond to specific media segments in the video content.
[0078] In some embodiments, the electronic device 110 can, for example, support the concurrent creation of multiple editing tasks without depending on whether a previous editing task has been processed and completed. As an example, the electronic device 110 can, for example, support a user to initiate different types of editing requests for the same media segment, thereby creating different editing tasks for the same media segment. As another example, the electronic device 110 can also support a user to initiate multiple editing requests for different media segments.
[0079] In this way, the embodiments of the present disclosure can support a user to initiate an editing request asynchronously without having to concern whether a previous editing request has been executed and completed, thereby improving the efficiency of media editing.
[0080] The above embodiments describe an example process of the present disclosure by taking the status element 320 and the status element 405 as examples. In some embodiments, the electronic device 110 can, for example, also display a task panel based on a user's request to view the task panel, so as to display status elements of one or more editing tasks to be processed in the task panel. For example, the electronic device 110 can, for example, not directly display the status element 320 and / or the status element 405 in the editing interface, but display the task panel based on a preset operation of the user and use the task panel to display the status elements.
[0081] The following will further refer to Figure 5 to describe the specific process of creating and executing an editing task. Figure 5 FIG. shows a schematic diagram of a task management system 500 according to some embodiments of the present disclosure.
[0082] As Figure 5 shown, the task management system 500 can provide a variety of editing functions, for example, functions 505-1 to 505-N (collectively or individually referred to as function 505). When a user initiates an editing request, the task management system 500 can determine that the corresponding function 505 is triggered.
[0083] In some embodiments, the task management system 500 can create a task instance of an editing task based on the received editing request.
[0084] Traditionally, the electronic device 110 needs to call a bottom-layer algorithm corresponding to a specific function to perform the corresponding editing operation. However, such a method will result in each editing operation needing to be executed serially.
[0085] As Figure 5As shown, the task management system 500 may include an algorithm service 510, which may provide a unified service interface for different functions 505. Specifically, the algorithm service 510 may encapsulate underlying algorithms corresponding to different functions 505. When creating a corresponding task instance, the algorithm service 510 may use an algorithm interface corresponding to an edit request to create a task instance for managing the execution of the corresponding edit task. This task instance may be recycled, for example, based on the completion of the corresponding edit task.
[0086] Further, the task management system 500 may add the created task instance to a unified task list (also referred to as a task queue in some scenarios) at 515. Traditionally, different task lists need to be created for different functions 505. By creating task instances, the task management system 500 can provide a unified task list to support adding different types of edit tasks and / or edit tasks for different media materials to this unified task list for unified management.
[0087] By using the task list for task management, embodiments of the present disclosure can reduce the resource overhead of switching between threads, thereby improving the efficiency of task management.
[0088] In some embodiments, multiple edit tasks in the task list may be divided into multiple groups of edit tasks based on the media materials being processed. For example, a first group of edit tasks for a first media material and a second group of edit tasks for a second media material. In some embodiments, multiple groups of edit tasks for multiple media materials may be executed in parallel.
[0089] In some embodiments, the task management system 500 may also determine the execution order of each edit task in the task list. [[ID=I4]]
[0090] Specifically, the task management system 500 may determine the priority of a first edit task based on the task type of the edit task in the task list. Further, the task management system 500 may determine the execution order of this edit task in the task list based at least on the priority.
[0091] In some embodiments, the type of edit task may include, for example, a first type, a first type, where the product of an edit task of the first type is indication information about an existing media file. For example, edit tasks such as keying, anti-shake, and subject locking do not directly generate video content but generate indication information about this video content, which corresponds to the first type. Additionally, the type of edit task may further include a second type, where the product of an edit task of the second type is a new media file. For example, the products of edit tasks such as reverse playback, gameplay, frame filling, noise reduction, and stroboscopic elimination are new video files, which correspond to the second type. In some embodiments, the priority of the second type may be higher than that of the first type, for example.
[0092] In some embodiments, the task management system 500 may further support a user in configuring various types of priorities and may determine the priority corresponding to an editing task based on such configuration information.
[0093] Furthermore, the task management system 500 may determine the execution order of editing tasks based on a comparison of the priorities of the editing tasks in the task list. Taking the addition of a first editing task to the task list as an example, the task management system 500 may compare the priority of the first editing task with the priorities of other existing editing tasks to determine the execution order of the first editing task.
[0094] In one example, if the priority of an existing editing task is higher than the priority of the first editing task, the task management system 500 may execute normally according to the order in which the editing tasks are added.
[0095] In another example, if the priority of an existing editing task is lower than the priority of the first editing task, the task management system 500 may give priority to executing the first editing task, which may cause the existing editing tasks to be suspended or need to be re-executed.
[0096] In yet another example, if the priority of an existing editing task is the same as the priority of the first editing task, the task management system 500 may determine the execution order based on the coupling relationship between the editing tasks.
[0097] In some embodiments, the task management system 500 may determine the coupling relationship between the first editing task and at least one other editing task in the task list. Further, the task management system 500 may determine the execution order of the first editing task in the task list based on the priority of the first editing task and the coupling relationship.
[0098] In some embodiments, the coupling relationship between editing tasks may include a first relationship indicating that the first editing task triggers the cancellation of execution of at least one other editing task. Alternatively or additionally, the coupling relationship may further include a second relationship indicating that the first editing task triggers the re-execution of at least one other editing task. Alternatively or additionally, the coupling relationship may further include a third relationship indicating that the first editing task can be executed synchronously with at least one other editing task.
[0099] In some embodiments, the coupling relationship between editing tasks, for example, can be determined based on configuration information. In this way, the embodiments of the present disclosure can support the configuration of the coupling relationship between different task types, thereby enabling a more flexible execution of media editing.
[0100] As a specific example, the priority of the "ultra - high - definition picture quality" task can be the same as that of the "noise reduction" task, and both are higher than the priority of the "anti - shake" task. From the perspective of the coupling relationship, the "ultra - high - definition picture quality" task and the "noise reduction" task can be executed superimposed, which will cause the "anti - shake" task to be re - executed.
[0101] In one example, the electronic device 110 can receive the "anti - shake" task, "noise reduction" task, and "ultra - high - definition picture quality" task added by the user to the segment S in sequence. Correspondingly, the electronic device 110 can control the editing tasks to be executed accordingly according to the following logic.
[0102] Specifically, after the "noise reduction" task is triggered, since the priority of the "noise reduction" task is higher than that of the "anti - shake" task, the electronic device 110 will execute the "noise reduction" task, suspend the "anti - shake task", and re - run the "anti - shake" task after the "noise reduction" task is completed.
[0103] Further, after the "ultra - high - definition picture quality" task is triggered, if the "noise reduction" task is being executed, since there is a superimposed coupling relationship between the "noise reduction" task and the "ultra - high - definition picture quality" task, the electronic device 110 can normally execute the "noise reduction" task.
[0104] After the "noise reduction" task is completed, the electronic device 110 can execute the "ultra - high - definition picture quality" task based on the video after "noise reduction" to perform effect superposition. Further, according to the coupling relationship, the electronic device 110 will re - run the "anti - shake" task after the "ultra - high - definition picture quality" task is completed.
[0105] Based on the above process, the embodiments of the present disclosure will allow users to freely submit multiple editing requests without having to concern about the logical relationship between such editing requests, thereby improving the efficiency of media editing.
[0106] Example apparatus and equipment
[0107] The embodiments of the present disclosure also provide corresponding devices for implementing the above - mentioned method or process. Figure 6 The schematic structural block diagram of an example device 600 for media editing according to some embodiments of the present disclosure is shown. The device 600 can be implemented as or included in the electronic device 110. Each module / component in the device 600 can be implemented by hardware, software, firmware, or any combination thereof.
[0108] As Figure 6As shown, device 600 includes a first creation module 610 configured to create a first editing task corresponding to a first editing operation triggered for a first media material and add the first editing task to a task list; a second creation module 620 configured to, when the first editing task is not completed, create a second editing task corresponding to a second editing operation triggered for a second media material and add the second editing task to the task list; and a panel display module 630 configured to display a task panel based on a received preset operation, the task panel being used to display task information, the task information indicating the execution progress of multiple editing tasks in the task list, the multiple editing tasks including the first editing task and the second editing task.
[0109] In some embodiments, device 600 further includes a status display module configured to: present a status element in an editing interface, the status element indicating at least one of the following: the number of multiple editing tasks; the processing progress of multiple editing tasks; an indicator for characterizing that at least one editing task among multiple editing tasks fails to execute.
[0110] In some embodiments, panel display module 630 is further configured to: display the task panel based on a trigger operation for the status element.
[0111] In some embodiments, the status element is displayed in a target component, and the status display module is further configured to: within a first period after receiving an editing request, use the target component to display addition information to indicate that the first editing task is added to the task list, the target component further including a cancellation control for canceling the first editing task; and in response to not receiving a trigger for the cancellation control within the first period, use the target component to display the status element.
[0112] In some embodiments, the task panel includes multiple description items corresponding to multiple editing tasks.
[0113] In some embodiments, panel display module 630 is further configured to: in the task panel, present at least one control associated with a first description item, the at least one control being used to control the execution of the editing task corresponding to the first description item.
[0114] In some embodiments, the at least one control includes at least one of the following: a stop execution control; a re - execution control.
[0115] In some embodiments, the multiple description items in the task panel are sorted based on at least one of the following: the execution status of each editing task, the execution status including: to be executed, executing, or execution failed; the creation time of each editing task; the execution order of each editing task.
[0116] In some embodiments, the apparatus 600 further includes an update module configured to: update a second description item corresponding to the second editing task in response to completion of the execution of the second editing task among a plurality of editing tasks; and stop displaying the second description item in the task panel after a second time period.
[0117] In some embodiments, when the task panel is triggered to be displayed, the size of the task panel is determined based at least on the number of a plurality of editing tasks; and in the case where the task panel is kept displayed, the size of the task panel does not change due to stopping the display of the second description item.
[0118] In some embodiments, the first creation module 610 is further configured to: create a task instance corresponding to the first editing task based on an edit request to manage the execution of the first editing task, where the task instance is recycled in response to completion of the execution of the first editing task.
[0119] In some embodiments, the first creation module 610 is further configured to: call a service interface corresponding to the edit request to create a task instance by using an algorithm interface corresponding to the edit request.
[0120] In some embodiments, the first creation module 610 is further configured to: determine the priority of the first editing task based on the task type of the first editing task; and determine the execution order of the first editing task in the task list based at least on the priority.
[0121] In some embodiments, the task type includes: a first type, where the product of the editing task of the first type is indication information about an existing media file; or a second type, where the product of the editing task of the second type is a new media file.
[0122] Wherein, the priority corresponding to the second type is higher than that of the first type.
[0123] In some embodiments, the first creation module 610 is further configured to: determine a coupling relationship between the first editing task and at least one other editing task in the task list; and determine the execution order of the first editing task in the task list based on the priority and the coupling relationship of the first editing task.
[0124] In some embodiments, the coupling relationship includes at least one of the following: a first relationship indicating that the first editing task triggers cancellation of the execution of at least one other editing task; a second relationship indicating that the first editing task triggers re - execution of at least one other editing task; a third relationship indicating that the first editing task can be executed synchronously with at least one other editing task.
[0125] In some embodiments, the task list includes a first set of editing tasks for a first media material and a second set of editing tasks for a second media material, and the first set of editing tasks and the second set of editing tasks can be executed in parallel.
[0126] Figure 7 FIG. shows a block diagram of an electronic device 700 in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 7 the illustrated electronic device 700 is merely exemplary and should not constitute any limitation to the functions and scopes of the embodiments described herein. Figure 7 the illustrated electronic device 700 can be used to implement the electronic device 110.
[0127] As Figure 1 shown, the electronic device 700 is in the form of a general-purpose electronic device. The components of the electronic device 700 may include, but are not limited to, one or more processors or processing units 710, a memory 720, a storage device 730, one or more communication units 740, one or more input devices 750, and one or more output devices 760. The processing unit 710 may be an actual or virtual processor and is capable of performing various processes according to the programs stored in the memory 720. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing ability of the electronic device 700.
[0128] The electronic device 700 generally includes multiple computer storage media. Such media may be any accessible media that can be obtained by the electronic device 700, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 720 may be a volatile memory (such as registers, caches, random access memory (RAM)), a non-volatile memory (such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 730 may be a removable or non-removable medium and may include machine-readable media, such as a flash drive, a magnetic disk, or any other medium that can be used to store information and / or data and can be accessed within the electronic device 700.
[0129] The electronic device 700 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in Figure 7 Figure 7As shown, a disk drive for reading from and writing to a removable, non-volatile disk (e.g., a "floppy disk") and an optical disk drive for reading from and writing to a removable, non-volatile optical disk can be provided. In these cases, each drive can be connected to a bus (not shown) by one or more data medium interfaces. Memory 720 may include a computer program product 725 having one or more program modules configured to perform the various methods or acts of the various embodiments of the present disclosure.
[0130] Communication unit 740 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of electronic device 700 can be implemented in a single computing cluster or multiple computer machines capable of communicating via a communication connection. Thus, electronic device 700 can operate in a networked environment using a logical connection to one or more other servers, network personal computers (PCs), or another network node.
[0131] Input device 750 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 760 can be one or more output devices, such as a display, speaker, printer, etc. Electronic device 700 can also communicate with one or more external devices (not shown) as needed via communication unit 740, such as storage devices, display devices, etc., communicate with one or more devices that enable a user to interact with electronic device 700, or communicate with any device that enables electronic device 700 to communicate with one or more other electronic devices (e.g., a network card, modem, etc.). Such communication can be performed via an input / output (I / O) interface (not shown).
[0132] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, where the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, the computer program product being tangibly stored on a non-transitory computer-readable medium and including computer-executable instructions, and the computer-executable instructions being executed by a processor to implement the methods described above.
[0133] Aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0134] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that the instructions, when executed by the processing unit of the computer or other programmable data processing apparatus, result in an apparatus that implements the functions / acts specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions may also be stored in a computer-readable storage medium that causes a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises a manufacture including instructions that implement various aspects of the functions / acts specified in one or more blocks of the flowchart and / or block diagram.
[0135] The computer-readable program instructions may be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other devices to produce a computer-implemented process such that the instructions executed on the computer, other programmable data processing apparatus, or other devices implement the functions / acts specified in one or more blocks of the flowchart and / or block diagram.
[0136] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various implementations of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of code, or a portion of an instruction, and the module, segment of code, or portion of an instruction may include one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two consecutive blocks may in fact be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block of the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by special-purpose hardware-based systems that perform the specified functions or acts, or by combinations of special-purpose hardware and computer instructions.
[0137] The implementations of the present disclosure have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The choice of terms used herein is intended to best explain the principles of the implementations, the practical application, or improvements made to the technology in the marketplace, or to enable other ordinary skilled persons in the art to understand the various implementations disclosed herein.
Claims
1. A method for media editing, comprising: In response to a first editing operation triggered for a first media material, creating a first editing task corresponding to the first editing operation and adding the first editing task to a task list; When the first editing task is not completed, in response to a second editing operation triggered for a second media material, creating a second editing task corresponding to the second editing operation and adding the second editing task to the task list; And Based on a received preset operation, displaying a task panel for displaying task information indicating the execution progress of multiple editing tasks in the task list, the multiple editing tasks including the first editing task and the second editing task.
2. The method according to claim 1, further comprising: Presenting a status element in an editing interface, the status element indicating at least one of the following: The number of the multiple editing tasks; The processing progress of the multiple editing tasks; An indicator for characterizing that at least one editing task among the multiple editing tasks fails to execute.
3. The method according to claim 2, wherein displaying the task panel includes: Based on a trigger operation for the status element, displaying the task panel.
4. The method according to claim 2, wherein the status element is displayed in a target component, and displaying the status element in a media editing interface includes: Within a first time period after receiving the editing request, using the target component to display added information to indicate that the first editing task is added to the task list, and the target component further includes a cancel control for canceling the first editing task; And In response to not receiving a trigger for the cancel control within the first time period, using the target component to display the status element.
5. The method according to claim 1, wherein the task panel includes multiple description items corresponding to the multiple editing tasks.
6. The method according to claim 5, further comprising: In the task panel, presenting at least one control associated with a first description item, the at least one control being used to control the execution of the editing task corresponding to the first description item.
7. The method according to claim 6, wherein the at least one control includes at least one of the following: A stop execution control; A re - execute control.
8. The method according to claim 5, wherein the multiple description items are sorted in the task panel based on at least one of the following: The execution status of each editing task, where the execution status includes: To be executed, executing, or execution failed; The creation time of each editing task; The execution order of each editing task.
9. The method according to claim 5, further comprising: In response to the second editing task among the multiple editing tasks being completed, updating a second description item corresponding to the second editing task; And After a second time period, stopping to display the second description item in the task panel.
10. The method according to claim 9, wherein: When the task panel is triggered to be displayed, the size of the task panel is determined based at least on the number of the multiple editing tasks; and With the task panel being kept displayed, the size of the task panel does not change due to the stopping of the display of the second description item.
11. The method according to claim 1, wherein creating the first editing task includes: Based on the editing request, creating a task instance corresponding to the first editing task to manage the execution of the first editing task, wherein the task instance is recycled in response to the completion of the execution of the first editing task.
12. The method according to claim 11, wherein creating a task instance corresponding to the first editing task includes: Invoking a service interface corresponding to the editing request to create the task instance by using an algorithm interface corresponding to the editing request.
13. The method according to claim 11, further comprising: Determining the priority of the first editing task based on the task type of the first editing task; and Determining the execution order of the first editing task in the task list based at least on the priority.
14. The method according to claim 13, wherein the task type includes: A first type, wherein the product of the editing task of the first type is indication information about an existing media file; or A second type, wherein the product of the editing task of the second type is a new media file, and wherein the priority corresponding to the second type is higher than that of the first type.
15. The method according to claim 13, wherein determining the execution order of the first editing task in the task list based at least on the priority includes: Determining a coupling relationship between the first editing task and at least one other editing task in the task list; and Determining the execution order of the first editing task in the task list based on the priority and the coupling relationship of the first editing task.
16. The method according to claim 15, wherein the coupling relationship includes at least one of the following: A first relationship indicating that the first editing task triggers the cancellation of the execution of the at least one other editing task; A second relationship indicating that the first editing task triggers the re - execution of the at least one other editing task; A third relationship indicating that the first editing task can be executed synchronously with at least one other editing task.
17. The method according to claim 1, wherein the task list includes a first set of editing tasks for the first media material and a second set of editing tasks for the second media material, and the first set of editing tasks and the second set of editing tasks can be executed in parallel.
18. A device for media editing, comprising: A first creation module configured to, in response to a first editing operation triggered for a first media material, create a first editing task corresponding to the first editing operation and add the first editing task to a task list; A second creation module configured to, when the first editing task has not been completed, in response to a second editing operation triggered for a second media material, create a second editing task corresponding to the second editing operation and add the second editing task to the task list; and A panel display module, configured to display a task panel based on a received preset operation, the task panel being used to display task information, the task information indicating the execution progress of a plurality of editing tasks in the task list, the plurality of editing tasks including the first editing task and the second editing task.
19. An electronic device, comprising: At least one processing unit; And At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to any one of claims 1 to 17.
20. A computer-readable storage medium having stored thereon a computer program, the computer program being executable by a processor to implement the method according to any one of claims 1 to 17.