Programming Assignment 2
Due Date: March 2, 2011 (Wednesday)
Objective:
Learn essential parts of MPEG and H.264 video compression, and some multimedia
programming skills.
Assignment:
- Implement video compression with motion compensation, transform coding, and quantization
for your H.26* encoder and decoder.
- Choose a video frame sequence (I-, P-, B-frames) similar to MPEG-1. No
interlacing.
- For I-frames, use the MPEG-1 method as outlined in the notes. Optionally, you may
use a simplified H. 264 Intra_4 × 4 predictive coding, i.e. with fewer modes.
- For P- and B- frames, use only 8 × 8 for motion estimation. You may use either
sequential or logarithmic search for motion vectors. Afterwards, use the
4 × 4 integer transform in H.264 (not DCT) and its efficient implementation as
outlined in Fig. 1 [Malvar, et al.].
- Use 4:2:0 for chroma subsampling.
- Control and show the effect of various levels of compression and quantization losses.
- Do not implement the entropy coding part.
Optionally, you may include any publicly available code for this.
-
Create a minimal graphical user interface for the purpose of
demonstrating your results.
- Choose some short video clips (e.g., 5 to 30 seconds) as your test data.
What to hand in:
(a) Submit your source and executable files on line by the due date.
(b) Hand in a short written report summarizing what you
have done for your assignment in class on the due date.
(c) Have a demo to the instructor.