Applications of Digital Image Processing XXIV, Andrew G. Tescher, Editor, Proceedings of SPIE Vol (2001) 2001 SPIE X/01/$15.

Similar documents
Visual Communications and Image Processing 2002, C.-C. Jay Kuo, Editor, Proceedings of SPIE Vol (2002) 2002 SPIE X/02/$15.

MULTI-STATE VIDEO CODING WITH SIDE INFORMATION. Sila Ekmekci Flierl, Thomas Sikora

Free Viewpoint Switching in Multi-view Video Streaming Using. Wyner-Ziv Video Coding

Constant Bit Rate for Video Streaming Over Packet Switching Networks

Bit Rate Control for Video Transmission Over Wireless Networks

Pattern Smoothing for Compressed Video Transmission

CERIAS Tech Report Preprocessing and Postprocessing Techniques for Encoding Predictive Error Frames in Rate Scalable Video Codecs by E

Comparative Study of JPEG2000 and H.264/AVC FRExt I Frame Coding on High-Definition Video Sequences

WYNER-ZIV VIDEO CODING WITH LOW ENCODER COMPLEXITY

Joint Optimization of Source-Channel Video Coding Using the H.264/AVC encoder and FEC Codes. Digital Signal and Image Processing Lab

OBJECT-BASED IMAGE COMPRESSION WITH SIMULTANEOUS SPATIAL AND SNR SCALABILITY SUPPORT FOR MULTICASTING OVER HETEROGENEOUS NETWORKS

Module 8 VIDEO CODING STANDARDS. Version 2 ECE IIT, Kharagpur

Bridging the Gap Between CBR and VBR for H264 Standard

1022 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 4, APRIL 2010

Dual Frame Video Encoding with Feedback

COMP 249 Advanced Distributed Systems Multimedia Networking. Video Compression Standards

Scalable Foveated Visual Information Coding and Communications

Minimax Disappointment Video Broadcasting

Fast MBAFF/PAFF Motion Estimation and Mode Decision Scheme for H.264

JPEG2000: An Introduction Part II

Adaptive Key Frame Selection for Efficient Video Coding

THE CAPABILITY of real-time transmission of video over

INTRA-FRAME WAVELET VIDEO CODING

EMBEDDED ZEROTREE WAVELET CODING WITH JOINT HUFFMAN AND ARITHMETIC CODING

The H.263+ Video Coding Standard: Complexity and Performance

An Efficient Low Bit-Rate Video-Coding Algorithm Focusing on Moving Regions

Analysis of Packet Loss for Compressed Video: Does Burst-Length Matter?

Skip Length and Inter-Starvation Distance as a Combined Metric to Assess the Quality of Transmitted Video

INFORMATION THEORY INSPIRED VIDEO CODING METHODS : TRUTH IS SOMETIMES BETTER THAN FICTION

Error Concealment for SNR Scalable Video Coding

PAPER Parameter Embedding in Motion-JPEG2000 through ROI for Variable-Coefficient Invertible Deinterlacing

University of Bristol - Explore Bristol Research. Peer reviewed version. Link to published version (if available): /ISCAS.2005.

ENCODING OF PREDICTIVE ERROR FRAMES IN RATE SCALABLE VIDEO CODECS USING WAVELET SHRINKAGE. Eduardo Asbun, Paul Salama, and Edward J.

Implementation of MPEG-2 Trick Modes

Hierarchical SNR Scalable Video Coding with Adaptive Quantization for Reduced Drift Error

Chapter 2 Introduction to

Understanding Compression Technologies for HD and Megapixel Surveillance

Motion Re-estimation for MPEG-2 to MPEG-4 Simple Profile Transcoding. Abstract. I. Introduction

Digital Video Telemetry System

Packet Scheduling Algorithm for Wireless Video Streaming 1

THE popularity of multimedia applications demands support

Selective Intra Prediction Mode Decision for H.264/AVC Encoders

RATE-REDUCTION TRANSCODING DESIGN FOR WIRELESS VIDEO STREAMING

Efficient Bandwidth Resource Allocation for Low-Delay Multiuser MPEG-4 Video Transmission

MPEGTool: An X Window Based MPEG Encoder and Statistics Tool 1

Color Quantization of Compressed Video Sequences. Wan-Fung Cheung, and Yuk-Hee Chan, Member, IEEE 1 CSVT

Performance evaluation of Motion-JPEG2000 in comparison with H.264/AVC operated in pure intra coding mode

AUDIOVISUAL COMMUNICATION

ROBUST ADAPTIVE INTRA REFRESH FOR MULTIVIEW VIDEO

1. INTRODUCTION. Index Terms Video Transcoding, Video Streaming, Frame skipping, Interpolation frame, Decoder, Encoder.

Video coding standards

Video Codec Requirements and Evaluation Methodology

A Study of Encoding and Decoding Techniques for Syndrome-Based Video Coding

CODING EFFICIENCY IMPROVEMENT FOR SVC BROADCAST IN THE CONTEXT OF THE EMERGING DVB STANDARDIZATION

Lecture 1: Introduction & Image and Video Coding Techniques (I)

Dual frame motion compensation for a rate switching network

Error Resilient Video Coding Using Unequally Protected Key Pictures

Video Over Mobile Networks

Modeling and Optimization of a Systematic Lossy Error Protection System based on H.264/AVC Redundant Slices

Video Transmission. Thomas Wiegand: Digital Image Communication Video Transmission 1. Transmission of Hybrid Coded Video. Channel Encoder.

MEMORY ERROR COMPENSATION TECHNIQUES FOR JPEG2000. Yunus Emre and Chaitali Chakrabarti

Distributed Video Coding Using LDPC Codes for Wireless Video

DELTA MODULATION AND DPCM CODING OF COLOR SIGNALS

University of Bristol - Explore Bristol Research. Peer reviewed version. Link to published version (if available): /ICASSP.2016.

Project Proposal: Sub pixel motion estimation for side information generation in Wyner- Ziv decoder.

Copyright 2005 IEEE. Reprinted from IEEE Transactions on Circuits and Systems for Video Technology, 2005; 15 (6):

Region Adaptive Unsharp Masking based DCT Interpolation for Efficient Video Intra Frame Up-sampling

Chapter 10 Basic Video Compression Techniques

Line-Adaptive Color Transforms for Lossless Frame Memory Compression

Error prevention and concealment for scalable video coding with dual-priority transmission q

Interleaved Source Coding (ISC) for Predictive Video Coded Frames over the Internet

INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)

T he Electronic Magazine of O riginal Peer-Reviewed Survey Articles ABSTRACT

Research Article. ISSN (Print) *Corresponding author Shireen Fathima

Reduced complexity MPEG2 video post-processing for HD display

DCT Q ZZ VLC Q -1 DCT Frame Memory

Robust Transmission of H.264/AVC Video Using 64-QAM and Unequal Error Protection

Robust Transmission of H.264/AVC Video using 64-QAM and unequal error protection

Interleaved Source Coding (ISC) for Predictive Video over ERASURE-Channels

AN UNEQUAL ERROR PROTECTION SCHEME FOR MULTIPLE INPUT MULTIPLE OUTPUT SYSTEMS. M. Farooq Sabir, Robert W. Heath and Alan C. Bovik

Performance Evaluation of Error Resilience Techniques in H.264/AVC Standard

Unequal Error Protection Codes for Wavelet Image Transmission over W-CDMA, AWGN and Rayleigh Fading Channels

Error concealment techniques in H.264 video transmission over wireless networks

Impact of scan conversion methods on the performance of scalable. video coding. E. Dubois, N. Baaziz and M. Matta. INRS-Telecommunications

Error Resilience for Compressed Sensing with Multiple-Channel Transmission

Evaluation of SGI Vizserver

Analysis of a Two Step MPEG Video System

Analysis of Video Transmission over Lossy Channels

WITH the rapid development of high-fidelity video services

CONSTRAINING delay is critical for real-time communication

Systematic Lossy Forward Error Protection for Error-Resilient Digital Video Broadcasting

FAST SPATIAL AND TEMPORAL CORRELATION-BASED REFERENCE PICTURE SELECTION

FINE granular scalable (FGS) video coding has emerged

Systematic Lossy Error Protection of Video based on H.264/AVC Redundant Slices

ERROR CONCEALMENT TECHNIQUES IN H.264 VIDEO TRANSMISSION OVER WIRELESS NETWORKS

Principles of Video Compression

Intra-frame JPEG-2000 vs. Inter-frame Compression Comparison: The benefits and trade-offs for very high quality, high resolution sequences

176 IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 13, NO. 2, FEBRUARY 2003

Security in digital cinema

Relative frequency. I Frames P Frames B Frames No. of cells

Transcription:

Efficient Rate Control for Video Streaming Joseph C. Dagher, Ali Bilgin and Michael W. Marcellin Dept. of Electrical and Computer Engineering, The University of Arizona, Tucson, AZ 85721 ABSTRACT With the increasing importance of heterogeneous networks and time-varying communication channels, such as packetswitched networks and wireless communications, fine scalability has become a highly desirable feature in both image and video coders. A single highly scalable bitstream can provide precise rate control for constant bitrate (CBR) traffic and accurate quality control for variable bitrate (VBR) traffic. In this paper, we propose two methods that provide constant quality video under buffer constraints. These methods can be used with all scalable coders. Experimental results using the Motion JPEG2000 coder demonstrate substantial benefits. Keywords: Video streaming, JPEG2000, Rate control, Bit allocation, Buffering, Leaky-bucket, Scalable. 1. INTRODUCTION Streaming media over heterogeneous lossy networks and time-varying communication channels has become an active area of research. Several video coders that operate under the varying constraints of such environments have been recently proposed 1 5. These coders rely on feedback control algorithms that estimate the available bandwidth in the network. The controllers drive the encoding algorithm and adjust its rate accordingly, thus providing a higher average PSNR with less skipped frames, and decreasing the standard deviation of the PSNR values. Recently, scalability has become a very desirable feature in video coding. Besides several other advantages, scalable video coders produce excellent results when they are coupled with efficient rate control (RC) algorithms. Some video coders offer scalability on a coarse level, such asthempeg-2 and H.263 coders that produce layered bitstreams. Others offer fine scalability where the bitstreams can be decoded at any bitrate up to and including a maximum. Various attempts that make use of both fine and coarse scalability for efficient rate allocation have appeared in the literature. In 6,7 the authors utilize scalable codecs to achieveconstant quality video. Scalable codecs were also used in 8 10 to adaptively accommodate changing network conditions. In this paper, we propose two leaky-bucket rate allocation methods that provide constant quality video under buffer constraints. The basic block diagram of the proposed methods is given in Figure 1. This strategy relies on the highly scalable nature of JPEG2000, and can be summarized as follows: As illustrated in Figure 1, each frame is individually encoded using JPEG2000 at a rate somewhat above the target rate for the sequence. The compressed bitstreams are placed in a buffer prior to transmission or storage. The data is pulled out of the buffer at a constant rate. If the buffer is full (or nearly full) when a new compressed frame arrives, the bitstreams that are already in the buffer are truncated via the embedding property to maintain constant quality across all frames in the buffer. This paper is organized as follows. An overview of JPEG2000 and Motion JPEG2000 is presented in Section 2. Section 3 presents the two algorithms proposed for efficient video streaming. Experimental results are presented in Section 4, while Section 5 presents concluding statements. 2. OVERVIEW OF JPEG2000 AND MOTION JPEG2000 JPEG2000 is the latest ISO/IEC image compression standard. Here, we will provide a high level description of the JPEG2000 algorithm to assist the reader in comprehending the remainder of this paper. For a more thorough description, the interested reader is referred to 11 13. A simplified block diagram of a JPEG2000 encoder is illustrated in Figure 2. The input image is first passed through an optional component transform to achieve decorrelation across color components. The resultant components are wavelet transformed and quantized. Each subband is then divided into codeblocks. Codeblocks are Further author information: (Send correspondence to J.C.D.) J.C.D.: joseph@ece.arizona.edu, A.B.: bilgin@ieee.org, M.W.M.: marcellin@ece.arizona.edu 258 Applications of Digital Image Processing XXIV, Andrew G. Tescher, Editor, Proceedings of SPIE Vol. 4472 (2001) 2001 SPIE 0277-786X/01/$15.00

JPEG-2000 Compression Engine Input Frames Buffer Management Constant Rate Output Bitstream Buffer Figure 1. Basic block diagram of the proposed algorithm. compressed independently using a bitplane coder. The bitplane coder makes three passes over each bitplane of a codeblock. Each of these passes are referred to as coding passes or subbitplanes. Thus, an embedded bitstream is generated for each codeblock. The JPEG2000 encoder computes and stores the rate-distortion information corresponding to each subbitplane of every block. Tiling Component Transform Wavelet Transform Quantization Input Image 1 0 1 0 1 1 0 1 1 0 1 0 0 0 1 0 1 Bitplane Coder 0 1 0 1 1 0 1 1 Codeblock Bitstreams Codestream Generation 1 1 0 1 1 0 0 1 JPEG-2000 Codestream Figure 2. Block diagram of a JPEG2000 encoder. The creation of a JPEG2000 codestream involves the inclusion of a different number of coding passes from each individual codeblock bitstream. JPEG2000 offers tremendous flexibility in this regard. The decision on how many coding passes of a particular codeblock bitstream should be included can be based on any desired criteria. For example, optimum rate-distortion performance at a given target rate is achieved when the coding passes with greatest distortion-rate slopes are included. JPEG2000 includes the following features: ffl Superior compression performance: JPEG2000 provides excellent compression performance compared to previous standards; especially at low rates. ffl Multi-component image compression: JPEG2000 can handle images with dynamic ranges varying from 1 bit to 16 bits for each color component. ffl Lossless and lossy compression can be obtained from one bitstream in the course of progressive decoding. ffl Progressive transmission by pixel accuracy and resolution that allows the reconstruction of images at any rate and various resolution levels. ffl Random code-stream access and processing to allow operations such as compressed domain cropping, rotation, translation, filtering, feature extraction, scaling, etc. ffl Region-Of-Interest (ROI) encoding/decoding. Proc. SPIE Vol. 4472 259

ffl Robustness to bit-errors. The JPEG committee has decided to extend the JPEG2000 standardization effort to video coding. A work item, referred to as Motion JPEG2000 (MJP2), has been approved andiscurrently under development. MJP2 is essentially a file format for wrapping compressed frames generated by the JPEG2000 image coding engine 14 16. It is intended to generate a highly scalable bitstream, which can be easily edited. Thus, MJP2 does not include motion compensation. Each frame is individually compressed and stored. The scope of MJP2 encompasses video compression for applications including Digital Still Camera (DSC) and Camcorder, remote surveillance systems, digital video recording systems, and video capture cards. Preliminary results indicate that substantial performance gain and functionality can be achieved over existing Motion-JPEG methods 16. In a later section, we will analyze trade-offs between decoded video quality, buffer size, and delay. 3. THE LEAKY-BUCKET ALGORITHM The goal of the work described in this paper was to devise an algorithm to achieve constant quality video under buffer and rate constraints. Let N denote the number of frames to be encoded and let R denote the average rate per pixel, per frame. Thus the total bit budget for encoding all N frames is NR. Let D i and R i ;i 2f1; 2;::: ;Ng, denote the distortion and rate associated with the ith frame, respectively. Let B denote the size of the buffer that is used to hold the compressed image sequence. For a given buffer size B, the problem is to achieve minimum average distortion under the constraint that the total bit budget is not exceeded. In other words, for a fixed B, wewould like to select R i such that 1 argmin R i N NX i=1 D i (1) subject to the constraint that NX i=1 R i = NR: (2) The solution to this problem is given by 17 when the corresponding distortions are modeled by R i = R + 1 2 log 2 ff 2 i G : (3) D i = Gffl 2 2 2R ; (4) where ffl 2 is a constant that takes into account the performance of practical quantizers and G is the geometric mean of the variances of the frames, ffi 2 ;i2f1; 2;::: ;Ng, given by G = " NY i=1 ff 2 i # 1 N : (5) It can be seen from Equation (4) that D i is constant, 8i 2f1; 2;::: ;Ng. This suggests that for the simple model employed here, minimizing the average distortion should result in individual distortions being equal across all frames. In other words, minimizing average distortion should result in constant quality, as desired. It is important topointouttwo extreme cases at this point. The first one is when the buffer size is equal to the size of the entire compressed sequence, i.e. B = NR. This will clearly yield the best result, however for large N, buffering the entire compressed sequence may not be feasible due to memory constraints. Furthermore this approach will result in very large latency. The other extreme case is when only a single compressed frame is buffered. This case will provide minimum latency. However, the quality of the decoded sequence will vary widely across frames depending on rate-distortion properties of the sequence. 260 Proc. SPIE Vol. 4472

The algorithm presented in this paper was motivated by the work of 18 which presents a low memory implementation of a JPEG2000 image coder for coding a single frame. That algorithm employs a sliding window wavelet transform to generate wavelet coefficients in an incremental fashion. Each time enough lines of wavelet coefficients are available, they are divided into codeblocks, quantized, and entropy coded. The resulting embedded block bitstreams are subsequently sent to an output (FIFO) buffer. Compressed data are removed from this buffer for transmission at a constant rate.rate allocation is implicitly performed through the algorithm by which compressed data are added to the buffer. Whenever such data are to be added to the buffer, there is a possibility that not enough buffer space is available. When this occurs, the coding passes having lowest distortion-rate slopes are discarded. In general, these discarded coding passes come from both the buffer and the newly compressed data that is to be added to the buffer. 3.1. Single buffer rate controller (SBRC) In what follows we will describe what is an extension to the work of 18. As stated earlier, our MJP2 rate controller will be implemented to provide constant decoded video quality subject to buffer constraints. We have implemented two different RC algorithms to accomplish this task. Figure 1 shows a basic block diagram of our proposed SBRC algorithm. As shown, each frame is compressed independently using the JPEG2000 coding engine. The compression rate of each frame is somewhat greater than the target rate for the sequence. The resulting compressed bitstream is placed in a buffer awaiting transmission or storage. Then, the data is pulled out of the buffer at a constant rate. When the buffer is (or about to be) full, all bitstreams, including the ones already in the buffer along with the new bitstream to be inserted, are truncated via the embedding property to maintain constant quality across all frames in the buffer. This strategy relies on the highly scalable nature of JPEG2000. The SBRC algorithm uses a single RC buffer to achieve constant quality. The algorithm is described in more detail in Table 3.1. 3.2. Double buffer rate controller (DBRC) Although the SBRC algorithm performs reasonably well under most conditions, it is possible to improve its performance. To see this, consider the scenario where we have M 1 frames already in the RC buffer. Furthermore, assume that the coding passes of those frames have been truncated according to a RD threshold of T 1. Suppose that the next frame to be inserted in the buffer is such that most of its coding passes have RDslopes smaller than T 2, where T 2 fi T 1. As a result, the new RD threshold T RD computed for all M frames will be T RD <T 1. However, having permanently truncated the coding passes of the first M 1 frames with RD slopes less than T 1,we will be obliged to include the coding passes with RD slopes less than T 2 from the new frame, or allow the buffer to remain at less than full occupancy. In this situation, it is desirable to be able to reclaim" coding passes discarded from other frames in the buffer. To this end, we introduce the DBRC algorithm where some of the coding passes that have been eliminated in previous iterations are kept in a secondary buffer of predetermined size. The DBRC algorithm allows these coding passes to be considered again at a later stage. It should be noted that once a frame is released, all of its passes residing in the secondary buffer will be permanently thrown away. The DBRC algorithm is described in Table 3.2. 4. EXPERIMENTAL RESULTS In this section we evaluate the performance of the SBRC and DBRC algorithms on individual video sequences. We use Peak Signal-to-Noise-Ratio (PSNR) as the distortion measure. Figure 3 illustrates the performance of the SBRC algorithm on the 8-bit grayscale Susie sequence. Each frame has 705 480 pixels. Four different buffer sizes were used in the figure. First the buffer size B was set to include the entire sequence of 150 frames at the target rate of 1.0 bits/pixel, i.e. B = 150 1:0 705 480 bits. As discussed earlier, this case results in minimum variance for PSNR values amongst all other buffer sizes, under the same constraints. Unfortunately, it also results in maximum latency and has the largest memory requirements. The other extreme case is when the buffer size is set to the size of a single frame compressed at the target rate. This case has the least amount of latency. However, it produces the largest variance for PSNR values. Results using buffer sizes that correspond to 30 and 45 frames are also included in the figure. It can be seen that buffering 30 and 45 compressed frames reduces the variance of the PSNR by 45% and 60%, respectively, compared to buffering only a single compressed frame. Proc. SPIE Vol. 4472 261

Given the size of the RC buffer B in bytes, determine the number of frames that will fit in the buffer, M, using M = BD, where S is the size of one frame in pixels, SR R is the desired bit rate in bits/pixel, and D is the pixel bit-depth. Determine an RD threshold T RD such that the coding passes of the first frame with RD slopes T RD will fit into the buffer. Delete the coding passes of the first frame with RD slopes less than T RD. for k =2tok = N + M if k» N Determine T RD so that coding passes of the frames currently in the buffer and those of the kth frame with slopes T RD will fit in the buffer. Delete the coding passes of the frames currently in the buffer and those of the kth frame with RD slopes <T RD. end if Insert the qualifying coding passes of the kth frame into the buffer. end for if k>m Release SR bits from the head of the buffer to the codestream. end if Set k = k +1 Table 1. SBRC Algorithm. Figure 4 shows the performance of the DBRC algorithm at the same target rate of 1.0 bits/pixel. The buffer ratio used in this figure is defined as buffer ratio = primary buffer size + secondary buffer size : (6) primary buffer size A buffer ratio of 1:5 was used to obtain the results in Figure 4. This means that the size of the secondary buffer was half the size of the primary buffer. By comparison of Figures 3 and 4, it can be seen that the DBRC algorithm provides substantial improvements over the SBRC algorithm. For a buffer size of 30 frames, using DBRC with a buffer ratio of 1:5 decreases the variance of the PSNR by 40% compared to the SBRC algorithm. This reduction rises to 62% for a buffer size of 45 frames. Thus, for a fixed amount of latency, DBRC provides significant reduction in variance compared to SBRC. To compare the performance of the two algorithms for fixed memory consumption, we examine the SBRC algorithm with a buffer size corresponding to 45 frames and the DBRC algorithm with a buffer size corresponding to 30 frames and a buffer ratio of 1:5. In this case, the DBRC provides a 20% reduction in variance over SBRC, while introducing only 66% of the latency of the SBRC algorithm. It has been observed that increasing the size of the secondary buffer, or equivalently, the buffer ratio improves performance. However, there is a saturation point over which the results do not improve significantly. This is expected. Recall that the secondary buffer temporarily stores those coding passes whose RD slopes are too low to make it to the primary buffer but high enough to be kept for future consideration. After a certain point, the secondary buffer will start holding coding passes which have very low chance of making it to the primary buffer. This is where saturation occurs. This is illustrated in Figure 5. In this figure, results obtained using the DBRC algorithm 262 Proc. SPIE Vol. 4472

Given the size of the primary RC buffer B p in bytes, determine the number of frames that will fit in the buffer, M, using M = Bp D, where S is the size of one SR frame in pixels, R is the desired bit rate in bits/pixel, and D is the pixel bit-depth. Determine the primary RD threshold T p RD such that the coding passes of the first framewithrdslopes T p RD will fit into the primary buffer. Determine the secondary RD threshold TRD s such that the remaining coding passes of the first frame with RD slopes TRD s will fit into the secondary buffer. Delete the coding passes of the first frame with RD slopes less than T s RD. for k =2tok = N + M end for if k» N Determine T p RD so that coding passes of the frames currently in the buffer and those of the kth frame with slopes T p RD will fit in the primary buffer. end if Determine TRD s so that remaining coding passes of the frames currently in the buffer and those of the kth frame with slopes TRD s will fit in the secondary buffer. Delete the coding passes of the frames currently in the buffer and those of the kth frame with RD slopes <T s RD. Insert the qualifying coding passes of the kth frame into the primary and secondary buffers. if k>m Release SR bits from the head of the primary buffer to the codestream. end if set k = k +1 Table 2. DBRC Algorithm. Proc. SPIE Vol. 4472 263

46 45.5 Buffer size 1, σ 2 = 0.5176 Buffer size 150, σ 2 = 0.0380 Buffer size 30, σ 2 = 0.2836 Buffer size 45, σ 2 = 0.2120 45 PSNR (db) 44.5 44 43.5 43 42.5 0 50 100 150 Frames Figure 3. Performance of the SBRC algorithm on the Susie sequence encoded at an average rate of 1.0 bits/pixel. 46 45.5 Buffer size 1, σ 2 = 0.5176 Buffer size 150, σ 2 = 0.0380 Buffer size 30, σ 2 = 0.1714 Buffer size 45, σ 2 = 0.0804 45 PSNR (db) 44.5 44 43.5 43 42.5 0 50 100 150 Frames Figure 4. The performance of the DBRC algorithm on the Susie sequence encoded at an average rate of 1.0 bits/pixel. with different buffer ratios on the Susie sequence are plotted. The buffer ratios vary between 1.0 and 1.75. It can be seen that the performance reaches a saturation point around a buffer ratio of 1.5. The performance of DBRC is especially impressive when sudden jumps occur in RD slopes of successive frames. This is the case when scene changes occur in a video sequence. To illustrate this, we present the performance of the DBRC algorithm with a buffer ratio of 1.5 using the 150 frame QCIF sequence Trevor, which has a scene change at frame 60. Figure 6 illustrates the PSNR values for several different buffer sizes for a rate of 1.0 bits/pixel. The figure compares the performances of five different buffer sizes, 1, 20, 40, 60, and 150. Compared to the single frame buffer size case (with a buffer ratio of 1.5), the variances of the PSNR values for buffer sizes corresponding to 20, 40, and 60 frames decreased by 27%, 55%, and 79%, respectively. It should be noted that, throughout all experiments, our proposed rate control algorithms had very little effect on the average PSNR of the video sequence. When any significant difference does occur, larger buffer sizes are favored. 264 Proc. SPIE Vol. 4472

45.5 45 Buffer Ratio 1.0 Buffer Ratio 1.25 Buffer Ratio 1.5 Buffer Ratio 1.75 44.5 PSNR (db) 44 43.5 43 42.5 0 50 100 150 Frames Figure 5. The performance of the DBRC algorithm with a primary buffer size of 20 on the Susie sequence. 43 42 41 PSNR (db) 40 39 38 37 Buffer size 1, σ 2 = 5.1709 Buffer size 150, σ 2 = 0.0321 Buffer size 20, σ 2 = 3.7815 Buffer size 40, σ 2 = 2.3412 Buffer size 60, σ 2 = 1.0808 36 0 50 100 150 Frames Figure 6. The performance of the DBRC algorithm on the Trevor sequence. 5. CONCLUSIONS In this paper, we present two new rate control algorithms, SBRC and DBRC, that can be applied to any compression scheme capable of fine scalability. The algorithms significantly reduce the quality fluctuations among frames, and provide smoother video sequences. When used with the upcoming Motion JPEG2000 standard, both algorithms produce conformant bitstreams. Simulations show that the proposed algorithms adapt well to varying conditions. REFERENCES 1. Q. Zhang, W. Zhu, and Y. Zhang, Network-adaptive rate control with TCP-friendly protocol for multiple video objects," in IEEE International Conference on Multimedia and Expo, vol. 2, pp. 1055 1058, 2000. 2. Y. Hou, W. Dapeng, Z. Wenwu, J. Hung, C. Tihao, and Y. Zhang, An end-to-end architecture for MPEG-4 Proc. SPIE Vol. 4472 265

video streaming over the internet," in IEEE International Conference on Image Processing, vol. 1, pp. 254 257, 1999. 3. C. Fung and S. Liew, End-to-end frame-rate adaptive streaming of video data," in IEEE International Conference on Multimedia Computing and Systems, vol. 2, pp. 67 71, 1999. 4. Y. Chung, H. Song, T. Kuo, J. Kim, and C. J. Kuo, Continually traffic accommodating internet streaming video," in IEEE Second Workshop on Multimedia Signal Processing, pp. 403 408, 1998. 5. I. Pao and M. Sun, Encoding stored video for streaming applications," IEEE Transactions on Circuits and Systems for Video Technology 11, pp. 199 209, Feb. 2001. 6. H. Radha, Y. Chen, K. Parthasarathy, and R. Cohen, Scalable internet video using MPEG-4," Signal Processing: Image Communication 15, pp. 95 126, Sept. 1999. 7. M. van-der Schaar and H. Radha, A hybrid temporal-snr fine-granular scalability for internet video," IEEE Transactions on Circuits and Systems for Video Technology 3, pp. 318 331, 2001. 8. J. Rexford, S. Sen, and A. Basso, A smoothing proxy service for variable-bit-rate streaming video," in Global Telecommunications Conference-GLOBECOM'99, vol. 3, pp. 1823 1829, 1999. 9. D. Reininger, M. Ott, G. Michelitsch, and G. Welling, Scalable QoS control for VBR video servers," in IEEE First Workshop on Multimedia Signal Processing, pp. 570 575, 1997. 10. E. Bommaiah, K. Guo, M. Hofmann, and S. Paul, Design and implementation of a caching system for streaming media over the internet," in Sixth IEEE Real-Time Technology and Applications Symposium, pp. 111 121, 2000. 11. JPEG 2000 Part I Final Draft International Standard," ISO/IEC JTC 1/SC 29/ WG1, Doc. No. N1855, Aug. 2000. 12. D. S. Taubman and M. W. Marcellin, JPEG2000: Image Compression Fundamentals, Practice and Standards, Kluwer Academic Publishers, Massachusetts, 2001. 13. M. Marcellin, M. Gormish, A. Bilgin, and M. Boliek, An overview of JPEG-2000," in Data Compression Conference, pp. 523 541, Mar. 2000. 14. Motion JPEG2000 (MJP2) requirements and profiles version 6.0," ISO/IEC JTC 1/SC 29/ WG1, Doc. No. N2106, Mar. 2001. 15. T. Fukuhara and D. Singer, Motion JPEG2000 verification model ver.4.0 (technical description)," ISO/IEC JTC 1/SC 29/ WG1, Doc. No. N1983, Jan. 2001. 16. T. Fukuhara, Presentation on Motion JPEG-2000," ISO/IEC JTC 1/SC 29/ WG1, Doc. No. N1389, July 1999. 17. N. S. Jayant and P. Noll, Digital Coding of Waveforms, Prentice-Hall, New Jersey, 1984. 18. T. Flohr, M. Marcellin, and J. Rountree, Scan-based processing with JPEG-2000," in Applications of Digital Image Processing XXIII, Proc. of SPIE, vol. 4115, July 2000. 266 Proc. SPIE Vol. 4472