A video processing method for generating a reverse video stream from an original video stream, comprising the steps of: - Buffering coded frames of the original video stream; - decoding the buffered coded frames and - generating a reverse video stream wherein the decoded frames are organized according to an order which is opposite to the display order of the original video stream; and comprising the steps of: a) selecting between frames of the original video stream a frame to be displayed, selection of the frame being made based on the frames display order of the reverse video stream; b) checking in a list of decoded frames if all reference frames of the original video stream necessary to decode the selected frame have already been decoded and the relative decoded frames are actually buffered; c) if all reference frames have been decoded and are actually buffered, go to step d), if not all reference frames have been decoded and are actually buffered, decoding all reference frames of the selected frame that are not in the list of decoded frames and buffering the relative decoded reference frame, wherein if no buffer memory is available for buffering one decoded frame the buffer storing the oldest decoded frame not present in a list of frames to be displayed and not storing a reference frame for the selected frame is released and the decoded frame is buffered in the released buffer, d) decoding the selected frame and buffering the decoded selected frame; e) updating a list of frames to be displayed with order information for outputting the decoded selected frame as a frame of the reverse video stream, f) selecting a next video frame of the original video stream, said next video frame being the next video frame of the reverse video stream, g) repeating steps a) to e) for said next video stream. - Buffering coded frames of the original video stream; - decoding the buffered coded frames and - generating a reverse video stream wherein the decoded frames are organized according to an order which is opposite to the display order of the original video stream; a) selecting between frames of the original video stream a frame to be displayed, selection of the frame being made based on the frames display order of the reverse video stream; b) checking in a list of decoded frames if all reference frames of the original video stream necessary to decode the selected frame have already been decoded and the relative decoded frames are actually buffered; c) if all reference frames have been decoded and are actually buffered, go to step d), if not all reference frames have been decoded and are actually buffered, decoding all reference frames of the selected frame that are not in the list of decoded frames and buffering the relative decoded reference frame, wherein if no buffer memory is available for buffering one decoded frame the buffer storing the oldest decoded frame not present in a list of frames to be displayed and not storing a reference frame for the selected frame is released and the decoded frame is buffered in the released buffer, d) decoding the selected frame and buffering the decoded selected frame; e) updating a list of frames to be displayed with order information for outputting the decoded selected frame as a frame of the reverse video stream, f) selecting a next video frame of the original video stream, said next video frame being the next video frame of the reverse video stream, g) repeating steps a) to e) for said next video stream.