The present disclosure relates to the technical field of video, in particular, a video frame capturing method and device.
Watching videos on terminals such as smartphones and computers has gradually become a part of life for the users. When a user is watching videos, he or she often wants to save an encountered video highlight (e.g., a wonderful dialogue) to the local or share the same on a social platform. The best to express a video highlight is typically several video frames of the highlight. However, there is no convenient means in the prior art that enables the user to capture the desired video frames from the video for easy saving or sharing.
In one aspect, in general, the present disclosure describes a video frame capturing method and device for enabling a user to capture a plurality of video frames from a video to form a picture for saving or sharing.
In another aspect of the present disclosure, there is described a video frame capturing method, comprising: displaying in a video playback interface, in response to a user operating a first control in the video playback interface, pictures each of which corresponds to one of a predetermined number of video frames in proximity to a current video frame being played;
receiving from the user a selection of at least a part of the pictures; and displaying a composite picture formed using selected pictures.
In another aspect of the present disclosure, there is described a video frame capturing device, comprising: a picture displayer to display in a video playback interface, in response to a user operating a first control in the video playback interface, pictures each of which corresponds to one of a predetermined number of video frames in proximity to a current video frame being played; a selection receiver to receive from the user a selection of at least a part of the pictures; and a composite picture displayer to display a composite picture formed using selected pictures.
Embodiments of the present disclosure can have one or more advantages, including for example, to provide in the video playback interface pictures corresponding to a plurality of video frames in proximity to the current video frame for the user to select, and form a composite picture using the selected pictures, so that the user can capture a plurality of video frames of the video to form a composite picture for saving or sharing.
The drawings incorporated in and forming a part of the present description illustrate exemplary embodiments, features, and aspects of the present disclosure, and are used for explaining the principles of the present disclosure.
Various exemplary examples, features and aspects of the present disclosure will be described in detail with reference to the drawings. The same reference numerals in the drawings represent parts having the same or similar functions. Although various aspects of the examples are shown in the drawings, it is unnecessary to proportionally draw the drawings unless otherwise specified.
Herein the term “exemplary” means “used as an instance or example, or explanatory”. An “exemplary” example given here is not necessarily construed as being superior to or better than other examples.
Numerous details are given in the following examples for the purpose of better explaining the present disclosure. It should be understood by a person skilled in the art that the present disclosure can still be realized even without some of those details. In some of the examples, methods, means, units and circuits that are well known to a person skilled in the art are not described in detail so that the principle of the present disclosure become apparent.
a step 101 of displaying in the video playback interface, in response to a user operating a first control in the video playback interface, pictures each of which corresponds to one of a predetermined number of video frames in proximity to a current video frame being played;
a step 102 of receiving from the user a selection of at least a part of the pictures; and
a step 103 of displaying a composite picture formed using selected pictures.
The embodiment of the present disclosure provides in the video playback interface pictures corresponding to a plurality of video frames in proximity to the current video frame for the user to select, and forms a composite picture using the selected pictures, so that the user can capture a plurality of video frames of the video to form a composite picture for saving or sharing.
The term “video playback interface” can indicate a video playback window in a webpage, a playback interface of video player application software, or any other interface applicable for video playback.
Each of the predetermined number of video frames in proximity to a current video frame being played can include one or both of: video frames subsequent to the current video frame being played; and video frames preceding the current video frame being played. For example, if the predetermined number is N, it can be N video frames subsequent to the current video frame being played (the current video frame can be included), or N video frames preceding the current video frame being played (the current video frame can be included), or N1 video frames subsequent to the current video frame being played and N2 video frames preceding the current video frame being played, as long as the relationship N1+N2=N−1 is satisfied, i.e., plus the current video frame, there are N video frames in total.
The video frames can be consecutive or non-consecutive. The principles for selecting the video frames can be set as desired, which is not limited in the present disclosure.
To facilitate the description, this description is made with video frames subsequent to the current video frame being played as an example.
One exemplary implementation of the embodiment of the present disclosure is described below with reference to
Some controls can be provided above the playback window. In one example, these controls can include the first control for example, a button “Share Frame by Frame”, or an operable control in other form, by clicking which, the user causes the playback interface to display pictures corresponding to a predetermined number of video frames following the current video frame being played, each video frame corresponding to one picture. The video can be paused by operating the first control.
It should be noted that, the term “control” herein can be an operable control in any form, for example, a button, a slide, etc. The operation of the control can include, for example, but not limited to, click, hovering the cursor, slide, etc. For the purpose of simple description, the examples below mainly use “button” and “click” as examples of the control and the operation of the control. The present disclosure is not limited by this.
In another example, the first control can be provided yet not directly in a control of the playback window. For example, a second control such as a “Share” button can be provided in the playback window (as shown in
A selection of the user of at least a part of the pictures among the pictures displayed can be received. A composite picture formed by the selected pictures can be displayed. In one example, a limit can be imposed on the number of the selectable pictures for the user, so as to facilitate the dimension control of the subsequently formed composite picture (or can be called a long picture). For example, it can be limited to 6 pictures.
For example, when each of the video frames are converted to the corresponding pictures as described in the foregoing, Checkboxes option of HTML can be added to each picture, so that the user can select multiple pictures. The client can use a javascript to acquire the type value of the selected pictures and send a request to the server by ajax technology. The server, in response to the request, returns a Uniform Resource Locator (URL) address of the composite picture. The client can exhibit a new popover view including the composite picture in a view layer based on the above address. One example of the specific processing method for the server generating the composite picture is described below. The server can generate a composite picture according to picture ID information transmitted back by the client. With the php language as an example, an extension library of graphs i.e., GD library can be processed by using php. GD library provides a series of application program interfaces (API) for processing pictures. The composite picture can be generated using the GD library. Specifically, a large canvas can be calculated according to the width and height of the selected pictures so as to combine multiple pictures. The URL address of the composite picture is returned to the client.
In the example shown in
In one example, the third popover view further includes a control for saving the composite picture. In response to the user operating the control for saving the composite picture (e.g., a Save button), the composite picture can be saved in the terminal. One exemplary implementation is described below. Document object provides an execCommand method. The contents in an editable region can be operated by transmitting parameters to this method. For example, document.execCommand (“saveAs”) can save the picture to documentation in a local storage device of the client. A click event can be bound to the Save button. When the event is triggered, a packaged javascript can be called to realize the function of saving the picture.
When the operation of sharing or saving the picture is completed, normal playback of the video is restored.
In one example, there can be further displayed in the third popover view a “Return” button. In response to a user clicking the Return button, the state as shown in
The predetermined number of video frames in proximity to a current video frame being played include one or both of: video frames subsequent to the current video frame being played and video frames preceding the current video frame being played.
In one example, the picture displayer 701 can display, in response to the user operating the first control in the video playback interface, a first popover view in the video playback interface, the first popover view containing the picture.
In one example, the device can further comprises a second popover view displayer to display, in response to the user operating a second control in the video playback interface, a second popover view in the video playback interface, the second popover view containing the first control.
In one example, the composite picture can further contain link information orienting to an address of the video playback interface.
In one example, the link information can be a two-dimensional code associated with the address of the video playback interface.
In one example, the composite picture displayer can, in response to receiving from the user the selection of at least a part of the pictures, cease to display the first popover view, and display a third popover view containing the composite picture.
In one example, the third popover view can include a third control for sharing the composite picture. The device can further comprise a sharer to, in response to a user operating the third control, share the composite picture on a network platform.
In one example, the third popover view can include a fourth control for saving the composite picture. The device can further comprise a saver to, in response to a user operating the fourth control, save the composite picture.
The video frame capturing device 1100 includes a processor 1110, a communications interface 1120, a memory 1130, and a bus 1140, wherein the processor 1110, the communications interface 1120, and the memory 1130 perform communications with each another via the bus 1140.
The communications interface 1120 is used for communications with network devices including for example, a virtual machine management center, a shared memory, and the like.
The processor 1110 is used for executing a program. The processor 1110 can be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present disclosure.
The memory 1130 is used for storing files. The memory 1130 can include a high speed RAM memory, and can further include a non-volatile memory such as at least one disk memory. The memory 1130 can also be a memory array. The memory 1130 can be partitioned, wherein the partitioned segments can be combined to form a virtual volume according to certain rules. In one possible implementation, the foregoing program can be program codes including instructions to be executed by a computer. The program can be specifically applied for executing operations of each step of Embodiment 1.
Those of ordinary skill in the art will appreciate that the various exemplary units and algorithm steps in the embodiments described herein can be implemented in electronic hardware or a combination of computer software and electronic hardware. Whether these functions are implemented in form of hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can select different methods for implementing the described functions for a particular application. But such implementation should not be considered to be beyond the scope of the present disclosure.
If the function is implemented in form of computer software and sold or used as a stand-alone product, it is considered to some extent that all or part of the technical solution of the present disclosure (for example, a part contributing to the prior art) is embodied in form of a computer software product. The computer software product is typically stored in a computer readable non-volatile storage medium, including instructions for causing a computer device (which may be a PC, a server, or a network device, etc.) to execute all or a part of the steps of the methods according to each embodiment of the present disclosure. The storage medium includes various media that can store program codes, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
Although the embodiments of the present disclosure have been described above, the protection scope of the present disclosure is not limited herein. Any variations and modifications that may occur to one skilled in the art without departing from the scopes of the described embodiments should be included in the protection scope of the present disclosure. Therefore, the scope of the disclosure should only be limited by the appended claims.
The video frame capturing method and device according to some embodiments of the present disclosure enable a user to capture multiple video frames of a video to form a composite picture for saving or sharing.
Number | Date | Country | Kind |
---|---|---|---|
201610213548.3 | Apr 2016 | CN | national |
This application is the national stage, under 35 USC 371 of PCT application PCT/CN2016/098629, filed Sep. 9, 2016 is based upon and claims the benefit of a priority of Chinese Patent Application No. 201610213548.3, filed on Apr. 7, 2016, the entire contents of which are incorporated herein by reference.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2016/098629 | 9/9/2016 | WO | 00 |