METHOD FOR SMOOTHLY PLAYING A VIDEO STREAM IN REVERSE
The present invention relates to a method for displaying a video stream in reverse smoothly comprising the steps of: (a) determining at least one GOP for reverse display; (b) selecting all the frames of said GOP, a subsequent I frame and if present, the B frames positioned between said subsequent I frame and the next I or P frame, in the encoded order, into a selected group; (c) if present, discarding from said selected group the B frames that are positioned between the primary I frame of said GOP and the next I or P frame, in the encoded order; (d) decoding and storing the remaining frames of said selected group; and (e) loading for display at least one of said decoded frames in a reverse display order.
1 . A method for displaying a video stream in reverse smoothly comprising the steps of
a. determining at least one GOP for reverse display;
b. selecting all the frames of said GOP, a subsequent I frame and if present, the B frames positioned between said subsequent I frame and the next I or P frame, in the encoded order, into a selected group;
c. if present, discarding from said selected group the B frames that are positioned between the primary I frame of said GOP and the next I or P frame, in the encoded order;
d. decoding and storing the remaining frames of said selected group; and
e. loading for display at least one of said decoded frames in a reverse display order.
2 . A method according to claim 1 , where all the remaining decoded frames are loaded for display.
3 . A method according to claim 1 , where the remaining decoded frames are loaded for display excluding the primary I frame.
4 . A method according to claim 1 , where the remaining decoded frames are loaded for display excluding the subsequent I frame.
5 . A method according to claim 1 , where the storing of the frames is done in a buffer that is capable of storing more than 2 average GOPs of decoded frames.
6 . A method according to claim 5 , where part of the buffer is used for loading one GOP while another part of said buffer is used for storing another GOP.
7 . A method according to claim 1 , where the temporal closest decoded frame that precedes the subsequent I frame is used for error resilience in case said subsequent I frame is corrupt.
8 . A method according to claim 1 , where the video stream is encoded according to any one of the following standards: MPEG-1 MPEG-2 or MPEG-4.
9 . A method according to claim 1 , where the video stream is encoded according to the H.264 standard.
10 . A method according to claim 1 , where a reference frame, not part of the selected group, of a frame of said selected group, is substituted by the closest temporal decoded frame of said selected group.