Trick mode, sometimes called trick play, is a feature of digital video systems including Digital Video Recorders and Video on Demand systems that mimics the visual feedback given during fast-forward and rewind operations that were provided by analogue systems such as VCRs. Trick play manipulates the video stream to include only a subset of frames.
With an analogue system, the visual fast-forward/rewind effect was generated simply by transmitting the frames faster and/or in reverse; there was an inevitable loss of frame synchronization or 'tearing' but this was accepted as the norm. With a digital system, it is unlikely that the decoder can process the digital stream significantly faster than normal, and certainly not backwards. Therefore, only a subset of frames can be presented to the decoder.
This is made harder by the fact that, in video compression systems such as MPEG-2 and H.264, many frames depend on previous frames for display, and hence cannot be decoded independently. Only certain "I" or "Intra" frames are independent. As a result, a system offering trick mode has to select only those frames for display, which requires analysis of the digital stream either at the time of playback or in advance.
In a single-user disk-based system, it is possible to scan the media file in real time to locate the independent frames, but in a network-based video-on-demand system, the bandwidth allocated to the client is fixed, so the server has to use pregenerated 'hint' or 'index' information to locate suitable frames, and then play them out at the selected fast-forward or rewind speed within the original bandwidth envelope. Alternatively, the server may pregenerate an entirely new video stream with at least one forward and backward speed and switch to it when requested.