Project: Implementation of MPEG-I video codec

Team members: Wai Kam <wkam@andrew>

Henele Adams <hia@andrew>

Peter Boettcher <pwb@andrew>

We will implement a full MPEG-I video codec, for both en/de-coding.

The resultant software should be interoperable with regular commercial

players, encoders, and files. Audio streams will be discarded, and

the display will be rough and unoptimized. We will start from the

H.263 codebase developed by Professor Chen's research group, and

modify it to become MPEG-I compliant.

For the midterm demonstration, we plan on being able to en/de-code

only I-frames of an MPEG stream. That is, the intra-coding will be

complete. If possible, the decoder should be able to pick out and

display the I-frames from a test MPEG file, and the encoder should be

able to output an MPEG stream consisting of all I-frames to be decoded

by other software.

The development platform will be UNIX. As the H.263 codebase is

written in C++, we will most likely continue using C++. However, it

is possible that we will simply cut and paste code, in which case C

will be the language. A rough X-Windows display module will provide

the output interface.

Tasks to be completed:

Midsemester:

- encoder/decoder control (bitstream parsing/writing)

- VLC module

- DCT/Quantization

- Reconstruction module (incl. framework for motion compensation)

- Output/Display module (rough display only)

- hook it all together to to encode/decode streams of I-frames

Final:

- Motion compensation module in decoder

- Motion estimation module in encoder

- Update control modules appropriately

- Result: Fully functional MPEG-I video codec with rudimentary

display capabilities