Project: Implementation of a video conferencing system based on H.261

Mid-term status:
A preliminary H.261 encoder and decoder have been completed. The encoder and decoder use a fast DCT of the form shown on Page 52 of the JPEG book. Motion estimation is currently a slow exhaustive search. A video player has been written to display video under X11. It currently uses the X11 PseudoColor display and preallocates a colormap to use. Due to this, colors are not displayed properly. The encoder sends data to the decoder over a TCP connection. The bit encoding routines are functionally correct but not optimized for speed and are therefore quite slow. The entire operation is quite slow at the moment providing only 1 frame every 2-3 seconds.

Video viewer as it stands currently. All color values are not properly displayed at current.

For the final project:
Replace the motion estimation algorithm. Fix the color display problems under X11. Optimize the encoding and transforms for speed and increase the frame rate. Replace the raw TCP connection with H.225 data and signaling standard where TCP is used only for the control channel and UDP is used for data. Implement call setup, tear down and other relevant H.261 signaling. If time permits, interface a camera to the computer for true video conferencing else use a file as input.


Links to resources: