System and method for video navigation and client side indexing
First Claim
1. A method for providing on-the-fly client-side indexing and navigation of video data, comprising the steps of:
- opening a main connection for a client-side device to receive transmissions of a data flow, wherein said data flow is not indexed;
opening a second connection for the client-side device to receive at least one look-x data stream comprising a plurality of data from said data flow, wherein said plurality of data is not indexed such that no frames in said data flow have been associated with any points in the look-x data stream;
indexing with the client-side device at least one point of the look-x data stream to at least one corresponding point in said data flow, wherein said indexing step with the client-side device further comprises determining a particular timeframe in said data flow and selecting on-the-fly at least one look-x point for display to represent the at least one corresponding point in said data flow at said particular timeframe and wherein selecting on-the-fly step includes automatically and without user intervention associating the look-x point with the point in said data flow while said data flow and said look-x data stream are being received at the client-side device; and
providing control of a playback position of said data flow based on the indexed points in the look-x data stream.
2 Assignments
0 Petitions
Accused Products
Abstract
A system is provided where a number of representative video snapshots are displayed on a timeline indicating a position to jump to in a video using control buttons, such as fast forward, reverse, or a timeline scroll bar. The video snapshots are obtained by opening a low resolution connection to a video server to receive forward looking video segments. The forward looking video segments are summarized and the representative video snapshots are selected and displayed to provide a reference frame for the user to select a timeline position, or snapshots directly linked to positions in the higher resolution video. Backward looking video segments may be similarly summarized from the low resolution connection, or alternatively from video previously played. As the video progresses, new forward looking video segments are received and new representative video snapshots are summarized and displayed in close proximity with the video being played.
70 Citations
20 Claims
-
1. A method for providing on-the-fly client-side indexing and navigation of video data, comprising the steps of:
-
opening a main connection for a client-side device to receive transmissions of a data flow, wherein said data flow is not indexed; opening a second connection for the client-side device to receive at least one look-x data stream comprising a plurality of data from said data flow, wherein said plurality of data is not indexed such that no frames in said data flow have been associated with any points in the look-x data stream; indexing with the client-side device at least one point of the look-x data stream to at least one corresponding point in said data flow, wherein said indexing step with the client-side device further comprises determining a particular timeframe in said data flow and selecting on-the-fly at least one look-x point for display to represent the at least one corresponding point in said data flow at said particular timeframe and wherein selecting on-the-fly step includes automatically and without user intervention associating the look-x point with the point in said data flow while said data flow and said look-x data stream are being received at the client-side device; and providing control of a playback position of said data flow based on the indexed points in the look-x data stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 19, 20)
-
-
10. A device for client-side video indexing, comprising:
-
a video player comprising; a client-side main data stream connection for receiving transmissions of a non-indexed data flow; a client-side look-x data stream connection for receiving at least one non-indexed look-x data transmission of the data flow wherein no frames in said data flow have been associated with any points in the look-x data stream; a client-side controller adapted to index on-the-fly at least one look-x point of the look-x data stream to a corresponding at least one point in said data flow by summarizing the look-x data stream and generating for display the at least one look-x point to the corresponding at least one point in said data flow wherein indexing on-the-fly step includes automatically, and without requiring user input, associating the look-x point with the point in said data flow while said data flow and said look-x data stream are being received at the client-side device; and a display for displaying at least one of the indexed look-x points. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A method for client-side navigating and indexing of video data, comprising the steps of:
-
opening a client-side main connection for receiving a video stream without an existing index; opening a client-side second connection for receiving transmission of at least one look-x data stream without an existing index, such that no frames in said video stream have been associated with any points in the look-x data stream; generating on-the-fly on the client-side an index, the index comprising at least one look-x data point and relating said at least one look-x data point to at least one point corresponding in time within said data flow wherein the generating on-the-fly step includes automatically, and without requiring user intervention, associating the look-x data point with the point in time within said data flow while said data flow and said look-x data stream are being received at the client-side; and providing control of a playback position of said data flow based on at least one user-selected look-x data point corresponding to at least one of the indexed points in the look-x data stream.
-
-
16. A method for indexing and navigating a video stream, the method comprising:
-
opening a client-side connection to receive a main video stream; opening at least another client-side connection to receive at least one look-x data stream of the main video stream such that no frames in said video stream have been associated with any points in the look-x data stream; generating at least one keyframe at the client side that references at least one corresponding timeframe point in the main video stream, wherein the generating step results in an index created on-the-fly on the client side and wherein the generating step includes automatically, and without requiring user input, associating the timeframe point with the keyframe while said data flow and said look-x data stream are being received at the client-side; displaying the at least one keyframe to a user; providing control of a playback position of said main video stream based on the at least one keyframe that references the at least one corresponding point in the main video stream; and updating the generating and displaying steps to keep pace with a general speed of playback of the main video stream. - View Dependent Claims (17, 18)
-
Specification