1. Field of the Invention
Embodiments of the present invention relate generally to video playback and more specifically to real-time video segmentation on a GPU for scene and take indexing.
2. Description of the Related Art
A typical video playback application includes user controls for actions including “play,” “pause,” “stop,” “fast forward,” and “reverse.” The video playback application may execute on a device such as a digital versatile disk (DVD), a personal computer (PC), or any other device configured to perform video playback. The “fast forward” controls are configured to advance the rate of playback in time. For example, asserting the fast forward control may cause the playback application to speed up the rate of playback by two times, four times, or any other useful rate. Similarly, asserting the reverse controls cause playback to reverse at a user selectable rate of, for example, one times the normal rate, two times the normal rate, or any other useful rate.
One drawback of this approach is that time-based forward and reverse controls do not match the actual structure of common video content or the desired outcome for the user. Video content is typically assembled from shorter continuous scenes of varying lengths of time, where each scene includes a short span of consistent subject matter. Reversing through previously viewed material is currently cumbersome because the reverse mechanism is based on time rather than content, which is a more naturally perceived type of progression.
One solution to this problem includes organizing video content into “chapters” and allowing the user to select which “chapter” of the video content they wish to view. While this solution exists in many DVD solutions, the granularity of the chapters is too large, precluding this solution from any useful fast forward or reverse application from a user's perspective.
As the foregoing illustrates, what is needed in the art is a mechanism for reversing or fast forwarding through video content that advances efficiently according to content rather than time.