This course covers basic and advanced topics related to using computers to support audio and video over a network. Topics related to multimedia will be selected from areas such as compression, network protocols, routing, operating systems and human computer interaction. Students will be expected to read assigned research papers and complete several programming intensive projects that illustrate different aspects of multimedia networking. (Prerequisites: CS 502 and CS 513 or the equivalent, and strong programming skills.)
There will be no formal text-book for the course. Instead, chapters selected from several text books and research papers will be copied and made available. Details will be given out in class.
Online reading list.
Final grades will be computed as follows:
The grading policy for each project will be provided at the time of the assignment. In general, each assignment has a basic objective for the majority of the assignment points. There may be an extended objective for demonstrating additional work and understanding.
Final grades reflect the extent to which you have demonstrated understanding of the material, and completed the assigned projects. The base level grade is a "B" which indicates that the basic objectives on assignments and exams have been met. A grade of an "A" indicates significant achievement beyond the basic objectives and a grade of a "C" indicates not all basic objectives were met, but work was satisfactory for credit. No incomplete grades are assigned unless there exist exceptional, extenuating circumstances. Similarly, no makeup exams are given unless there exist exceptional, extenuating circumstances.
Late projects are penalized 10% of total assignment value per day (with the weekend counting as one day) or partial day, and no assignments accepted after seven days beyond the due date. All programs are due at midnight on the due date. Programs turned in after that time are counted late. Projects are to be submitted as directed in class. Exceptions to these rules can be made only beforehand.
Cheating ... don't do it. Cheating, either by taking credit for work you did not do or getting unauthorized help on projects or exams, is a serious offense. Punishment is in an automatic F for the course. Note, discussion among students and even sanctioned group work is encouraged, but blatant copying of code is not allowed. When in doubt, ask!
Here is the list of Multimedia topics in this course (some topics may be substituted for others, as time and flow permits):
Slides from the in-class lectures are available shortly after they are presented, depending upon how things go. See the Reading List for slides for the papers.
The projects are the programming assignments you will have for the course. The implementation part of the projects will be done individually. For evaluation, I encourage you to work in groups of 2 for the projects. I'd prefer to limit the groups to only 2, but if you really want a larger group, come talk to me. Working in groups will give you valuable "real-world" experience as well as provide you with a "built-in" source for help. Do remember, however, that all exams will be taken alone. Make sure each group member understands the programs completely!
(These will be updated as the course progresses. If you know of any links you think should be included, please let me know.)
You might check out a comparison of Internet audio compression formats for some details on the various compression formats. The site includes some sound samples, too.
Online course notes on Multimedia from Dave Marshal at the Cardiff School of Computer Science.
The SIGMM Home Page, the Special Interest Group for Multimedia from the ACM.
RealNetworks, makers of RealPlayer.
MPEG Tools from the University of California, Berkeley.
YouTube - broadcast yourself.
MPlayer is a movie player for Linux. It plays most MPEG videos, as well as Quicktime, Windows Media, and more.