Method, apparatus, device and storage medium for processing video stream
By extracting frames from the video stream and generating progress bar stickers, the problem of efficiently adding progress bars in existing technologies is solved, improving video creation quality and viewing experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-22
- Publication Date
- 2026-03-27
AI Technical Summary
Existing technologies make it difficult to efficiently add progress bars to video streams during video creation, which affects the video viewing experience and quality.
By extracting multiple frames from the original video stream, generating a progress bar sticker based on the progress bar configuration information, and overlaying it onto the video frames, a target video stream containing a progress bar is generated.
It enables the simple and efficient addition of progress bars to video streams, improving the information prompts during video creation and enhancing the viewing experience.
Smart Images

Figure CN115883918B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of image processing, and in particular, to the technical field of video processing. BACKGROUND
[0002] A video progress bar (referred to as a progress bar) can be used to display the video playing progress in a real-time animation style during the video playing process. In the process of video creation, by adding a progress bar to a video, stronger information prompts can be given to the viewers of the video, thereby improving the quality of video creation. SUMMARY
[0003] The present disclosure provides a method, apparatus, device and storage medium for processing a video stream.
[0004] According to an aspect of the present disclosure, there is provided a method for processing a video stream, including: extracting a plurality of frames from an original video stream according to video information of the original video stream; generating a plurality of progress bar stickers corresponding to the plurality of frames according to progress bar configuration information corresponding to the original video stream; and generating a target video stream containing a progress bar according to the plurality of progress bar stickers and the plurality of frames.
[0005] According to another aspect of the present disclosure, there is provided an apparatus for processing a video stream, including: an extracting module configured to extract a plurality of frames from an original video stream according to video information of the original video stream; a sticker generating module configured to generate a plurality of progress bar stickers corresponding to the plurality of frames according to progress bar configuration information corresponding to the original video stream; and a video generating module configured to generate a target video stream containing a progress bar according to the plurality of progress bar stickers and the plurality of frames.
[0006] According to another aspect of the present disclosure, there is provided an electronic device, including: at least one processor; and a memory connected to the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method shown in the embodiments of the present disclosure.
[0007] According to another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to perform the method shown in the embodiments of the present disclosure.
[0008] According to another aspect of the present disclosure, there is provided a computer program product, including computer programs / instructions, characterized by the computer programs / instructions being executed by a processor to implement the steps of the method shown in the embodiments of the present disclosure.
[0009] It is to be understood that the details set forth herein do not limit the scope of the embodiments of the present disclosure but merely contemplate it, limiting the scope of the disclosure. Other aspects of the present disclosure will become apparent from the following description, which is to be read in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0010] The accompanying drawings are included to provide a further understanding of the present application, and are incorporated in and constitute a part of this specification. In the drawings:
[0011] Figure 1 A schematic diagram of a video picture containing a video progress bar is shown according to an embodiment of the present disclosure;
[0012] Figure 2 A flowchart of a method of processing a video stream is shown according to an embodiment of the present disclosure;
[0013] Figure 3 A flowchart of a method of processing a video stream is shown according to another embodiment of the present disclosure;
[0014] Figure 4 A flowchart of a method of determining corresponding progress bar configuration information to an original video stream is shown according to an embodiment of the present disclosure;
[0015] Figure 5 A schematic diagram of a progress bar is shown according to an embodiment of the present disclosure;
[0016] Figure 6 A schematic diagram of a method of determining corresponding progress bar configuration information to an original video stream is shown according to another embodiment of the present disclosure;
[0017] Figure 7 A schematic diagram of a method of determining corresponding progress bar configuration information to an original video stream is shown according to another embodiment of the present disclosure;
[0018] Figure 8A A schematic diagram of a presentation interface is shown according to an embodiment of the present disclosure;
[0019] Figure 8B A schematic diagram of another presentation interface is shown according to an embodiment of the present disclosure;
[0020] Figure 8C A schematic diagram of another presentation interface is shown according to an embodiment of the present disclosure;
[0021] Figure 8D A schematic diagram of another presentation interface is shown according to an embodiment of the present disclosure;
[0022] Figure 8E A schematic diagram of another presentation interface is shown according to an embodiment of the present disclosure;
[0023] Figure 9 A schematic diagram illustrating a method for processing a video stream according to an embodiment of the present disclosure is shown.
[0024] Figure 10 A block diagram schematically illustrates an apparatus for processing video streams according to embodiments of the present disclosure; and
[0025] Figure 11 A block diagram of an example electronic device that can be used to implement embodiments of the present disclosure is illustrated schematically. Detailed Implementation
[0026] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0027] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0028] Figure 1 The illustration shows a video frame including a video progress bar according to an embodiment of the present disclosure.
[0029] like Figure 1 As shown, the video frame 100 includes a main frame 110 and a video progress bar (hereinafter referred to as the progress bar) 120. The main frame 110 can be the playback frame of the video stream. The progress bar 120 can be used to indicate the playback progress of the video stream. The progress bar 120 can include one or more sections, each representing a different part of the video stream. Corresponding to each section, the progress bar 120 can also include summary information for that section, describing its content. This summary information can be, for example, marked within the corresponding section. For example, in this embodiment, the progress bar can include three sections 121, 122, and 123, corresponding to the beginning, body, and end of the video stream, respectively. The three sections 121, 122, and 123 are respectively marked with "Beginning," "Body," and "End" as summary information. As the video stream plays, the style of the progress bar can change accordingly to indicate the playback progress. For example, Figure 1 The beginning of the video stream has been played, while the main body and the end have not. Therefore, chapter 121 in the progress bar 120 can be set to a different style than chapters 122 and 123 to indicate that the beginning has been played, while the main body and the end have not.
[0030] Figure 2 A flowchart of a method of processing a video stream according to an embodiment of the present disclosure is shown.
[0031] As shown in Figure 2 The method 200 of processing a video stream includes, at operation S210, extracting a plurality of frames from an original video stream according to video information of the original video stream.
[0032] According to an embodiment of the present disclosure, the video information of the original video stream may, for example, include one or more of a video duration, a resolution, and a frame rate of the original video stream.
[0033] According to an embodiment of the present disclosure, an extraction frequency can be determined according to the video information. Then the plurality of frames can be extracted from the original video stream according to the extraction frequency.
[0034] The extraction frequency may, for example, represent a frequency of extracting frames from the original video stream, such as 30 frames per second or 60 frames per second, etc. According to an embodiment of the present disclosure, the video information of a video stream is different, and the corresponding video processing speed is different. Therefore, the processing speed can be determined according to the video information of the video stream, and then the extraction frequency can be determined according to the processing speed. The slower the processing speed, the lower the corresponding extraction frequency.
[0035] Then, at operation S220, a plurality of progress bar stickers corresponding to the plurality of frames is generated according to progress bar configuration information.
[0036] According to an embodiment of the present disclosure, a sticker is a picture that can be used to cover a layer on a picture of a video stream. A progress bar sticker is a sticker containing a progress bar.
[0037] According to an embodiment of the present disclosure, the progress bar configuration information may, for example, include position information of at least one annotation point, summary information corresponding to each annotation point, progress bar style parameters, and progress bar position parameters, etc.
[0038] According to an embodiment of the present disclosure, for each annotation point in the at least one annotation point, a target frame corresponding to the annotation point in the plurality of frames can be determined according to the position information of the annotation point. Then, a progress bar sticker corresponding to the target frame can be generated according to the summary information corresponding to the annotation point, the progress bar style parameters, and the progress bar position parameters.
[0039] At operation S230, a target video stream containing a progress bar is generated according to the plurality of progress bar stickers and the plurality of frames.
[0040] According to an embodiment of the present disclosure, a synthesized image can be obtained by synthesizing each frame in the plurality of frames and the progress bar sticker corresponding to the frame. Then, the target video stream can be generated according to the synthesized image.
[0041] According to an embodiment of the present disclosure, each of the plurality of progress bar stickers can be respectively overlaid on an upper layer of a frame corresponding to the progress bar sticker, synthesized into a synthesized image, and then a target video stream can be generated according to the synthesized image, so as to add the progress bar to the original video stream.
[0042] The method for processing a video stream according to an embodiment of the present disclosure can be used to add a progress bar to a video stream. According to an embodiment of the present disclosure, by adding a progress bar to a video in the form of a sticker, the method is simpler and more efficient than the prior art.
[0043] Figure 3 A flowchart of a method for processing a video stream according to another embodiment of the present disclosure is schematically shown.
[0044] As Figure 3 shown, the method 300 for processing a video stream includes, at operation S310, determining progress bar configuration information corresponding to an original video stream.
[0045] At operation S320, a plurality of frames are extracted from the original video stream according to video information of the original video stream.
[0046] At operation S330, a plurality of progress bar stickers corresponding to the plurality of frames are generated according to the progress bar configuration information corresponding to the original video stream.
[0047] At operation S340, a target video stream containing a progress bar is generated according to the plurality of progress bar stickers and the plurality of frames.
[0048] According to an embodiment of the present disclosure, operations S320-S340 may, for example, refer to the above and will not be described here again.
[0049] Reference is made below Figures 4-7 to further illustrate the method for determining progress bar configuration information corresponding to an original video stream shown above.
[0050] According to an embodiment of the present disclosure, the progress bar configuration information may, for example, include position information of at least one annotation point and summary information corresponding to each annotation point. Based on this, Figure 4 A flowchart of a method for determining progress bar configuration information corresponding to an original video stream according to an embodiment of the present disclosure is schematically shown.
[0051] In Figure 4 shown, at operation S411, in the process of playing the original video stream, an annotation operation is triggered in response to a triggering operation on an annotation button, an annotation point corresponding to a current playing position of the original video stream is generated, and the current playing position is determined as position information of the annotation point.
[0052] According to an embodiment of the present disclosure, the original video stream can be played in the first display area, and the annotation button can be displayed in the second display area. For example, in the embodiment, the second display area can be located adjacent to the first display area, for example, the second display area can be adjacent to and below the first display area. According to another embodiment of the present disclosure, the second display area can also partially or entirely overlap the first display area.
[0053] According to an embodiment of the present disclosure, the annotation points can be used to divide chapters of the progress bar. Figure 5 A schematic diagram of a progress bar according to an embodiment of the present disclosure is shown schematically. As shown in the figure, the annotation points 511 and 512 divide the progress bar into three chapters. Among them, the first chapter 531 is between the start point 521 of the video stream and the annotation point 511, the second chapter 532 is between the annotation point 511 and the annotation point 512, and the third chapter 533 is between the annotation point 512 and the end point 522 of the video stream. Figure 5
[0054] In operation S412, an input box corresponding to the annotation point is displayed.
[0055] According to an embodiment of the present disclosure, in the previous operation, the progress bar is divided into multiple chapters by setting the annotation points. Therefore, in operation S412, the input box corresponding to the multiple chapters can be displayed.
[0056] According to an embodiment of the present disclosure, the input box corresponding to the annotation point can be displayed in the third display area. Among them, the third display area can be located adjacent to the first display area and / or the second display area, for example, the third display area can be adjacent to and below the second display area. According to another embodiment of the present disclosure, the third display area can also partially or entirely overlap the second display area.
[0057] According to another embodiment of the present disclosure, the input box can also be displayed in other ways, such as a pop-up input window.
[0058] In operation S413, the text information input by the user through the input box is obtained as the summary information corresponding to the annotation point.
[0059] According to an embodiment of the present disclosure, the user can input text information for describing the above chapters through the input box. Based on this, the text information input by the user through the input box can be obtained as the summary information of the corresponding chapter.
[0060] According to another embodiment of the present disclosure, the progress bar configuration information can also include a progress bar style parameter. Based on this, Figure 6 A schematic diagram of a method of determining corresponding progress bar configuration information of an original video stream according to another embodiment of the disclosure is shown.
[0061] In Figure 6 In operation S611, a plurality of style templates are displayed.
[0062] According to embodiments of the disclosure, each style template can correspond to a set of style parameters, which can include, for example, color, shape, size, animation effect, etc. of the play bar, and can also include font, color, style, font size, etc. of the summary information.
[0063] In operation S612, in response to a selection operation on a target style template in the plurality of style templates, style parameters corresponding to the target style template are determined as progress bar style parameters.
[0064] According to another embodiment of the disclosure, the progress bar configuration information can further include, for example, a progress bar position parameter. Based on this, Figure 7 A schematic diagram of a method of determining corresponding progress bar configuration information of an original video stream according to another embodiment of the disclosure is shown.
[0065] In Figure 7 In operation S711, a progress bar preview image is displayed in a first display area.
[0066] According to embodiments of the disclosure, the progress bar preview image can be used to represent the display effect of the progress bar after being added to the original video stream.
[0067] In operation S712, in response to a movement operation on the progress bar preview image, the progress bar preview image in the first display area is moved.
[0068] According to embodiments of the disclosure, a user can perform a movement operation on the progress bar preview image in the first display area. In response to the movement operation on the progress bar preview image, the progress bar preview image in the first display area can be moved to change the relative position of the progress bar and the original video stream.
[0069] In operation S713, in response to a confirmation operation on the progress bar preview image, a progress bar position parameter is determined according to the relative position of the progress bar preview image and the original video stream.
[0070] According to some other embodiments of the disclosure, during the process of determining the progress bar configuration information, a reset button can also be displayed in a third display area. In response to a triggering operation on the reset button, the generated progress bar configuration information is deleted. By triggering the reset button, the initial state can be quickly returned to re-produce the progress bar.
[0071] According to embodiments of this disclosure, during the preview process, the position of the progress bar can be changed to the optimal position that matches the original video subtitles, stickers, and other materials.
[0072] The following is for reference. Figures 8A-8E The method for determining the progress bar configuration information corresponding to the original video stream, as described above, will be further explained with reference to specific embodiments. Those skilled in the art will understand that the following example embodiments are only for understanding this disclosure, and this disclosure is not limited thereto.
[0073] Figure 8A A schematic diagram of a display interface according to an embodiment of the present disclosure is shown.
[0074] like Figure 8A As shown, the display interface may include a first display area 810, a second display area 820, a third display area 830, and a fourth display area 840. For example, the original video source 811 can be played in the first display area 810, and a label button 821 can be displayed in the second display area 820. A playback control button 831 and a video track 832 can be displayed in the third display area 830. The playback control button 831 can be used to control the playback or stop of the original video stream 811. The video track 832 can be used to adjust the playback progress of the original video stream 811.
[0075] Figure 8B A schematic diagram of another display interface according to an embodiment of the present disclosure is shown.
[0076] like Figure 8B As shown, the user can trigger the annotation button 821 during the playback of the original video stream 811. When the annotation button 821 is triggered, an annotation point corresponding to the current playback position of the original video stream 811 can be generated, and the current playback position can be determined as the position information of the annotation point. Additionally, a progress bar preview image 812 can be displayed in the first display area. The progress bar preview image 812 can be displayed on top of the original video stream 811. The generated annotation points divide the progress bar into multiple sections, and correspondingly, the progress bar preview image 812 is also divided into multiple segments, each representing one of these sections. When the annotation button 821 is triggered, a delete button 822 and a reset button 823 can also be displayed in the second display area 820. When the delete button 822 is triggered, the current annotation point can be deleted. When the reset button 823 is triggered, all annotation points can be deleted.
[0077] According to embodiments of this disclosure, an input box 841 corresponding to each chapter can be displayed in the fourth display area 840. Users can input text information describing the chapter through the input box 841.
[0078] According to an embodiment of the present disclosure, in the process of adding the progress bar, the video annotation is combined with the video preview process, and the operation can be completed by clicking a button, which is relatively easy and accurate.
[0079] Figure 8C A schematic diagram of another display interface according to an embodiment of the present disclosure is shown.
[0080] As Figure 8C shown, in an example, when the user clicks the input box 841, the text editing interface 850 can be displayed, and the text editing interface 850 can display a plurality of input boxes 841 to facilitate the user to input information. Then the text information input by the user through the input box 841 can be acquired as the summary information of the corresponding chapter.
[0081] Figure 8D A schematic diagram of another display interface according to an embodiment of the present disclosure is shown.
[0082] As Figure 8D shown, the user can perform a switching operation in the text editing interface 850, and in response to the switching operation, the text editing interface 850 can be switched to the style setting interface 860. The switching operation may, for example, include a sliding operation. A plurality of style templates 861 can be displayed in the style setting interface 860. Each style template 861 can correspond to a set of style parameters, which may, for example, include the color, shape, size, animation effect of the progress bar, and may also include the font, color, style, font size of the summary information. When the user selects one of the style templates 861, the style parameters corresponding to the selected style template 861 can be determined as the progress bar style parameters.
[0083] According to an embodiment of the present disclosure, the style setting interface provides a plurality of style templates, which can improve the practicability and setting efficiency.
[0084] According to an embodiment of the present disclosure, in the process of changing, a single annotation point can be deleted and added, a single summary information can be edited and deleted, and a style can be replaced by one key. One key reset and all deletion are also supported, and the cost of changing is relatively low, and the method is flexible.
[0085] Figure 8E A schematic diagram of another display interface according to an embodiment of the present disclosure is shown.
[0086] As Figure 8EAs shown, according to an embodiment of this disclosure, a user can move the progress bar preview image 812 within the first display area 810. In response to the movement operation on the progress bar preview image 812, the progress bar preview image 812 in the first display area 810 can be moved to change the relative position of the progress bar and the original video stream 811. For example, the user can move the progress bar preview image 812 vertically upwards to move it from the bottom of the original video stream 811 to the top of the original video stream 811. Once the user has adjusted the progress bar preview image 812 to a suitable position, a confirmation operation can be triggered. Exemplarily, in this embodiment, the user can trigger the confirmation operation by clicking the "Next" button 861. In response to the confirmation operation on the progress bar preview image 812, the progress bar position parameters are determined based on the relative position of the progress bar preview image 812 and the original video stream 811.
[0087] The following is for reference. Figure 9 The method for processing video streams described above will be further explained with reference to specific embodiments. Those skilled in the art will understand that the following example embodiments are only for understanding this disclosure, and this disclosure is not limited thereto.
[0088] Figure 9 A schematic diagram illustrating a method for processing a video stream according to an embodiment of the present disclosure is shown.
[0089] For example, in this embodiment, an SDK (Software Development Kit) with video processing capabilities can be used to assist in processing video streams.
[0090] Based on this, such as Figure 9 As shown, in operation S901, the setting information of the imported video stream is displayed.
[0091] In operation S902, it is determined whether the video stream has a progress bar based on the setting information. If the video stream has a progress bar, operation S903 is executed; otherwise, operation S910 is executed.
[0092] In operation S903, register sticker resources in the SDK. If registration is successful, execute operations S904-S909. If registration fails, execute operation S910.
[0093] During operation of S904, the progress bar configuration information corresponding to the original video stream is obtained.
[0094] When operating the S905, multiple frames are extracted from the original video stream based on the video information of the original video stream.
[0095] When operating the S906, these multiple frames are saved locally.
[0096] At operation S907, a plurality of progress bar stickers corresponding to the plurality of frames are created according to the progress bar configuration information corresponding to the original video stream.
[0097] At operation S908, the plurality of progress bar stickers are added to a timeline corresponding to the original video stream.
[0098] At operation S909, the current progress bar sticker is saved locally.
[0099] At operation S910, the video stream is exported through the SDK.
[0100] At operation S911, the saved progress bar sticker is deleted in a case where the exporting is completed.
[0101] Figure 10 A block diagram of an apparatus for processing a video stream according to an embodiment of the present disclosure is schematically shown.
[0102] As shown in Figure 10 the apparatus 1000 for processing a video stream includes an extraction module 1010, a sticker generation module 1020, and a video generation module 1030.
[0103] The extraction module 1010 is configured to extract a plurality of frames from an original video stream according to video information of the original video stream.
[0104] The sticker generation module 1020 is configured to generate a plurality of progress bar stickers corresponding to the plurality of frames according to progress bar configuration information corresponding to the original video stream.
[0105] The video generation module 1030 is configured to generate a target video stream containing a progress bar according to the plurality of progress bar stickers and the plurality of frames.
[0106] According to an embodiment of the present disclosure, the present disclosure further provides an electronic device, a readable storage medium, and a computer program product.
[0107] Figure 11 A block diagram of an example electronic device 1100 that can be used to implement an embodiment of the present disclosure is schematically shown. The electronic device is intended to represent various forms of digital computers, such as laptops, desktops, tablets, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown here, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the present disclosure described and / or claimed in this document.
[0108] As shown in Figure 11As shown, the device 1100 includes a computing unit 1101 that can perform various appropriate actions and processes in accordance with a computer program stored in a read-only memory (ROM) 1102 or a computer program loaded from the storage unit 1108 into a random access memory (RAM) 1103. Various programs and data required for the operation of the device 1100 can also be stored in the RAM 1103. The computing unit 1101, the ROM 1102, and the RAM 1103 are connected to each other through a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.
[0109] Various components in the device 1100 are connected to the I / O interface 1105, including an input unit 1106 such as a keyboard, a mouse, etc., an output unit 1107 such as various types of displays, speakers, etc., a storage unit 1108 such as a magnetic disk, an optical disk, etc., and a communication unit 1109 such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1109 allows the device 1100 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0110] The computing unit 1101 can be various general and / or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 1101 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 1101 performs various methods and processes described above, such as the method of processing a video stream. For example, in some embodiments, the method of processing a video stream can be implemented as a computer software program that is tangibly embodied in a machine-readable medium, such as the storage unit 1108. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 1100 via the ROM 1102 and / or the communication unit 1109. When the computer program is loaded into the RAM 1103 and executed by the computing unit 1101, one or more steps of the method of processing a video stream described above can be performed. Alternatively, in other embodiments, the computing unit 1101 can be configured to perform the method of processing a video stream by any other appropriate means, such as by means of firmware.
[0111] The various embodiments of the systems and techniques described above can be implemented in digital electronic circuitry, integrated circuitry, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on a chip (SOC), a load programmable logic device (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include implementation in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
[0112] Program code for carrying out methods of the present disclosure can be written in any combination of one or more programming languages. The program code can be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the program code, when executed by the processor or controller, produces the functions / operations specified in the flowcharts and / or the block diagrams. The program code can be executed entirely on a machine, partially on a machine, partially on a machine as a stand-alone software package, or entirely on a remote machine or server.
[0113] In the context of the present disclosure, a machine-readable medium can be a tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include but is not limited to an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of the machine-readable storage medium will include one or more lines of electrical conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0114] To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
[0115] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.
[0116] The computer system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
[0117] The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system. It solves the defects of large management difficulty and weak business scalability in traditional physical host and VPS service (Virtual Private Server, or VPS). The server can also be a server of a distributed system, or a server combined with a blockchain.
[0118] It should be understood that the various forms of flow shown above can be used to reorder, add, or delete steps. For example, the steps described in the present disclosure can be executed in parallel, in sequence, or in a different order, as long as the desired results of the technical solutions of the present disclosure can be achieved, and the present disclosure is not limited herein.
[0119] The above detailed description does not limit the scope of the disclosure. Various modifications, combinations, sub-combinations and alternatives can be made to the detailed description. Any modification, equivalent replacement and improvement etc. made within the spirit and principle of the disclosure shall be included in the scope of the disclosure.
Claims
1. A method for processing a video stream, comprising: Based on the video information of the original video stream, extract multiple frames from the original video stream; Based on the progress bar configuration information corresponding to the original video stream, generate multiple progress bar stickers corresponding to the multiple frames; Generate a target video stream containing progress bars based on the plurality of progress bar stickers and the plurality of frames; The progress bar configuration information includes the location information of at least one marker, summary information of the chapter corresponding to each marker, and progress bar style parameters. The marker is used to divide the progress bar into multiple chapters. The method further includes: During the playback of the original video stream, in response to the trigger operation of the annotation button, an annotation operation is triggered to generate an annotation point corresponding to the current playback position of the original video stream, and the current playback position is determined as the position information of the annotation point; Display the input box corresponding to the marked point; Obtain the text information entered by the user through the input box, and use it as the summary information of the chapter corresponding to the marked point; Multiple style templates are displayed, each style template corresponding to a set of style parameters. The style parameters include the color, shape, size, and animation effects of the playback bar, as well as the font, color, style, and font size of the summary information. In response to the selection operation of a target style template among the plurality of style templates, the style parameters corresponding to the target style template are determined as the progress bar style parameters; The step of generating multiple progress bar stickers corresponding to the multiple frames based on the progress bar configuration information corresponding to the original video stream includes: For each of the at least one annotation point, a target frame corresponding to the annotation point is determined in the plurality of frames based on the position information of the annotation point; Based on the summary information corresponding to the annotation point, the progress bar style parameters, and the progress bar position parameters, a progress bar sticker corresponding to the target frame is generated; The progress bar configuration information also includes progress bar position parameters, and the method further includes: displaying a progress bar preview image in the first display area, the progress bar preview image being used to represent the display effect of the progress bar after being added to the original video stream; In response to a move operation on the progress bar preview image, move the progress bar preview image in the first display area; In response to a confirmation action on the progress bar preview, the progress bar position parameters are determined based on the relative position of the progress bar preview and the original video stream.
2. The method according to claim 1, further comprising: The original video stream is played in the first display area, and the labeled button is displayed in the second display area.
3. The method according to claim 1, wherein, The step of extracting multiple frames from the original video stream based on the video information of the original video stream includes: Based on the video information, determine the extraction frequency; and Based on the extraction frequency, multiple frames are extracted from the original video stream.
4. The method according to claim 3, wherein, The video information includes one or more of the following: video duration, resolution, and frame rate of the original video.
5. The method according to claim 1, wherein, The step of generating a target video stream containing progress bars based on the plurality of progress bar stickers and the plurality of frames includes: Synthesize each frame from the plurality of frames and the progress bar sticker corresponding to each frame to obtain a composite image; and The target video stream is generated based on the synthesized image.
6. The method according to claim 2, further comprising: The reset button is displayed in the third display area; as well as In response to a trigger operation on the reset button, the generated progress bar configuration information is deleted.
7. An apparatus for processing video streams, comprising: The extraction module is used to extract multiple frames from the original video stream based on the video information of the original video stream; The sticker generation module is used to generate multiple progress bar stickers corresponding to the multiple frames based on the progress bar configuration information corresponding to the original video stream. as well as The video generation module is used to generate a target video stream containing progress bars based on the plurality of progress bar stickers and the plurality of frames; The progress bar configuration information includes the position information of at least one marker, the summary information of the chapter corresponding to each marker, and the progress bar style parameters. The marker is used to divide the progress bar into multiple chapters. The device further includes: a marker position information determination module, used to trigger a marker operation in response to a trigger operation on a marker button during the playback of the original video stream, generate a marker point corresponding to the current playback position of the original video stream, and determine the current playback position as the position information of the marker point; The summary information determination module is used to display the input box corresponding to the annotation point, and obtain the text information entered by the user through the input box as the summary information of the chapter corresponding to the annotation point; The progress bar style parameter determination module is used to display multiple style templates, each style template corresponding to a set of style parameters. The style parameters include the color, shape, size, and animation effect of the playback bar, as well as the font, color, style, and font size of the summary information. In response to the selection operation of the target style template among the multiple style templates, the module determines the style parameters corresponding to the target style template as the progress bar style parameters. The style parameters include color, shape, and size. The progress bar adjustment module is used to display a progress bar preview image in the first display area. The progress bar preview image is used to represent the display effect after the progress bar is added to the original video stream. In response to the movement operation of the progress bar preview image, the progress bar preview image in the first display area is moved. In response to the confirmation operation of the progress bar preview image, the progress bar position parameters are determined according to the relative position of the progress bar preview image and the original video stream. The sticker generation module is further configured to, for each of the at least one annotation point, determine the target frame corresponding to the annotation point in the plurality of frames based on the position information of the annotation point; and generate a progress bar sticker corresponding to the target frame based on the summary information corresponding to the annotation point, the progress bar style parameters, and the progress bar position parameters.
8. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-6.
9. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-6.
10. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method described in any one of claims 1-6.
Citation Information
Patent Citations
Video file processing method, related device and equipment
CN110582018A
Annotating and Sharing Content
US20090187825A1
Timeline overlay on surgical video
US20200237452A1