Embodiments of the present invention relate to video playback technologies, and in particular, to a video playback method and apparatus.
With popularization of broadband network technologies, watching a network video has become an important entertainment manner in people's daily life. For example, when a user watches a video by using a network device such as an intelligent personal television (IPTV), a personal computer, a mobile phone, or a tablet, if the user does not want to watch currently played video content, the user needs to select, by opening an episode-selecting interface of the video, a video that needs to be watched.
In the prior art, an episode-selecting interface of a video generally can only display an episode list of the video. According to the episode list on the episode-selecting interface, the user selects a video that needs to be watched. During playback, playback progress of a current video is displayed at the bottom of a playback interface by using a playback progress bar.
However, in a playback manner in the prior art, when wanting to watch another video, the user cannot determine a watching status of the another video, and may repeatedly open a watched video, which causes inconvenience in selecting an episode by the user.
The present invention provides a video playback method and apparatus, so as to resolve a prior-art problem of inconvenience in selecting an episode by a user because a watching status of another video can hardly be determined in a process of watching a video.
According to a first aspect, an embodiment of the present invention provides a video playback method, including:
obtaining playback progress information of all sub-files in a video file, where the video file includes at least two sub-files;
displaying a playback progress bar list, where the playback progress bar list includes playback progress bars of the at least two sub-files, and a playback progress bar of any sub-file displays playback progress of the any sub-file according to playback progress information corresponding to the any sub-file;
receiving a user instruction used for selecting, according to the playback progress bars, a target sub-file that needs to be played, where the target sub-file is a sub-file of the at least two sub-files; and
playing the target sub-file according to the instruction.
In the video playback method provided in the embodiment of the present invention, a playback progress bar list of a sub-file is displayed on a playback interface of a video file, and playback progress and status of the sub-file may be displayed intuitively. A user can accurately learn current watching statuses of all sub-files according to the playback progress bar list, so as to avoid repeatedly opening a file that does not need to be watched. This is convenient for the user to select an episode.
Optionally, before the displaying a playback progress bar list, the method further includes: determining a target playback progress bar list pattern from at least two preset playback progress bar list patterns according to a predetermined rule, and displaying the playback progress bar list according to the target playback progress bar list pattern, where the at least two playback progress bar list patterns have different appearance display forms.
Optionally, the predetermined rule includes:
displaying a playback progress bar of a currently played sub-file and a playback progress bar of a sub-file adjacent to the currently played sub-file.
Optionally, the predetermined rule includes: displaying a playback progress bar of a currently played sub-file and a playback progress bar of a next sub-file of the currently played sub-file.
Multiple alternative display forms of a playback progress bar list may be provided for a user by presetting a playback progress bar list pattern. When a video file is played, a needed playback progress bar list pattern may be selected according to a current playback requirement.
Optionally, in the playback progress bar list, a playback progress bar corresponding to a sub-file that has been played has a first length, and a length of a playback progress bar corresponding to a not-played or partially played sub-file is not equal to the first length.
Optionally, playback progress bars corresponding to not-played sub-files or playback progress bars corresponding to partially played sub-files have a same second length.
Optionally, the playback progress bars in the playback progress bar list have a same length. Specifically, playback progress of a corresponding sub-file is distinguished by means of a color of a playback progress bar.
Playback progress of the sub-files is identified by using playback progress bars of different lengths, so that display interface space may be effectively used, and a watched sub-file and a not-watched sub-file may be intuitively distinguished.
Optionally, the playback progress bar list further includes a poster image of a sub-file corresponding to each playback progress bar.
Playback statuses and progress of all the sub-files are displayed in a manner of combining the playback progress bars of all the sub-files and corresponding poster images, which is convenient for a user to learn corresponding plot content and playback progress of a sub-file corresponding to each playback progress bar.
Optionally, before the obtaining playback progress information of all sub-files in a video file, the method further includes:
determining whether the currently played sub-file is played to a file end stage; or
receiving a file playback switching instruction, where the file playback switching instruction is used to instruct to switch a currently played file.
Obtaining the playback progress information of all the sub-files in the video file is triggered by determining whether the currently played sub-file is played to the file end stage or by receiving the file playback switching instruction, so that different manners of invoking the playback progress bar list may be provided for a user, which is convenient for the user to select a video that the user wants to watch in different cases.
Optionally, a playback progress bar of the currently played sub-file includes a progress sliding block, used to indicate a playback location of the currently played sub-file; and
the receiving a user instruction used for selecting, according to the playback progress bars, a target sub-file that needs to be played includes:
receiving an instruction used for moving the progress sliding block; and
moving, according to the instruction, the progress sliding block to a playback progress bar corresponding to the target sub-file.
According to a second aspect, the present invention provides a video playback apparatus, including:
an obtaining module, configured to obtain playback progress information of all sub-files in a video file;
a display module, configured to display a playback progress bar list, where the playback progress bar list includes playback progress bars of at least two sub-files, and a playback progress bar of any sub-file displays playback progress of the any sub-file according to playback progress information corresponding to the any sub-file and obtained by the obtaining module;
a receiving module, configured to receive a user instruction used for selecting, according to the playback progress bars, a target sub-file that needs to be played, where the target sub-file is a sub-file of the at least two sub-files; and
a playing module, configured to play the target sub-file according to the instruction received by the receiving module.
The video playback apparatus is configured to execute the technical solution of the method embodiment in the first aspect, and a specific implementation principle and a beneficial effect of the video playback apparatus are similar to those of the method embodiment.
Optionally, the apparatus further includes a determining module, where the determining module is configured to determine a target playback progress bar list pattern from at least two preset playback progress bar list patterns according to a predetermined rule; and the display module is configured to display the playback progress bar list according to the target playback progress bar list pattern, where the at least two playback progress bar list patterns have different appearance display forms.
The receiving module is further configured to:
receive a file playback switching instruction, where the file playback switching instruction is used to instruct to switch a currently played file.
Optionally, the determining module is further configured to:
determine whether a currently played sub-file is played to a file end stage; and if the currently played sub-file is played to the file end stage, the obtaining module obtains the playback progress information of all the sub-files in the video file; or if the currently played sub-file is not played to the file end stage, the playing module continues playing the currently played sub-file.
Optionally, a playback progress bar of the currently played sub-file has a progress sliding block, used to indicate a playback location of the currently played sub-file;
the receiving module is further configured to receive an instruction used for moving the progress sliding block; and
the apparatus further includes a moving module, where the moving module is configured to move, according to the instruction, the progress sliding block to a playback progress bar corresponding to the target sub-file.
According to a third aspect, an embodiment of the present invention further provides a video playback apparatus, including a data interface, a memory, a processor, and a communications bus, where the data interface, the memory, and processor are connected by using the communications bus;
the memory is configured to store a software program instruction;
the processor is configured to execute the software program instruction stored in the memory, so as to implement any one of the foregoing video playback methods; and
the data interface is configured to obtain data or output data under the control of the processor.
In the video playback method and apparatus provided in the embodiments of the present invention, a playback progress bar list of a sub-file is displayed on a playback interface of a video file, and playback progress and status of the sub-file may be displayed intuitively. A user can accurately learn current watching statuses of all sub-files according to the playback progress bar list, so as to avoid repeatedly opening a file that does not need to be watched.
To describe technical solutions in embodiments of the present invention more clearly, the following briefly describes the accompanying drawings. The accompanying drawings in the following description show merely some embodiments of the present invention, and persons of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
The following clearly describes technical solutions in embodiments of the present invention with reference to the accompanying drawings. The described embodiments are merely some embodiments but not all of the embodiments of the present invention. All other embodiments obtained by persons of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
In the specification, claims, and accompanying drawings of the present invention, the terms “first”, “second”, “third”, “fourth”, and so on (if existent) are intended to distinguish between similar objects but do not necessarily indicate a specific order or sequence. It should be understood that the data termed in such a way are interchangeable in proper circumstances so that the embodiments of the present invention described herein can be implemented in orders except the order illustrated or described herein. Moreover, the terms “include”, “contain” and any other variants mean to cover the non-exclusive inclusion, for example, a process, method, system, product, or device that includes a list of steps or units is not necessarily limited to those units, but may include other units not expressly listed or inherent to such a process, method, system, product, or device.
Embodiments of the present invention are used to display a playback progress bar list on a playback interface of a video file in a process of playing the video file, and display playback progress of a corresponding sub-file by using a playback progress bar in the playback progress bar list. According to the playback progress bar, a user may intuitively select a sub-file that needs to be played, so that the user can switch a to-be-played file according to a watching requirement.
The server 110 may be a cloud data storage server or a common data server. The server 110 is configured to store data such as a video file, playback progress information of a video file, and a playback progress bar template list.
The content management device 130 may be specifically a set top box, an Internet television, a smart tablet, a smartphone, an application in a smart tablet or a smartphone, or the like, and is configured to receive a control instruction sent by the input device 150 and data in a network, process the data, and send processed data to the output device 140.
The output device 140 may be specifically an image-forming device such as a display or a television and/or an audio playback device, or the like, and is configured to output the data processed by the content management device 130.
The input device 150 may be specifically a key controller, a touchscreen controller, a mouse, or another input control device, and is configured to input the control instruction to the content management device 130.
Specifically, the data stored in the server 110, such as a video file, playback progress information of a video file, and a playback progress bar template list, is transmitted to the content management device 130 by using the network 120. A user sends a control instruction to the content management device 130 by using the input device 150. The content management device 130 processes data according to the control instruction sent by the input device 150, and then sends processed data to the output device 140 for display.
In another case, the data such as a video file, playback progress information of a video file, and a playback progress bar template list may not be transmitted to the content management device 130 by using the network, but be directly stored in the content management device 130.
The data interface 210 is configured to obtain data from the network 120, and transmit the data to the memory 220 and the processor 230. The data may be data such as a video file, playback progress information of a video file, and a playback progress bar template list, or may be other data needed according to a user requirement for video file playback.
The memory 220 is configured to store a program and/or a module for playing a video file and partial data obtained by the data interface 210, and is configured to provide the partial data for the processor 230 for processing.
The processor 230 is a control center of the content management device, is connected to various parts of the content management device by using various interfaces and lines, and executes various functions of the content management device and processes video file data by running or executing a software program and/or module stored in the memory 220 and invoking data stored in the memory 220. The processor 230 may include an integrated circuit (IC), for example, may include a single packaged IC, or may include multiple packaged ICs that are connected and have a same function or different functions. For example, the processor 230 may include only a central processing unit (CPU), or may be a combination of a graphics processing unit (GPU), a digital signal processor (DSP), and a control chip.
Specifically, the content management device 130 obtains the data such as a video file, playback progress information of a video file, and a playback progress bar template list from the network 120 by using the data interface 210, and transmits the data to the memory 220 and the processor 230. Specifically, the video file and the playback progress information of the video file are transmitted to the processor 230, and the playback progress bar template list is transmitted to the memory 220. The processor 230 processes video file data transmitted by the data interface 210 according to an instruction received by the receiver 250, and sends, by using the transmitter 240, processed video file data to the output device 140 for display.
In another case, the data such as a video file, playback progress information of a video file, and a playback progress bar template list may be directly stored in the memory 220; and according to an instruction received by the receiver 250, the processor 230 may directly process video file data stored in the memory 220.
S301. A data interface obtains playback progress information of all sub-files in a video file, where the video file includes at least two sub-files.
In a process of playing all the sub-files, the playback progress information of all the sub-files may be uploaded to a cloud data storage server or a common data server for storage, and be updated in real time according to current playback progress of all the sub-files. The data interface (for example, the data interface 210 in
Specifically, in a process of playing a sub-file in the video file, the following two specific implementation manners, but not limited to the following two specific implementation manners, may be used to trigger a step in which the data interface obtains the playback progress information of all the sub-files in the video file.
In one implementation manner, a processor detects playback content of a currently played sub-file to determine whether the currently played sub-file is played to a file end stage. If the currently played sub-file is played to the file end stage, the processor controls the data interface to obtain the playback progress information of all the sub-files in the video file from the network. If the currently played sub-file is not played to the file end stage, the currently played sub-file continues to be played.
In the other implementation manner, in a watching process, a user sends a file playback switching instruction by using an input device. The file playback switching instruction is used to instruct to switch a currently played file. A receiver receives the file playback switching instruction. Upon detecting the file playback switching instruction, the processor may trigger the data interface to obtain the playback progress information of all the sub-files in the video file from the network.
S302. An output device displays a playback progress bar list, where the playback progress bar list includes playback progress bars of the at least two sub-files, and a playback progress bar of any sub-file displays playback progress of the any sub-file according to playback progress information corresponding to the any sub-file.
After obtaining the playback progress information of all the sub-files in the video file, the data interface transmits the playback progress information to the processor. The processor presents the playback progress information as playback progress bar list information corresponding to all the sub-files, and transmits the playback progress bar list information to the output device. The output device displays the playback progress bar list according to the playback progress bar list information. The playback progress bar list is displayed on a video playback interface of the output device. The playback progress bars of the at least two sub-files may be a playback progress bar of a currently played sub-file and a playback progress bar of another sub-file, or may be playback progress bars of any two sub-files.
Specifically, multiple playback progress bar list patterns may be generated according to various display forms of the playback progress bars in the playback progress bar list, and the multiple playback progress bar list patterns are pre-stored in a server or directly stored in a memory. The multiple playback progress bar list patterns have different appearance display forms.
The playback progress bar list pattern may be stored in the memory in advance. Before the playback progress bar list is displayed, the processor determines, from preset playback progress bar list patterns, a target playback progress bar list pattern that needs to be displayed currently, and displays the playback progress bar list according to the target playback progress bar list pattern.
Specifically, in an implementation manner, the user may invoke the multiple preset playback progress bar list patterns on a current playback interface of the video file by using the input device, and select, from the multiple preset playback progress bar list patterns, the target playback progress bar list pattern that needs to be displayed currently. The processor may determine, from the stored playback progress bar list pattern according to a user selection instruction received by the receiver, the target playback progress bar list pattern that needs to be displayed currently, and display the playback progress bar list according to the target playback progress bar list pattern.
In another implementation manner, the processor may determine, according to a predetermined rule, the target playback progress bar list pattern that needs to be displayed currently.
Specifically, the predetermined rule includes: displaying a playback progress bar of a currently played sub-file and a playback progress bar of a sub-file adjacent to the currently played sub-file. For example, referring to
In another implementation manner, the predetermined rule may further include: displaying a playback progress bar of a currently played sub-file and a playback progress bar of a next sub-file of the currently played sub-file.
S303. A receiver receives a user instruction used for selecting, according to the playback progress bars, a target sub-file that needs to be played.
When a sub-file different from the currently played sub-file needs to be played, the user selects, according to display statuses of the playback progress bars, the target sub-file that needs to be played, and sends, to the receiver by using the input device, the instruction used for selecting the target sub-file that needs to be played. Specifically, the selection instruction may be sent by using a forward or backward function button of the input device, or the selection instruction may be sent by using the input device to directly enter an episode number corresponding to the target sub-file that needs to be played.
For example, in an implementation manner, the playback progress bar of the currently played sub-file may include a progress sliding block, used to indicate a playback location of the currently played sub-file. The user may send, by using the input device to move the progress sliding block, the instruction used for selecting the target sub-file that needs to be played. Specifically, the user sends, by using the input device (for example, pressing a forward or backward key of a remote controller), an instruction used for moving the progress sliding block. The receiver receives the instruction and transmits the instruction to the processor, and the processor moves the progress sliding block according to the instruction. The output device may play the sub-file when the progress sliding block is moved to a playback progress bar corresponding to the target sub-file selected by the user. Specifically, the processor may determine, according to a confirmation instruction sent by the input device, the target sub-file that needs to be played, or may directly determine, according to the instruction used for moving the progress sliding block sent by the input device, the target sub-file that needs to be played. When the progress sliding block is moved by using the input device, after the receiver receives the instruction used for moving the progress sliding block, the processor determines watching progress of the target sub-file, and controls the progress sliding block to move to an end location to which the target sub-file is played last time. If the target sub-file is never watched, the sliding block is controlled to move to a start location of the target sub-file. In this case, the user may be prompted whether to continue watching from an end location of last playback, and the user may perform confirmation by using the input device.
S304. The output device plays the target sub-file according to the instruction.
After receiving the user instruction used for selecting the target sub-file that needs to be played, the receiver transmits the instruction to the processor. The processor invokes data of the target sub-file according to the instruction, and transmits the data of the target sub-file to the output device by using a transmitter. The output device replaces the currently played sub-file with the target sub-file and plays the target sub-file. The playback progress bar list disappears.
In the video playback method provided in the embodiment of the present invention, a playback progress bar list of a sub-file is displayed on a playback interface of a video file, and playback progress and status of the sub-file may be displayed intuitively. A user can accurately learn current watching statuses of all sub-files according to the playback progress bar list, so as to avoid repeatedly opening a file that does not need to be watched.
An embodiment of the present invention further provides a video playback apparatus.
Specifically, the obtaining module 910 is configured to obtain playback progress information of all sub-files in a video file.
The display module 920 is configured to display a playback progress bar list, where the playback progress bar list includes playback progress bars of at least two sub-files, and a playback progress bar of any sub-file displays playback progress of the any sub-file according to playback progress information corresponding to the any sub-file and obtained by the obtaining module.
The receiving module 930 is configured to receive a user instruction used for selecting, according to the playback progress bars, a target sub-file that needs to be played.
The playing module 940 is configured to play the target sub-file according to the instruction received by the receiving module.
Optionally, the apparatus further includes a determining module 950, configured to determine a target playback progress bar list pattern from at least two preset playback progress bar list patterns according to a predetermined rule. The display module 920 is configured to display the playback progress bar list according to the target playback progress bar list pattern. The at least two playback progress bar list patterns have different appearance display forms.
Optionally, the determining module 950 is further configured to determine whether a currently played sub-file is played to a file end stage; and if the currently played sub-file is played to the file end stage, the obtaining module 910 obtains the playback progress information of all the sub-files in the video file; or if the currently played sub-file is not played to the file end stage, the playing module 940 continues playing the currently played sub-file.
Optionally, the receiving module 930 is further configured to receive a file playback switching instruction, where the file playback switching instruction is used to instruct to switch a currently played file.
Optionally, the obtaining module 910 is further configured to obtain a sequential location of the currently played sub-file in the video file; and
the determining module 950 is further configured to determine, according to the sequential location, a file playback progress bar template that needs to be displayed currently.
Optionally, a playback progress bar of the currently played sub-file has a progress sliding block, used to indicate a playback location of the currently played sub-file;
the receiving module 930 is further configured to receive an instruction used for moving the progress sliding block; and
the apparatus further includes a moving module 960, where the moving module 960 is configured to move, according to the instruction, the progress sliding block to a playback progress bar corresponding to the target sub-file.
It should be noted that the video playback apparatus provided in the embodiment of the present invention is presented in a combination form of function modules. The “module” may refer to an application-specific integrated circuit (ASIC), an electronic circuit, a processor that can execute one or more software programs and a memory, a combined logic circuit and/or another component that can provide the foregoing functions. As a specific example, a person skilled in the art may understand that the display module 920 may be implemented by the output device 140 in
Specifically, the video playback apparatus provided in the embodiment of the present invention is specifically configured to execute the technical solution provided in the foregoing method embodiment. Implementation principles and technical effects thereof are similar, and are not repeatedly described herein.
An embodiment of the present invention further provides another video playback apparatus.
a data interface 1110, a memory 1120, a processor 1130, and a communications bus 1140. The data interface 1110, the memory 1120, and the processor 1130 are connected by using the communications bus.
The memory 1120 is configured to store a software program instruction.
The processor 1130 is configured to execute the software program instruction stored in the memory, so as to implement the video playback method provided in the method embodiment.
The data interface 1110 is configured to obtain data or output data under the control of the processor 1130.
The video playback apparatus provided in the embodiment of the present invention is specifically configured to execute the technical solution provided in the foregoing method embodiment. Implementation principles and technical effects thereof are similar, and are not repeatedly described herein.
Persons of ordinary skill in the art may understand that all or some of the steps of the method embodiments may be implemented by a program instructing relevant hardware. The program may be stored in a computer-readable storage medium. When the program runs, the steps of the method embodiments are performed. The foregoing storage medium includes: any medium that can store program code, such as a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc.
Finally, it should be noted that the foregoing embodiments are merely intended for describing technical solutions of the present invention, but not for limiting the present invention. Although the present invention is described in detail with reference to the foregoing embodiments, persons of ordinary skill in the art should understand that they may still make modifications to the technical solutions described in the foregoing embodiments or make equivalent replacements to some or all technical features thereof, without departing from the scope of the technical solutions of the embodiments of the present invention. Additionally, statements made herein characterizing the invention refer to an embodiment of the invention and not necessarily all embodiments.
Number | Date | Country | Kind |
---|---|---|---|
201510847800.1 | Nov 2015 | CN | national |
This application is a continuation of U.S. patent application Ser. No. 15/812,828 filed on Nov. 14, 2017, which is a continuation of International Patent Application No. PCT/CN2016/083195, filed on May 24, 2016, which claims priority to Chinese Patent Application No. 201510847800.1, filed on Nov. 27, 2015. All of the aforementioned patent applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | 15812828 | Nov 2017 | US |
Child | 16601136 | US | |
Parent | PCT/CN2016/083195 | May 2016 | US |
Child | 15812828 | US |