Fu Chang-Hong, Chan Yui-Lam, Ip Tak-Piu, Siu Wan-Chi
Centre for Multimedia Signal Processing, Department of Electronic and Information Engineering, Hong Kong Polytechnic University, Kowloon, Hong Kong.
IEEE Trans Image Process. 2007 Sep;16(9):2169-83. doi: 10.1109/tip.2007.902330.
MPEG digital video is becoming ubiquitous for video storage and communications. It is often desirable to perform various video cassette recording (VCR) functions such as backward playback in MPEG videos. However, the predictive processing techniques employed in MPEG severely complicate the backward-play operation. A straightforward implementation of backward playback is to transmit and decode the whole group-of-picture (GOP), store all the decoded frames in the decoder buffer, and play the decoded frames in reverse order. This approach requires a significant buffer in the decoder, which depends on the GOP size, to store the decoded frames. This approach could not be possible in a severely constrained memory requirement. Another alternative is to decode the GOP up to the current frame to be displayed, and then go back to decode the GOP again up to the next frame to be displayed. This approach does not need the huge buffer, but requires much higher bandwidth of the network and complexity of the decoder. In this paper, we propose a macroblock-based algorithm for an efficient implementation of the MPEG video streaming system to provide backward playback over a network with the minimal requirements on the network bandwidth and the decoder complexity. The proposed algorithm classifies macroblocks in the requested frame into backward macroblocks (BMBs) and forward/backward macroblocks (FBMBs). Two macroblock-based techniques are used to manipulate different types of macroblocks in the compressed domain and the server then sends the processed macroblocks to the client machine. For BMBs, a VLC-domain technique is adopted to reduce the number of macroblocks that need to be decoded by the decoder and the number of bits that need to be sent over the network in the backward-play operation. We then propose a newly mixed VLC/DCT-domain technique to handle FBMBs in order to further reduce the computational complexity of the decoder. With these compressed-domain techniques, the proposed architecture only manipulates macroblocks either in the VLC domain or the quantized DCT domain resulting in low server complexity. Experimental results show that, as compared to the conventional system, the new streaming system reduces the required network bandwidth and the decoder complexity significantly.
MPEG数字视频在视频存储和通信领域正变得无处不在。在MPEG视频中执行诸如倒放等各种盒式录像带(VCR)功能通常是很有必要的。然而,MPEG中采用的预测处理技术使倒放操作变得极为复杂。一种直接的倒放实现方式是传输并解码整个图像组(GOP),将所有解码后的帧存储在解码器缓冲区中,然后以相反的顺序播放解码后的帧。这种方法在解码器中需要一个很大的缓冲区,该缓冲区大小取决于GOP的大小,用于存储解码后的帧。在内存需求受到严格限制的情况下,这种方法是不可行的。另一种选择是将GOP解码到当前要显示的帧,然后再返回去将GOP解码到下一个要显示的帧。这种方法不需要巨大的缓冲区,但需要更高的网络带宽和解码器复杂度。在本文中,我们提出了一种基于宏块的算法,用于高效实现MPEG视频流系统,以便在对网络带宽和解码器复杂度要求最低的网络上提供倒放功能。所提出的算法将请求帧中的宏块分类为向后宏块(BMB)和向前/向后宏块(FBMB)。两种基于宏块的技术用于在压缩域中处理不同类型的宏块,然后服务器将处理后的宏块发送到客户端机器。对于BMB,采用一种可变长度编码(VLC)域技术来减少解码器需要解码的宏块数量以及在倒放操作中需要通过网络发送的比特数。然后,我们提出一种新的混合VLC/离散余弦变换(DCT)域技术来处理FBMB,以进一步降低解码器的计算复杂度。通过这些压缩域技术,所提出的架构仅在VLC域或量化DCT域中处理宏块,从而降低了服务器的复杂度。实验结果表明,与传统系统相比,新的流系统显著降低了所需的网络带宽和解码器复杂度。