The goal of this project is to gain experience building an application with
a high-level authoring environment or language. You will use Authorware to
develop a presentation and interactive exercise on some topic of C++
programming. Each student will be given a separate topic with a basic
lesson design. (Please turn in half of your work by Feb 15 and all by Feb 20).
Some of the lessons require you to give code examples and ask the student to
write code. We're going to assume a set of graphics and interaction routines.
Click here for specifications.
Each student has a designated lesson or lessons to implement, but you may want to see
some designs for other lessons. Here's the complete set of lesson designs .
In generating the lessons, you should follow the formats provided by the sample
programs located in the Zone: "CS", machine: "multimedia lab (animation)", item: Macintosh HD, folder: "IDEAS examples", files: "Read Me", paging demo, paging model, read_assignments, read_assignments_eval, etc.
Please use these examples so that we end up with a consistent set of background colors, buttons, text fonts, etc. in the presentations.
Name your project according to assignment number, user id, and type, e.g. "23-rbd-pres" and "23-rbd-eval". Leave your project in the "Media Tech Class" folder in "Macintosh HD" (as before).
Digital media offer great flexibility with regard to media representation.
In particular, various sample rates and quantization levels can be used to
trade off quality against storage, latency, computation, and/or bandwidth.
This project is intended to give you first-hand experience with these
tradeoffs.
Some resources:
Step 1
(Due Feb 27): Obtain a sound or image and (dis)play it on a machine
of your choice. See the instructor if you have problems. Turn in a
description of your example and why you chose it. For example, you might
have a voice recording because you are interested in quantization applied
to telephony. If you write more than a paragraph, you are working too hard.
Step 2
(Due Mar 5): Design an experiment to study the effects of
quantization. The experiment should be in one of two forms:
Form 1: evaluate a tradeoff such as: color resolution vs. image resolution,
sampling rate vs. bits/sample, log vs. linear samples, or dithered vs.
undithered images. Example: how much extra resolution at 1 bit/pixel gives
an image quality equivalent to 2 bits/pixel?
Form 2: Measure the amount of added noise (expressed as a fraction of
maximum signal amplitude) that gives an equivalent subjective quality to a
degraded signal. Example: determine what level of noise must be added to
16 bit audio before it degrades to the quality of 8 bit audio.
Hint: In both forms, you make subjective comparisons between two images or
sounds and adjust some parameter until you get subjectively equal quality
in the two stimuli. Be sure you know what parameter you are varying. ("I
turned the Photoshop blur factor to 4" is not a satisfactory explanation.)
Turn in a description of the experiment. One or two paragraphs is fine.
Step 3
(Due Mar 19): Perform the experiment and write up the results. One
page should be sufficient. Be sure to compute and compare the number of
bits in the different versions. In most cases, your writeup will include a
graph, for example showing the subjective quantization noise as a function
of bits/sample, or showing the required image resolution to maintain
constant quality as a function of color resolution.
In this project you will implement software to manipulate digital media.
Examples include: digital reverberation for audio, resampling or special
effects for image data, using edge-detection to convert images to line
drawings or video to line animation, color quantizing or color correction,
pitch detection in audio, pattern recognition in images, motion detection
in video, and music synthesis. Since the Project 1 involves reading,
processing, and outputing media, you are encouraged to extend that work
rather than starting from scratch.
Step 1
(Due Apr 2): Determine what you wish to implement. Turn in a one
paragraph description. Be creative.
Step 2
(Due Apr 23): Implement the effect. Turn in (1) an image or a
pointer to a sound file, (2) a program listing, and (3) a copy (or
revision) of the description from Step 1.
(cdhoff@maps.cs.cmu.edu)