Public Software Release ----------------------- FULLY SCALABLE, LOW-LATENCY VIDEO CODEC BASED ON 2 & 3 DIMENSIONAL SUBBAND TRANSFORMATION AND INTER-FRAME PROGRESSIVE CODING OF SUBBAND COEFFICIENTS WITH SCALING FOR CONSTANT BIT RATE (CBR) OR CONSTANT DISTORTION (VBR) CRITERION by David S. Taubman University of California, Berkeley ----------------------- I am pleased to announce the release of scalable video compression and decompression software. This software may be regarded as a sequel to our previously released scalable image and video codec (June 30, 1994). Both the new codec and the previously released codec are available from http://www-video.eecs.berkeley.edu/download/scalable Unlike conventional compression standards, these codecs perform fully scalable compression of both video and images. This means that subsets may be extracted from the compressed data stream so as to satisfy virtually any constraint on bit rate and a wide range of compatible display frame resolutions and frame rates. That is, the video is compressed once only, after which scaling may occur to meet unpredictable demands imposed by storage, distribution and display systems. The new codec differs from our previously released software codec in two primary respects: 1) The new codec exploits temporal redundancy by using both temporal subband decomposition and inter-frame progressive coding techniques, rather than temporal subband decomposition alone. As a consequence, fewer levels of temporal subband decomposition are required to achieve good compression with the new codec than with the previously released one. As such, the new compression/decompression algorithm is able to achieve good compression efficiency with much less memory and much lower end-to-end delay than that implemented by our previous software release. 2) Whereas our previously released software compression algorithm generated a bit stream, the new software generates a packet stream. The distinction between these two cases is that scaling entities must be intimately familiar with the detailed bit stream syntax if scaling is to take place within the context of a raw bit stream. On the other hand, the packet stream imposes a higher level abstraction on top of this syntax, so as to enable simple, generic scaling entities to select from a pre-defined set of bit rate targets. Simple headers in the packet stream provide sufficient information to perform scaling with either a constant bit rate or constant distortion criteria. These concepts are explained in the technical paper included with the software release. Note: All correspondence should be directed to: avz@eecs.berkeley.edu For suggestions or questions regarding envisaged hardware or software implementations, algorithm enhancements or further developments, feel free to contact Professor Avideh Zakhor at avz@eecs.berkeley.edu The `scalable2.tar.Z' file contains: software and documentation; a technical paper, discussing the theoretical aspects of the algorithm, scaling operations and experimental performance results; and examples. Software is driven by a general configuration language, enabling numerous compression algorithms to be generated within the scalable context. Decompression with compatible, but not identical configurations enables frame resolution and frame rate scalability. Although frame rate and frame resolution scalability are primarily of value for compatible decompression, bit rate scalability is of value throughout the path from compression, possibly to storage, through distribution and eventually to decompression. Bit rate scalability is currently only implemented within the decompression software, so that bit rate constraints may be imposed immediately before decompression. We note, however, that the packetization scheme enables simple, generic rate scaling operations to be implemented anywhere in the distribution path taken by the scalable data stream. The decompression software may be used in conjunction with a separate viewing console with VCR-like controls for video playback, rewind, fast forward, etc., on high end workstations. The viewing console software itself is not included in `scalable2.tar.Z', but may be recovered from the `scalable.tar.Z' file containing our previously released scalable codec. Initial investigations suggest the following: For video compression of progressively scanned video sequences, the compression efficiency is comparable to that of the non-scalable MPEG-1 standard. Generally, performance is significantly better than MPEG when camera motion conforms to a pan model (i.e. still, jitter, and true pan), regardless of the amount of foreground motion. On the other hand, performance can be significantly worse (2-3 dB) than MPEG when camera motion is zoom or translation and when there is little or no complex foreground motion. It is important to appreciate, however, that the primary feature of this suite of compression algorithms is scalability. Computational complexity appears to be perhaps several times that of MPEG, however the algorithm is inherently amenable to highly parallel hardware or software implementation. Feel free to experiment with the software and send us feedback regarding your experiences and/or application ideas. David Taubman (August 29, 1994)