Video generation method and electronic device
By automatically generating video data from electronic devices using a pre-made video service and processing it in the background, the problem of poor visual experience when users generate videos is solved, thus improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-10
- Publication Date
- 2026-03-31
AI Technical Summary
Users experience poor visual quality when generating videos from photos stored on their electronic devices, resulting in a subpar user experience.
By calling the video production service of the second application in the first application, video data is automatically generated and processed in the background. The user is unaware of the video data thumbnail and can then preview and save the video data.
It enhances the visual experience of user-generated videos, and by automating the generation process, it avoids the user-perceived process of traditional technologies, thereby improving user satisfaction.
Smart Images

Figure CN120343178B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technology, and more specifically, to a video generation method and an electronic device. Background Technology
[0002] With the rapid development of electronic devices, the services they offer to users (such as photo taking, video playback, and editing) are also increasing. Electronic devices can provide interactive interfaces, allowing users to select or input the services they need.
[0003] Currently, the camera function of electronic devices has become one of the most important functions. Users can take photos using electronic devices and store them on the device. In some scenarios, users want to generate a video from the photos stored on their devices for viewing. However, the process of generating videos from photos stored on electronic devices using traditional technologies suffers from poor visual experience, resulting in a poor user experience. Summary of the Invention
[0004] This application provides a video generation method and an electronic device, which can improve the user experience.
[0005] In a first aspect, this application provides a video generation method applied in an electronic device, the electronic device including a first application and a second application, the method comprising: displaying a first interface of the first application, wherein the first interface includes a first control and a first image set; in response to a trigger operation on the first control, after calling a video production service of the second application through the first application, displaying a second interface of the first application, wherein the video production service is used to obtain first video data generated based on the first image set, and the second interface includes a thumbnail of the first video data.
[0006] The first video data is video data generated based on the first image set; that is, the first video data is video data obtained by adding video effects to the first image set. For example, the first video data may include the video generated based on the first image set, the video cover, and the video duration.
[0007] In the above technical solution, after the user performs a trigger operation on the first control of the first interface of the first application, the first application can automatically call the video production service of the second application. This ensures that after the first application successfully calls the video production service of the second application, the second interface of the first application displayed on the electronic device includes a thumbnail of the first video data generated by the video production service of the second application. Since the step of acquiring the first video data is implemented by the video production service of the second application, this acquisition process is performed in the background of the electronic device, meaning the user is unaware of it. This method avoids the problem of poor user visual experience in traditional technologies, thus improving the user experience.
[0008] In one possible implementation, after displaying the second interface of the first application, the method further includes: in response to a triggering operation on a thumbnail of the first video data, sending the first video data to the second application through the first application; and after processing the first video data, the second application displays a third interface, wherein the third interface is a preview playback interface of the first video data.
[0009] The first application stores the first video data, which is video data obtained by the first application from the finished video service of the second application.
[0010] In the above technical solution, the second application located in the electronic device can restore the first video data obtained from the first application into data in a playback format supported by the second application (i.e., the third video data), and play and preview the parsing results corresponding to the third video data, so as to better meet the user's needs.
[0011] In another possible implementation, the electronic device further includes a third application different from the first application, and the method further includes: displaying a fourth interface of the third application, wherein the fourth interface includes a second control and a second image set; and, in response to a triggering operation on the second control, displaying a fifth interface of the third application after calling a video production service through the third application, wherein the video production service is further used to obtain second video data generated based on the second image set, and the fifth interface includes a thumbnail of the second video data.
[0012] The second video data is video data generated based on the second set of images; that is, the second video data is video data obtained by adding video effects to the second set of images.
[0013] In the above technical solution, the third application can also call the finished video service of the second application, thereby displaying the second video data obtained by the finished video service on the interface of the third application. This can meet the user's need to call the finished video service through the interface of different applications, thereby improving the user experience.
[0014] In another possible implementation, the electronic device further includes a media processing module, and, in response to a trigger operation on the first control, displays a second interface of the first application after calling the video production service of the second application through the first application. This includes: in response to the trigger operation on the first control, the first application sends a first video production instruction to the media processing module, wherein the first video production instruction carries a first set of images; the media processing module determines a theme matching the first set of images based on the first set of images carried by the first video production instruction, and sends the first set of images and the theme to the video production service, so that the video production service sends first video data to the media processing module; after receiving the first video data, the media processing module sends the first video data to the first application; after receiving the first video data, the first application displays the second interface.
[0015] In the above technical solution, the first application calls the final video service of the second application through the media processing module, so that the first application can display the first video data generated based on the first image set obtained by the final video service. Since the process of the final video service obtaining the first video data is executed in the background, the user is unaware of this process, thereby improving the user experience.
[0016] In another possible implementation, the second application further includes a finalization pipeline module, and a media processing module sending a first image set and a theme to a finalization service, causing the finalization service to send first video data to the media processing module. This includes: the media processing module sending the first image set and the theme to the finalization service; the finalization service sending a second finalization instruction to the finalization pipeline module, wherein the second finalization instruction carries the first image set and the theme; the finalization pipeline module performing finalization processing based on the first image set and the theme to obtain third video data, wherein the format of the third video data is different from the format of the first video data; the finalization pipeline module sending the third video data to the finalization service; and the finalization service converting the third video data into first video data and sending the first video data to the media processing module.
[0017] In the above-mentioned video production pipeline module, the step of processing the first image set and the theme to obtain the third video data can, for example, include: the video production pipeline module processes the first image set and the theme according to multiple preset processing nodes to obtain the third video data, wherein the multiple preset processing nodes may include video template material nodes, template matching nodes according to the theme, template material parsing nodes, music rhythm parsing nodes, music use and beat matching nodes, special effects use nodes, and cover generation nodes.
[0018] The aforementioned preset processing nodes are pre-configured. Each preset processing node is used to execute a preset process for its corresponding function. For example, taking the theme matching template node as an example, the theme matching template node is used to execute the process of matching video templates for a target theme to obtain a video template that matches the target theme.
[0019] In another possible implementation, the second application further includes a one-click blockbuster component, a restoration pipeline module, and a video playback module. In response to a trigger operation on the thumbnail of the first video, the first application sends first video data to the second application, including: in response to the trigger operation on the thumbnail of the first video, the first application sends the first video data to the one-click blockbuster component; the second application processes the first video data and displays a third interface, including: the one-click blockbuster component converts the first video data into third video data, wherein the formats of the first video data and the third video data are different; the one-click blockbuster component sends a restoration command to the restoration pipeline module, wherein the restoration command carries the third video data; the restoration pipeline module parses the third video data carried by the restoration command and sends the parsing result to the video playback module; in response to the video playback module loading the parsing result, the video playback module displays the third interface.
[0020] In another possible implementation, the first application is a voice application, and the second application is an editing application.
[0021] In a second aspect, this application provides a video generation apparatus, which is applied in an electronic device and is used to perform any of the methods in the first aspect.
[0022] Thirdly, an electronic device is provided, including a unit for performing any of the methods in the first aspect. The device may be a terminal device or a chip within a terminal device. The device may include an input unit and a processing unit.
[0023] When the device is a terminal device, the processing unit may be a processor, and the input unit may be a communication interface; the terminal device may also include a memory for storing computer program code, which, when the processor executes the computer program code stored in the memory, causes the terminal device to execute any of the video generation methods in the first aspect.
[0024] When the device is a chip within a terminal device, the processing unit can be an internal processing unit of the chip, and the input unit can be an output interface, pin, or circuit, etc.; the chip may also include a memory, which can be an internal memory of the chip (e.g., registers, cache, etc.) or an external memory (e.g., read-only memory, random access memory, etc.); the memory is used to store computer program code, and when the processor executes the computer program code stored in the memory, the chip executes any of the video generation methods in the first aspect.
[0025] In one possible implementation, the memory is used to store computer program code; the processor executes the computer program code stored in the memory, and when the computer program code stored in the memory is executed, the processor is used to execute any of the video generation methods in the first aspect.
[0026] Fourthly, a computer-readable storage medium is provided, the computer-readable storage medium storing computer program code, which, when executed by an electronic device, causes the electronic device to perform any of the video generation methods in the first aspect.
[0027] Fifthly, a computer program product is provided, the computer program product comprising: computer program code, which, when executed by an electronic device, causes the electronic device to perform any of the video generation methods described in the first aspect.
[0028] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.
[0029] It should be understood that the descriptions of technical features, technical solutions, beneficial effects, or similar language in this application do not imply that all features and advantages can be achieved in any single embodiment. Rather, it is understood that the description of a feature or beneficial effect means that a specific technical feature, technical solution, or beneficial effect is included in at least one embodiment. Therefore, the descriptions of technical features, technical solutions, or beneficial effects in this specification do not necessarily refer to the same embodiment. Furthermore, the technical features, technical solutions, and beneficial effects described in this embodiment can be combined in any suitable manner. Those skilled in the art will understand that embodiments can be implemented without one or more specific technical features, technical solutions, or beneficial effects of a particular embodiment. In other embodiments, additional technical features and beneficial effects may be identified in specific embodiments that do not embody all embodiments. Attached Figure Description
[0030] Figure 1 This is a schematic diagram of the hardware system of the electronic device 100 provided in the embodiments of this application.
[0031] Figure 2 This is a schematic diagram of the software system of the electronic device 100 provided in the embodiments of this application.
[0032] Figure 3 This is a schematic diagram of a system architecture applicable to the video generation method provided in the embodiments of this application.
[0033] Figure 4 This is a schematic diagram of a user interface provided in an embodiment of this application.
[0034] Figure 5 This is a schematic diagram of a video generation method provided in an embodiment of this application.
[0035] Figure 6 This is a schematic diagram of a user interface provided in an embodiment of this application.
[0036] Figure 7 This is a schematic diagram of a video playback method provided in an embodiment of this application.
[0037] Figure 8 This is a schematic diagram of a video generation method provided in an embodiment of this application. Detailed Implementation
[0038] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0039] To better understand the technical solutions provided in this application, the relevant terms involved in the embodiments of this application will first be introduced.
[0040] Activity
[0041] An activity is an application component; specifically, it's a component responsible for interacting with the user. In Android, an activity is typically a single user interface (also called a screen) that displays controls and listens for and handles user events (such as touch events) and responds accordingly. Activities communicate with each other through intents (a messaging mechanism).
[0042] The technical solution provided in this application will now be described in detail.
[0043] The camera hardware testing method provided in this application can be applied to electronic devices. The hardware and software structures of the electronic devices will now be described in detail with reference to the accompanying drawings.
[0044] Figure 1 This is a schematic diagram of the hardware system of the electronic device 100 provided in the embodiments of this application.
[0045] The type of electronic device 100 is not specifically limited and can be selected according to the actual scenario. For example, electronic device 100 can be a mobile phone, smart screen, tablet computer, wearable electronic device, in-vehicle electronic device, augmented reality (AR) device, virtual reality (VR) device, laptop computer, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), projector, in-vehicle equipment, etc. This application embodiment does not impose any restrictions on the specific type of electronic device 100.
[0046] Electronic device 100 may include processor 110, external memory interface 120, internal memory 121, universal serial bus (USB) interface 130, charging management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0047] It should be noted that, Figure 1 The structure shown does not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include... Figure 1 The components shown may include more or fewer components, or the electronic device 100 may include... Figure 1The components shown may be a combination of certain components, or the electronic device 100 may include... Figure 1 Sub-components of some of the components shown. Figure 1 The components shown can be implemented in hardware, software, or a combination of software and hardware.
[0048] Processor 110 may include one or more processing units. For example, processor 110 may include at least one of the following processing units: application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, video codec, digital signal processor (DSP), baseband processor, and neural network processing unit (NPU). These different processing units may be independent devices or integrated devices.
[0049] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0050] The processor 110 may also include a memory for storing instructions and data. For example, the processor 110 may store instructions for executing the camera hardware testing method provided in the embodiments of this application. For example, the processor 110 may store data obtained from executing the camera hardware testing method provided in the embodiments of this application. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or is reusing. If the processor 110 needs to reuse the instruction or data, it can directly retrieve it from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system. In some embodiments, the processor 110 may include one or more interfaces. For example, processor 110 may include at least one of the following interfaces: an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a SIM interface, and a USB interface.
[0051] Figure 1 The connection relationships between the modules shown are merely illustrative and do not constitute a limitation on the connection relationships between the modules of the electronic device 100. Optionally, the modules of the electronic device 100 may also adopt a combination of various connection methods described in the above embodiments.
[0052] Electronic device 100 can implement display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0053] Display screen 194 can be used to display images or videos. For example, display screen 194 can display images or videos captured by a camera application of an electronic device. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a mini light-emitting diode (Mini LED), a micro light-emitting diode (Micro LED), a micro OLED (Micro OLED), or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N displays screens 194, where N is a positive integer greater than 1.
[0054] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display screen 194 and application processor.
[0055] The ISP (Image Signal Processor) is used to process data fed back from the camera 193. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, transforming it into an image visible to the naked eye. The ISP can perform algorithmic optimization of image noise, brightness, and color. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be set in the camera 193.
[0056] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into a standard red-green-blue (RGB), YUV, or other image signal format. In some embodiments, the electronic device 100 may include one or N cameras 193, where N is a positive integer greater than 1.
[0057] The external memory interface 120 can be used to connect an external memory card, such as a secure digital (SD) card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to perform data storage.
[0058] Internal memory 121 can be used to store computer executable program code, which includes instructions. For example, internal memory 121 can store instructions for executing the camera hardware testing method provided in the embodiments of this application. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store an operating system and an application program required for at least one function (e.g., sound playback function and image playback function). The data storage area may store data created during the use of electronic device 100 (e.g., audio data and phonebook). In addition, internal memory 121 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, and universal flash storage (UFS). Processor 110 executes various processing methods of electronic device 100 by running instructions stored in internal memory 121 and / or instructions stored in memory disposed in the processor.
[0059] The gyroscope sensor 180B can be used to determine the motion attitude of the electronic device 100. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the electronic device 100 around three axes (i.e., the x-axis, y-axis, and z-axis). The gyroscope sensor 180B can be used for image stabilization. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the shake of the electronic device 100, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to counteract the shake of the electronic device 100 by moving in the opposite direction, thus achieving image stabilization. The gyroscope sensor 180B can also be used in scenarios such as navigation and motion-sensing games.
[0060] The distance sensor 180F is used to measure distance. The electronic device 100 can measure distance using infrared or laser. In some embodiments, such as in a shooting scenario, the electronic device 100 can utilize the distance sensor 180F for distance measurement to achieve fast focusing. For example, the distance sensor 180F can be, but is not limited to, a TOF sensor.
[0061] Touch sensor 180K, also known as a touch device, can be disposed on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a touch screen. Touch sensor 180K is used to detect touch operations applied to or near it. Touch sensor 180K can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K may also be disposed on the surface of electronic device 100, and in a different location from display screen 194.
[0062] Motor 191 can generate vibration. In some implementations, motor 191 can be a camera autofocus motor (AF). Camera AF is used to adjust the lens focus to make the subject sharp and clear. It can drive the lens components to adjust back and forth according to the user's manual operation or the instructions of the autofocus system. Camera AF is usually driven by the camera's internal electronic control system or motor, which precisely controls the movement of each lens component according to the user's operation or the instructions of the automatic control algorithm to achieve the shooting requirements and desired shooting effect. In other implementations, motor 191 can be used for incoming call notifications or for touch feedback. Motor 191 can produce different vibration feedback effects for touch operations applied to different applications. Motor 191 can also produce different vibration feedback effects for touch operations applied to different areas of display screen 194. Different application scenarios (e.g., time reminders, receiving messages, alarm clocks, and games) can correspond to different vibration feedback effects. The touch vibration feedback effect can also be customized.
[0063] The hardware system of electronic device 100 has been described in detail above. The software system of electronic device 100 is described below. The software system can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment takes a layered architecture as an example to exemplarily describe the software system of electronic device 100.
[0064] For example, Figure 2 This is a schematic diagram of the software system of the electronic device 100 provided in an embodiment of this application. See also... Figure 2 The software system adopts a layered architecture. This layered architecture divides the software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into five layers, from top to bottom: the application layer 210, the application framework layer 220, the Android Runtime and core library layer 230, the hardware abstraction layer (HAL) 240, and the kernel layer 250.
[0065] Application layer 210 may include a series of application packages. For example, application packages may include applications such as voice assistant, video editing, camera, gallery, chat, calling, map, navigation, calendar, Bluetooth, music, and video.
[0066] The applications mentioned above can include more specific functional modules. For example, a gallery can include business modules and notification modules. A camera can include a photo-taking module.
[0067] The aforementioned applications can be used to generate application data; for example, the gallery can be used to generate photo data.
[0068] The application framework layer 220 provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The application framework layer 220 includes some predefined functions.
[0069] like Figure 2 As shown, the application framework layer 220 may include a window manager, notification manager, activity manager, input manager, view system, content provider, resource manager, etc.
[0070] The window manager provides a window management service (WMS), which can be used for window management, window animation management, surface management, and as a relay station for the input system.
[0071] Content providers store and retrieve data, making that data accessible to applications. This data can include videos, images, audio, phone calls made and received, browsing history and bookmarks, phone books, etc.
[0072] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text message notification icon can include views for displaying text and views for displaying images. For example, a display interface can be, but is not limited to, […]. Figure 4 or Figure 6 The user interface shown.
[0073] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and so on.
[0074] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.
[0075] The Activity Manager Service (AMS) can be used to start, switch, and schedule system components (such as activities, services, content providers, and broadcast receivers), as well as manage and schedule application processes.
[0076] The input manager can provide an input management service (IMS), which can be used to manage system inputs, such as touchscreen input, keypad input, and sensor input. IMS retrieves events from input device nodes and, through interaction with the WMS, distributes these events to the appropriate windows.
[0077] The Android Runtime consists of core libraries and a virtual machine. The Android Runtime is responsible for scheduling and managing the Android system.
[0078] The core library consists of two parts: one part is the functionalities that need to be called by programming languages (e.g., Java), and the other part is the Android core library.
[0079] Application layer 210 and application framework layer 220 run in a virtual machine. The virtual machine executes the programming files (e.g., Java files) of application layer 210 and application framework layer 220 as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.
[0080] The core library layer 230 can include multiple functional modules. For example: surface manager, media framework, libc, SQLite, OpenGL ES, Webkit, etc.
[0081] The Surface Manager is used to manage the display subsystem and provides the fusion of two-dimensional (2D) and three-dimensional (3D) layers for multiple applications.
[0082] The media framework supports playback and recording of various commonly used audio and video formats, as well as still image files.
[0083] libc (the C library) is the standard library for the C programming language. libc is one of the lowest-level libraries in the system, implemented through Linux system calls. For example, libc can be used to connect or disconnect camera services, set camera shooting parameters, start and stop previewing, and take photos.
[0084] The Hardware Abstraction Layer (HAL) is an interface layer located between the operating system kernel and upper-level software, designed to abstract hardware. The HAL is an abstract interface for device kernel drivers, providing application programming interfaces (APIs) that allow access to the underlying device to higher-level Java API frameworks. The HAL contains multiple library modules, such as the Camera HAL (e.g., aperture, TOF sensor, lens, or focus motor), the Vendor repository, the display, Bluetooth, and audio. Each library module implements an interface for a specific type of hardware component. For example, the Camera HAL provides the camera firmware (FWK) with an interface to access hardware components like the camera lens. The Vendor repository provides the media firmware (FWK) with an interface to access hardware components like the encoder. When the system framework layer API requires access to the portable device's hardware, the Android operating system loads the library module for that hardware component.
[0085] The kernel layer 250 is the foundation of the Android operating system; all the final functions of the Android operating system are implemented through the kernel layer. The kernel layer can contain display drivers, camera drivers, audio drivers, and sensor drivers.
[0086] It should be noted that the application provided Figure 2 The illustrated software architecture diagram of the electronic device is merely an example and does not limit the specific module divisions within different layers of the Android operating system. For details, please refer to the descriptions of the Android operating system software architecture in conventional technologies. Furthermore, the shooting method provided in this application can also be implemented based on other operating systems (e.g., iOS or HarmonyOS), which will not be listed here.
[0087] Figure 3 This is a schematic diagram of a system architecture applicable to the video generation method provided in the embodiments of this application. For example... Figure 3 As shown, the system architecture includes a voice assistant 310, a media processing platform 320, and an editing application 330. It is understandable that, based on... Figure 3 The system architecture shown can execute the video generation method and the video playback method provided in the embodiments of this application.
[0088] Below, we will introduce based on Figure 3 The system architecture shown executes the video generation method provided in the embodiments of this application.
[0089] The voice assistant 310 is used to: respond to a user's triggering operation of the video generation control in the dialogue interface of the voice assistant 310, send a final video command 1 (carrying image materials) to the media processing platform 320, wherein the final video command 1 is used to request the acquisition of a video generated based on the image materials. The final video command 1 will trigger the media processing platform 320 to send the image materials and a theme matching the image materials to the automatic final video service 331 located in the editing application 330.
[0090] The name of the voice assistant 310 is not specifically limited; for example, voice assistant 310 can be, but is not limited to, YOYO voice assistant. For example, the dialogue interface of voice assistant 310 can be... Figure 4 The intelligent video production interface S4A shown in Figure (1) can be the control 420 in the intelligent video production interface S4A.
[0091] The media processing platform 320 includes a material selection module 321, a theme generation module 322, and an automatic video production service toolkit 323. The material selection module 321 filters image materials obtained from the voice assistant 310 to obtain filtered image materials. The material selection module 321 also performs aesthetic scoring and other processing on the image materials. The filtered image materials are not specifically limited; for example, they can include some or all of the images in the original image materials. For instance, filtered image materials can include highlight images from the image materials carried by the video production command. The theme generation module 322 determines a matching theme for the filtered image materials obtained from the material selection module 321. For example, the theme generation module 322 stores different themes, each corresponding to a different visual style. Based on this, after obtaining the filtered image materials, the theme generation module 322 can select a theme from multiple different themes that matches the filtered image materials. The automatic video production service toolkit 323 is bound to the automatic video production service 331 in the editing application 330. The Automatic Film Generation Service Toolkit is used to call the Automatic Film Generation Service 331 in the editing application 330.
[0092] The editing application 330 includes an automatic video creation service 331, a video creation pipeline module 332, a one-click blockbuster activity component 333, a video restoration pipeline module 334, and a video playback module 335. The automatic video creation service 331 sends a video creation instruction 2 to the video creation pipeline module 332. This instruction carries filtered image materials and a theme that matches the filtered image materials. The video creation pipeline module 332 processes the filtered image materials and the matching theme to obtain video data 1. The data format of video data 1 differs from that of the final video draft. The data structure of video data 1 conforms to the internal video data structure of the editing application. For example, the final video draft could be in JSON string format. The video creation pipeline module 332 then sends the obtained video data 1 to the automatic video creation service 331, which converts the obtained video data 1 into a final video draft. Subsequently, the automatic film production service toolkit 323 in the media processing platform 320 returns the finished film draft obtained by the automatic film production service 331 to the voice assistant 310.
[0093] Below, we will introduce based on Figure 3 The system architecture shown executes the video playback method provided in the embodiments of this application.
[0094] The voice assistant 310 is also used to: in response to a user's trigger operation on a video in the dialogue interface of the voice assistant 310, send a final draft to the editing application 330 so that the editing application 330 can play the video corresponding to the final draft. The final draft saved in the voice assistant 310 is generated by the automatic finalization service 331. The one-click blockbuster activity component 333 is used to obtain the final draft from the voice assistant 310 and restore the final draft to video data 1. The data structure of video data 1 is the video data structure within the editing application. Then, the one-click blockbuster activity component 333 sends video data 1 to the video restoration pipeline module 334. The video restoration pipeline module 334 performs restoration processing on video data 1 and sends the restoration result to the video playback module 335. In response to the video playback module 335 loading the restoration result obtained in the aforementioned steps, the video playback module 335 displays a preview interface for playing the restoration result. For example, the preview interface could be... Figure 4 The interface S4B shown in (2) of the figure.
[0095] It should be understood that the above Figure 3 The system architecture illustrated in the embodiments of this application for video generation is merely illustrative and does not constitute any limitation. For example, the above... Figure 3 The illustrated editing application 330 may also include an editing module for adding text, etc., to the generated video based on parameters input by the user. For example, the aforementioned video restoration pipeline module 334 and finished product pipeline module 332 may also be a single module unit.
[0096] Next, combined Figures 5 to 8 The video generation method provided in the embodiments of this application will be described in detail.
[0097] Figure 5 This is a schematic diagram illustrating a video generation method provided in an embodiment of this application. The video generation method provided in this embodiment can be executed by an electronic device. It is understood that the electronic device can be implemented as software, or a combination of software and hardware. For example, the electronic device in this embodiment can be, but is not limited to, […]. Figure 1 The electronic device 100 is shown. (For example...) Figure 5 As shown, the video generation method provided in this application includes steps S500 to S515. Steps S500 to S515 will be described in detail below.
[0098] S500, YOYO Smart Assistant display interface 1 of the terminal device, wherein interface 1 includes target image material and video generation control.
[0099] There is no specific limit to the number of target image materials. For example, the number of target image materials can be, but is not limited to, 10, 20, or 30.
[0100] The video generator control is used to trigger the electronic device to generate a video based on the target image material included in Interface 1.
[0101] The method for displaying the YOYO Smart Assistant interface 1 is not specifically limited. For example, the YOYO Smart Assistant display interface 1 includes: after the user performs the operation of opening the YOYO Smart Assistant, the YOYO Smart Assistant displays a dialogue interface; after the user enters a command to obtain image materials in the dialogue interface, the YOYO Smart Assistant displays interface 1.
[0102] For example, interface 1 in S500 above can be Figure 6 The image shown is the S6 smart interface provided by the YOYO Smart Assistant on the mobile phone. Please refer to [link / reference]. Figure 6 The text box 600 includes multiple image materials and a video generation control 610.
[0103] S501, in response to the user's trigger operation on the video generation control, the YOYO Smart Assistant sends a video completion instruction 1 to the media processing platform of the terminal device. Correspondingly, the media processing platform receives the video completion instruction 1 (carrying the target image material) sent by the YOYO Smart Assistant.
[0104] The "Complete Video Command 1" is used to request the acquisition of a video generated based on the target image material, where the "Complete Video Command 1" includes the target image material.
[0105] Thus, after receiving the user's trigger operation on the video generation control in interface 1, the YOYO Smart Assistant can send the finished video instruction 1 to the media processing platform as the caller. After that, the media processing platform can obtain the finished video instruction 1.
[0106] S502, the media processing platform sends an initialization message to the automatic video editing service of the editing application. Correspondingly, the automatic video editing service receives the initialization message sent by the media processing platform.
[0107] The media processing platform integrates an automatic video creation service kit. The purpose of the media processing platform sending an initialization message to the automatic video creation service in the editing application is to bind the automatic video creation service kit located in the media processing platform with the automatic video creation service in the editing application.
[0108] Automatic video editing service is a service component within video editing applications. It is also known as a lightweight editing service.
[0109] S503, the automatic video assembly service sends an initialization success message to the media processing center. Correspondingly, the media processing center receives the initialization success message from the automatic video assembly service.
[0110] The initialization success message indicates that the automatic video creation service toolkit in the media processing platform and the automatic video creation service in the editing application have been successfully bound.
[0111] The steps S502 and S503 described above are optional. For example, in one example, if the automatic video creation service toolkit in the media processing platform and the automatic video creation service in the editing application have been successfully bound before executing the embodiments of this application, in this case, S502 and S503 may not be executed after executing S501.
[0112] S504, the media processing platform obtains the target theme that matches the target image material based on the finished product instruction 1.
[0113] In one example, the media processing platform obtains a target theme that matches the target image material based on the target image material carried by the finished product instruction 1. For example, this may include the following steps: the media processing platform selects a target theme that matches the target image material from multiple themes based on the target image material carried by the finished product instruction 1.
[0114] The target image materials match the target theme, but there are no specific limitations on the target image materials and the matching target theme. For example, if the target image materials include multiple portraits of people, the target theme could be "people". Similarly, if the target image materials include multiple images of buildings, the target theme could be "architecture". And if the target image materials include multiple images of tourist attractions, the target theme could be "landscape".
[0115] S505, the media processing platform sends the target image material and target theme associated with the finalization instruction 1 to the automatic finalization service. Correspondingly, the automatic finalization service receives the target image material and target theme associated with the finalization instruction 1 sent by the media processing platform.
[0116] Thus, after the media processing platform receives the final video instruction 1 and initializes the automatic final video service of the editing application, it can send the target image material and target theme associated with the final video instruction 1 to the automatic final video service of the editing application, so that the automatic final video service in the editing application can generate the corresponding video based on the target image material and target theme.
[0117] S506, the automatic video editing service sends video editing instruction 2 (carrying the target image material and target theme) to the video editing pipeline module of the editing application. Correspondingly, the video editing pipeline module receives video editing instruction 2 sent by the automatic video editing service.
[0118] S507, the finished product pipeline module sends an analysis command (carrying the target image material) to the media processing platform. Correspondingly, the media processing platform receives the analysis command sent by the finished product pipeline module.
[0119] The analysis command is used to extract highlight images from a target image. These highlight images can be a portion or all of the images in the target image; there is no specific limitation. For example, a portrait of people included in the target image can be identified as a highlight image. Similarly, a group photo of multiple people included in the target image can be identified as a highlight image.
[0120] S508, the media processing platform filters and processes the target image materials to obtain analysis results, including highlight image materials from the target image materials.
[0121] S509, the media processing platform sends the analysis results to the final production pipeline module. Correspondingly, the final production pipeline module receives the analysis results sent by the media processing platform.
[0122] It should be noted that steps S507 to S509 above are optional. That is, in some implementations, after executing S501 to S506 above, steps S510 to S515 can be executed directly. In this case, the highlight image materials in S510 to S515 below need to be replaced with the target image material.
[0123] S510, the finished product pipeline module, based on multiple preset processing nodes, performs finished product processing on highlight image materials and target themes to generate video data1 that conforms to the video data structure inside the editing application. Among them, video data1 includes highlight image materials, music, filters, transitions, video duration and video cover information.
[0124] Video data 1 is video data that conforms to the internal video data structure of the editing application, which can be called a "TemplateModel". It is understandable that other applications on the terminal device besides this editing application cannot parse video data 1 that conforms to the internal video data structure of the editing application, nor can they preview and play the video based on the parsed content.
[0125] Video duration refers to the length of time corresponding to video data 1. Video cover information may include an image of the video cover.
[0126] Multiple preset processing nodes can include video template material nodes, theme matching template nodes, template material parsing nodes, music rhythm parsing nodes, music use and beat matching nodes, special effects nodes, and cover generation nodes.
[0127] Each of the multiple preset processing nodes is used to execute a preset process for the function corresponding to that preset processing node. For example, taking the theme matching template node as an example, the theme matching template node is used to execute the process of matching video templates for a target theme, so as to obtain a video template that matches the target theme.
[0128] Optionally, before the finalized pipeline module executes S510, it can generate multiple preset processing nodes based on the configuration file. There are no specific limitations on how the finalized pipeline module obtains the configuration file; for example, the configuration file can be a predefined file stored within the finalized pipeline module.
[0129] The above description of S510 uses video data 1, which includes highlight image material, music, filters, transitions, and video duration, as an example. The content of video data 1 in S510 is for illustrative purposes only and does not constitute any limitation. Optionally, the above video data 1 may also include only highlight image material, transitions, video duration, and video cover information.
[0130] Thus, after acquiring the target image material and target theme, the finalized video pipeline module, through interaction with the media processing platform, can obtain the highlight images from the target image material. Subsequently, based on multiple preset processing nodes, the finalized video pipeline module processes the highlight segments and target theme to generate video data conforming to the internal data format of the editing application.
[0131] S511, the finalization pipeline module sends video data 1 to the automatic finalization service. Correspondingly, the automatic finalization service receives video data 1 sent by the finalization pipeline module.
[0132] S512, the automatic video production service converts video data 1 into a JSON string to obtain a draft of the final video.
[0133] The difference between the final draft and the video data 1 lies in their data formats. For example, the final draft includes highlight image materials, music, filters, transitions, video duration, and video cover information.
[0134] The method for the automatic video generation service to convert video data 1 into a JSON string to obtain a draft video is not specifically limited. For example, it can be based on existing data conversion methods.
[0135] It should be understood that video data 1 is only for internal use within the editing application; that is, video data 1 cannot be accessed by third-party applications. However, the final draft obtained after converting video data 1 can be provided to third-party applications. For example, third-party applications can be, but are not limited to, the YOYO smart assistant on the terminal device.
[0136] S513, the automatic video production service sends the final video draft to the media processing platform. Correspondingly, the media processing platform receives the final video draft sent by the automatic video production service.
[0137] S514, the media processing platform sends the final draft to the YOYO Smart Assistant. Correspondingly, the YOYO Smart Assistant receives the final draft sent by the media processing platform.
[0138] It should be noted that in the above implementation process, YOYO Smart Assistant calls the video data generated by the automatic video editing service in the editing application through the media processing platform. Since this implementation process is based on the service (i.e., the automatic video editing service), the above implementation process is executed in the background of the terminal device, and the user is unaware of the above implementation process.
[0139] S515, YOYO Smart Assistant loads the final draft and displays an interface 2 that includes the video cover information and video duration from the final draft.
[0140] Optionally, interface 2 may also include other information, without specific limitations. For example, other information may include, but is not limited to, at least one of the following: target image material, generated video control, or text dialogue information.
[0141] For example, interface 2 in S514 above could be Figure 4 The intelligent video interface S4A shown in (1) above, the video cover information and video duration in the video draft in S514 can be the video cover and video duration displayed in the text box 410 in the intelligent video interface S4A. The intelligent video interface S4A also displays text 400 and thumbnails of image materials.
[0142] It should be understood that after YOYO Smart Assistant executes the above S515, the corresponding storage space of YOYO Smart Assistant stores a large number of drafts.
[0143] It should be understood that the above Figure 6 The video generation method shown is for illustrative purposes only and does not constitute any limitation on the video generation method provided in this application.
[0144] In this embodiment, after the user triggers the video generation control on the YOYO Smart Assistant's interface 1, the YOYO Smart Assistant can automatically call the automatic video generation service of the editing application. After the YOYO Smart Assistant successfully calls the automatic video generation service, the YOYO Smart Assistant's interface 2 displayed on the electronic device includes a thumbnail of the final draft generated by the automatic video generation service. Since the step of obtaining the final draft is implemented by the automatic video generation service of the editing application, this process is performed in the background of the electronic device, meaning the user is unaware of it. This method avoids the problem of poor user visual experience in traditional technologies, thus improving the user experience.
[0145] The above text combined Figure 5 This application introduces a video generation method provided by an embodiment. Below, with reference to the accompanying drawings, it is described how the YOYO Smart Assistant provided by this application plays the aforementioned video. Figure 5 The provided video generation method generates a final draft of the video.
[0146] Figure 7 This is a schematic diagram illustrating a video playback method provided in an embodiment of this application. The video playback method provided in this embodiment can be executed by an electronic device. It is understood that the electronic device can be implemented as software, or a combination of software and hardware. For example, the electronic device in this embodiment can be, but is not limited to, […]. Figure 1 The electronic device 100 is shown. (For example...) Figure 7 As shown, the video playback method provided in this application includes steps S701 to S709. Steps S701 to S709 will be described in detail below. It should be understood that... Figure 7 The methods S701 to S709 shown can be implemented as described above. Figure 5 The methods shown are executed after S500 to S515.
[0147] S701, the user clicks on the video cover in interface 2.
[0148] Optionally, interface 2 also includes a video playback control, and the above S701 can be replaced by the following step: the user clicks the video playback control in interface 2. For example, taking interface 2 as... Figure 4 Taking the Smart Film Interface S4A shown in Figure (1) as an example, the video playback control is control 420 in the Smart Film Interface S4A.
[0149] S702, in response to the user clicking on the video cover in interface 2, YOYO Smart Assistant retrieves the final draft from the storage space corresponding to YOYO Smart Assistant.
[0150] As mentioned above Figure 5The provided video method allows YOYO Assistant to store the resulting draft video. Therefore, YOYO Assistant can retrieve the draft video from its corresponding storage space.
[0151] S703, YOYO Smart Assistant sends a draft of the final video to the One-Click Blockbuster activity component of the editing application. Correspondingly, the One-Click Blockbuster activity component receives the draft video sent by YOYO Smart Assistant.
[0152] S704, the One-Click Blockbuster Activity component sends an initialization message to the video player of the editing application.
[0153] Initialization messages are used to initialize the video player. For example, initializing the video player's buttons, etc.
[0154] S705, the One-Click Blockbuster Activity Component converts the final draft into video data that conforms to the video data structure inside the editing application, resulting in video data 1.
[0155] As mentioned earlier, the final draft is a JSON string of data, while video data 1 is video data that conforms to the internal video data structure of the editing application. The data format of the final draft is different from that of video data 1.
[0156] The process of converting the final draft into video data using the one-click blockbuster event component is similar to the previous text. Figure 5 The automatic video rendering service in the provided video method S512 converts video data 1 into a finished video draft through two inverse processes.
[0157] Thus, when the user clicks on the video cover of interface 2, the YOYO Smart Assistant, as the caller, launches the One-Click Blockbuster activity component in the editing application and passes the final draft (in JSON string format) to the editor via an Intent. After the One-Click Blockbuster activity component initializes the video playback module in the editing application, it restores the final draft to video data 1 (the video data structure inside the editing application).
[0158] S706, the One-Click Blockbuster Activity Component sends a restore command (carrying video data 1) to the restore video pipeline module of the editing application.
[0159] The restore command is used to instruct the content of video data 1 to be restored.
[0160] Restoring the video pipeline module and the above Figure 6 The illustrated pipeline modules can be the same module or different modules, without specific limitations.
[0161] S707, the video restoration pipeline module performs data restoration processing on video data 1 to obtain the restored result, which includes highlight image material, music, filters, transitions and video duration.
[0162] S708, the video restoration pipeline module sends a playback command (carrying the restored result) to the video playback module of the editing application.
[0163] S709, in response to receiving a playback command, the video playback module plays the restored result in the preview interface.
[0164] For example, the preview interface mentioned above could be Figure 4 The interface S4B shown in (2) of the figure.
[0165] It should be understood that the above Figure 7 The video generation method shown is for illustrative purposes only and does not constitute any limitation on the video generation method provided in this application.
[0166] In this embodiment, after the user clicks on the video cover in interface 2, the editing application located in the electronic device can restore the final draft obtained from YOYO Smart Assistant to a playback format supported by the editing application, and preview the content after restoring the final draft to better meet the user's needs.
[0167] Figure 8 This is a schematic diagram illustrating a video generation method provided in an embodiment of this application. The video generation method provided in this embodiment can be executed by an electronic device. It is understood that the electronic device can be implemented as software, or a combination of software and hardware. For example, the electronic device in this embodiment can be, but is not limited to, […]. Figure 1 The illustrated electronic device 100. An electronic device performing the video generation method provided in the embodiments of this application may include a first application and a second application. For example... Figure 8 As shown, the video generation method provided in this application embodiment includes S810 and S820. S810 and S820 will be described below.
[0168] S810, the electronic device displays a first interface of a first application, wherein the first interface includes a first control and a first set of images.
[0169] The electronic device executing the video generation method provided in the embodiments of this application includes a first application and a second application, and the names of the first application and the second application are not specifically limited. In one example, the first application is a voice application and the second application is an editing application.
[0170] The first interface includes a first control and a first image set, where the images can be photos stored in the electronic device's gallery. Optionally, the first interface may also include other content besides the first control and the first image set; there are no specific limitations on this other content, which may include, but is not limited to, text information.
[0171] For example, the first interface can be like Figure 6 The intelligent integrated interface S6 shown here can be found in [link to relevant documentation]. Figure 6 The text box 600 in the intelligent video interface S6 includes multiple image materials and a video generation control 610.
[0172] For example, the electronic device in S810 described above can be the one described above. Figure 5 The terminal device shown, the first application in S810 described above can be the aforementioned Figure 5 The YOYO smart assistant shown above, the second application in S810 mentioned above can be the aforementioned Figure 5 The editing application shown above, the first interface in S810 can be the one described above. Figure 5 Interface 1 shown.
[0173] S820, in response to the triggering operation of the first control, after the electronic device calls the video service of the second application through the first application, the electronic device displays the second interface of the first application, wherein the video service is used to obtain the first video data generated based on the first image set, and the second interface includes a thumbnail of the first video data.
[0174] The first video data is video data generated based on the first image set; that is, the first video data is video data obtained by adding video effects to the first image set. The content included in the first video data is not specifically limited. For example, the first video data may include the video generated based on the first image set, the video cover, and the video duration.
[0175] The second interface includes thumbnails of the first video data. For example, the thumbnails of the first video data could be like this: Figure 4 The thumbnail shown in text box 410 of the intelligent video processing interface S4A illustrated in (1) is shown in the figure. Optionally, the duration of the first video data can also be displayed on the thumbnail of the first video data. Optionally, the second interface can also include other information besides the thumbnail of the first video data, without specific limitations on the other information. For example, the other information can be, but is not limited to, the first image set.
[0176] In the above S820, in response to the triggering operation of the first control, after the electronic device calls the film service of the second application through the first application, the electronic device displays the second interface of the first application. This can be understood as follows: in response to the triggering operation of the first control, after the first application calls the film service of the second application, the first application displays the second interface. That is to say, after the user triggers an operation on the first control in the first interface of the first application, the first application can automatically call the film service of the second application.
[0177] In another example, the electronic device also includes a third application different from the first application, and the method further includes: the electronic device displaying a fourth interface of the third application, wherein the fourth interface includes a second control and a second set of images; in response to a triggering operation on the second control, after the electronic device calls a video production service through the third application, the electronic device displays a fifth interface of the third application, wherein the video production service is also used to obtain second video data generated based on the second set of images, and the fifth interface includes a thumbnail of the second video data.
[0178] In response to the triggering operation of the second control, after the electronic device calls the film service through the third application, the electronic device displays the fifth interface of the third application. This can be understood as follows: In response to the triggering operation of the second control, after the third application calls the film service, the third application displays the fifth interface.
[0179] In the above implementation, under certain conditions, the third application in the electronic device, which is different from the first application, can also call the video service of the second application. The video service of the second application is used to obtain the second video data generated based on the second image set in the background, so that the fifth interface of the third application that calls the second application can display a thumbnail of the second video data.
[0180] As an example of this application, the electronic device also includes a media processing module, and, in response to a trigger operation on the first control, after calling the video production service of the second application through the first application, displays a second interface of the first application, including: in response to the trigger operation on the first control, the first application sends a video production instruction to the media processing module, wherein the video production instruction carries a first image set; the media processing module determines a theme matching the first image set according to the first image set carried by the video production instruction, and sends the first image set and the theme to the video production service, so that the video production service sends first video data to the media processing module; after receiving the first video data, the media processing module sends the first video data to the first application; after receiving the first video data, the first application displays the second interface.
[0181] The second application described above may further include a video production pipeline module. For example, the step of the media processing module sending a first image set and a theme to the video production service, so that the video production service sends first video data to the media processing module, may include the following steps: the media processing module sends the first image set and the theme to the video production service; the video production service sends a video production instruction to the video production pipeline module, wherein the video production instruction carries the first image set and the theme; the video production pipeline module performs video production processing based on the first image set and the theme to obtain third video data, wherein the format of the third video data is different from the format of the first video data; the video production pipeline module sends the third video data to the video production service; the video production service converts the third video data into first video data and sends the first video data to the media processing module.
[0182] The aforementioned video production pipeline module processes the first image set and the theme to obtain third video data. In the step where the format of the third video data is different from that of the first video data, for example, it may include the following steps: The video production pipeline module processes the first image set and the theme according to multiple preset processing nodes to obtain third video data. The multiple preset processing nodes may include video template material nodes, theme matching template nodes, template material parsing nodes, music rhythm parsing nodes, music use and beat matching nodes, special effects use nodes, and cover generation nodes.
[0183] The third video data is video data that conforms to the internal video data structure of the second application. For example, the third video data may include the first image material, music, filters, transitions, end credits, video duration, and video cover information.
[0184] Each of the aforementioned preset processing nodes is used to execute a preset process for the function corresponding to that preset processing node. For example, taking the theme matching template node as an example, the theme matching template node is used to execute the process of matching a video template for a target theme, so as to obtain a video template that matches the target theme.
[0185] For example, the above-mentioned finished product service can be the above-mentioned Figure 5 The automatic video production service shown above, the aforementioned media processing module can be the aforementioned Figure 5 The media processing platform shown above, the first control mentioned above can be the aforementioned Figure 5 The video generation control shown above, the above-mentioned video output instructions can be the above-mentioned Figure 5 The illustrated batching instructions indicate that the first image set mentioned above can be the aforementioned... Figure 5 The target image material shown can be related to the above-mentioned themes. Figure 5 The target subject shown, the first video data mentioned above can be the above Figure 5 The draft shown above, the third video data mentioned above can be the aforementioned Figure 5 The video data 1 shown above, the second interface mentioned above can be the above Figure 5 Interface 2 is shown here; for details not elaborated here, please refer to the above text. Figure 5 The relevant description in the document.
[0186] In this embodiment of the application, after the electronic device displays a thumbnail including the first video data, the user can further trigger the electronic device to play the first video data. In one example, after displaying the second interface of the first application, the method further includes: in response to the triggering operation of the thumbnail of the first video data, the electronic device sends the first video data to the second application through the first application; after the second application processes the first video data, the electronic device displays a third interface, wherein the third interface is a preview playback interface of the first video data.
[0187] In the above implementation, the second application further includes a one-click blockbuster component, a restoration pipeline module, and a video playback module. In response to a trigger operation on the thumbnail of the first video data, the first application sends the first video data to the second application, including: in response to the trigger operation on the thumbnail of the first video data, the first application sends the first video data to the one-click blockbuster component; after processing the first video data, the second application displays a third interface, including: the one-click blockbuster component converts the first video data into third video data, wherein the formats of the first video data and the third video data are different; the one-click blockbuster component sends a restoration command to the restoration pipeline module, wherein the restoration command carries the third video data; the restoration pipeline module parses and processes the third video data carried by the restoration command and sends the resulting parsing result to the video playback module; in response to the video playback module loading the parsing result, the video playback module displays the third interface.
[0188] For example, the above-mentioned electronic device may be the above-mentioned Figure 7 The terminal device shown, the first application mentioned above can be the aforementioned Figure 7 The YOYO smart assistant shown above, the second application mentioned above can be the aforementioned Figure 7 The editing application shown above, the one-click blockbuster component mentioned above can be the above Figure 7 The one-click blockbuster activity component shown above, the above-mentioned restoration pipeline module can be the above-mentioned Figure 7 The restored video pipeline module shown above, the first video data mentioned above can be the aforementioned Figure 7 The draft shown above, the third video data mentioned above can be the aforementioned Figure 7 The video data 1 shown above, the third interface mentioned above can be the above Figure 7 The preview interface shown here; for details not elaborated here, please refer to the text above. Figure 7 The relevant description in the document.
[0189] It should be understood that the above Figure 8 The video generation method shown is for illustrative purposes only and does not constitute any limitation on the video generation method provided in this application.
[0190] In this embodiment, after a user performs a trigger operation on a first control of the first interface of the first application, the first application can automatically call the video service of the second application. This ensures that after the first application successfully calls the video service of the second application, the second interface of the first application displayed on the electronic device includes a thumbnail of the first video data generated by the video service of the second application. Since the step of acquiring the first video data is implemented by the video service of the second application, this acquisition process is performed in the background of the electronic device, meaning the user is unaware of it. This method avoids the problem of poor user visual experience in traditional technologies, thus improving the user experience. Furthermore, the second application located within the electronic device can restore the first video data acquired from the first application to data in a playback format supported by the second application (i.e., third video data), and preview the parsing results corresponding to the third video data, better meeting the user's needs.
[0191] This application also provides a computer program product that, when executed by a processor, implements the video generation method described in any of the method embodiments of this application.
[0192] The computer program product can be stored in memory, for example, it is a program. The program is eventually converted into an executable object file that can be executed by the processor after processes such as preprocessing, compilation, assembly and linking.
[0193] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer, implements the video generation method described in any of the method embodiments of this application. The computer program may be a high-level language program or an executable object program.
[0194] In this application, "at least one" means one or more, and "more than one" means two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or multiple items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.
[0195] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0196] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0197] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0198] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for example, the division of units is merely a logical functional division, and other division methods may exist in actual implementation; for example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0199] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0200] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0201] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method of video generation, the method comprising: The method is applied to an electronic device including a first application and a second application, and the method comprises: displaying a first interface of the first application, wherein the first interface comprises a first control and a first picture set; in response to a triggering operation on the first control, calling a film service of the second application through the first application, and displaying a second interface of the first application, wherein the film service is used to obtain first video data generated according to the first picture set, and the second interface comprises a thumbnail of the first video data; wherein the electronic device further comprises a media processing module, and after the film service of the second application is called through the first application in response to the triggering operation on the first control, the second interface of the first application is displayed, comprising: in response to the triggering operation on the first control, the first application sends a first film instruction to the media processing module, wherein the first film instruction carries the first picture set; the media processing module determines a theme matched with the first picture set according to the first picture set carried by the first film instruction, and sends the first picture set and the theme to the film service, so that the film service sends the first video data to the media processing module; after the media processing module receives the first video data, the media processing module sends the first video data to the first application; after the first application receives the first video data, the second interface is displayed; wherein the second application further comprises a film pipeline module, and the media processing module sends the first picture set and the theme to the film service, so that the film service sends the first video data to the media processing module, comprising: the media processing module sends the first picture set and the theme to the film service; the film service sends a second film instruction to the film pipeline module, wherein the second film instruction carries the first picture set and the theme; the film pipeline module performs film processing based on the first picture set and the theme to obtain third video data, wherein the format of the third video data is different from the format of the first video data; the film pipeline module sends the third video data to the film service; the film service converts the third video data into the first video data, and sends the first video data to the media processing module.
2. The method of claim 1, wherein, after the second interface of the first application is displayed, the method further comprises: in response to a triggering operation on the thumbnail of the first video data, the first application sends the first video data to the second application; after the second application processes the first video data, a third interface is displayed, wherein the third interface is a preview playing interface of the first video data.
3. The method according to claim 1 or 2, characterized in that, The electronic device further comprises a third application different from the first application, and the method further comprises: displaying a fourth interface of the third application, wherein the fourth interface comprises a second control and a second picture set; In response to the triggering operation on the second control, a fifth interface of the third application is displayed after the third application invokes the photo service, wherein the photo service is further configured to obtain second video data generated according to the second picture set, and the fifth interface includes a thumbnail of the second video data.
4. The method of claim 2, wherein, The second application further includes a one-key photo component, a restoration pipeline module and a video playing module, and The first application sends the first video data to the second application in response to the triggering operation on the thumbnail of the first video data, and the sending includes: The first application sends the first video data to the one-key photo component in response to the triggering operation on the thumbnail of the first video data; The second application displays a third interface after processing the first video data, and the third interface includes: The one-key photo component converts the first video data into third video data, wherein the format of the first video data is different from the format of the third video data; The one-key photo component sends a restoration instruction to the restoration pipeline module, wherein the restoration instruction carries the third video data; The restoration pipeline module performs analysis processing on the third video data carried by the restoration instruction, and sends the obtained analysis result to the video playing module; The video playing module displays the third interface in response to loading the analysis result.
5. The method according to claim 1 or 2, characterized in that, The first application is a voice application, and the second application is a clipping application.
6. An electronic device, comprising: The electronic device includes one or more processors and a memory, the memory is coupled to the one or more processors, the memory is configured to store computer program code, the computer program code includes computer instructions, and the one or more processors invoke the computer instructions to make the electronic device execute the method in any one of claims 1 to 5.
7. A chip system, characterized by The chip system is applied to an electronic device, and the chip system includes one or more processors configured to invoke computer instructions to make the electronic device execute the method in any one of claims 1 to 5.
8. A computer-readable storage medium, characterized in that, The computer readable storage medium includes instructions, when the instructions run on an electronic device, make the electronic device execute the method in any one of claims 1 to 5.
Citation Information
Patent Citations
Voice interaction method and electronic equipment
CN111724775A
Video generation method and electronic equipment
CN116347009A