Video Coding and Processing
(B. Furht, H. Kalva, and O. Marques)
Funded by the NSF



In this project, we intend to design and develop a series of video coding and processing algorithms which will run on the NUMA-based supercluster. The project will focus on:
  1. H.264 and MPEG-4 coding techniques,
  2. innovative coding techniques, such as an adaptive 3D-DCT, and
  3. computer intensive video applications related to HDTV and multimedia security.
The recently standardized H.264 video coding standard is highly optimized, and provides encoding tools that result in perceptually equivalent quality 1/3 to 1/2 of MPEG-2 video bit rate. The improved performance comes at a cost of significantly higher complexity. The motion estimation process is the most computationally-intensive task in hybrid video coding techniques. It computes a prediction for a block of video data based on previously coded video frames. Since H.264 allows multiple (up to 16) reference frames and variable block sizes, the motion estimation process requires substantially more computing resources compared to MPEG-2 video coding. Parallel processing is a viable technique to realize efficient and real-time encoding. We have developed algorithmic optimizations based on SIMD instruction sets to reduce the complexity of transcoding MPEG-2 video to MPEG-4 format. While SIMD instruction sets may improve the performance, real-time encoding of H.264 video or transcoding of MPEG-2 video to H.264 format requires substantial computing resources. Multi-core processors or multiprocessor systems with shared memory are more appropriate for these tasks. We intend to develop parallel algorithms for efficient encoding and transcoding of H.264 video, and implement and evaluate them on the SGI supercluster.

Our current research is also focused on an adaptive 3D-DCT compression technique, which dynamically determines an optimal size of the video cube based on the motion analysis. This technique consists of two steps: (a) it analyses the motion within a small (16 × 16) video cube of eight successive frames, and (b) it selects the size of the cube based on the motion analysis and applies the 3D-DCT algorithm on the selected video cube. This technique requires very intensive computation for both motion estimation and 3D-DCT. We have developed parallel algorithms for 3D-DCT [32], which will be implemented and tested on the supercluster.

Another computationally intensive application is related to video security and encryption techniques. Traditional encryption techniques, such as DES and AES, require intensive computations, and therefore cannot be applied in real time for video and multimedia. Our research will focus on the development of new techniques for multimedia security and cryptography, which will be tested on the SGI supercluster, and eventually implemented using fast multiprocessor chips. All of these techniques require intensive computational power, specifically if they are applied on HDTV and quad HDTV video formats. Therefore, it is very difficult to apply these techniques in real time. A potential solution is the development of specialized multimedia chips that run parallel algorithms.

In this research, we intend to develop these algorithms and carry out their performance evaluation on the SGI supercluster. The main characteristic of these algorithms is the multiple processing on a large set of data. Therefore, data parallelism will be extensively used which is supported at the SGI supercluster. The ultimate objective of the project will be to come up with the optimal parallel algorithms. This will lead to the development of new multimedia chips based on shared-memory systems, which will be able to perform the tasks in real time.