Digital VCR

People

  • Edward Chang
  • Proposal

    Objectives

    Overview

    Description

    As part of the support infrastructure we have implemented a video buffer that supports VCR-like operations such as slow motion, pause, replay, and fast forward.  The buffer could be used in applications such as personal sports replays, self-paced lectures (see Section ), flexible guided tours (see Section ), or for downloading a movie during the night that you want to watch tomorrow.

    To implement the VCR-like interactive features, a cache manager is required that is able to buffer a large amount of data and supply it to the decoder in real-time.  Since the memory requirement can be huge, a main-memory-only buffering approach may be prohibitively costly. The alternative is using a memory-disk integrated cache (MEDIC) . Since the per-byte disk cost is about one hundredth of the per-byte memory cost, MEDIC is economically attractive.

    MEDIC carefully allocates a limited amount of memory to competing tasks, i.e. to receiving new data from network channels, to writing data to disk as memory fills up, to reading data from disk as needed, and to holding data for decoding and playback. Since data is concurrently written to the disk cache and read from the disk cache, MEDIC must intelligently issue IOs to maximize throughput and to avoid undue conflicts.

    With less than  8 MB of RAM our video buffer  can support the interactive operations discussed above without causing any ``jitter''. This result confirms the theoretical study . The Figure above shows an application of video buffering for implementing a Virtual VCR.
     

    Related Publications

    Last Updated: Feb. 25, 1999, slusallek@graphics.stanford.edu