Programming Assignment One - Version 1 - Playing with Time

Whenever we think about playing time... we must likely conjure up scenes of rewinding a movie or making it play faster. Hence, the goal of my assignment is to blur the user's normal awareness of time, allowing the the movie to play not only as a linear progression, but to let the user manipulate it by changing its rate, forming subloops, and playing in the reverse order.

I chose the trailer movie "Terminator 3" because it depicts a liquid metal evolving itself into many different shapes. This is an unusual conception of liquid. Normally, whenever we perceive liquid, and as we have learnt from science, liquid takes the shape of its container. Contrary to our normal conception of liquid, we are now able to look at this liquid from a different perspective... one where we can see liquid taking its own definition, and defining itself to be an independent object that grows and changes as it pleases.

This idea of liquid defining itself to be its own artifact is unusual. Therefore, several ways to manipulate this "liquid" and see how it progresses from blotches to objects are provided in the following function keys. Their functionality is explained below:

Play/Pause: plays the movie in a linear progression with respect to time

Mode 1: subloop. The user can choose the particular endpoint of the subloop. However, the starting point of this subloop is set to about 3 seconds.

Mode 2: plays backwards; blurs the user's perception of forward progression by reversing the movie. In addition, the sound of the movie also goes backwards, giving the perception of going "back" in time.

Stop: stops the movie. If the Play button is hit, the movie starts from the beginning.

Play Faster: plays at rate = 2

Mode 3: the user is able to form a subloop at rate = 3. Whenever, the user defines the endpoint of the subloop on the first click of the Mode 3 button; and the starting point of the subloop on the second click of the Mode 3 button.

Step Forward: captures a moment in time in the movie, essentially forcing time to stop at a particular frame. By continuously clicking on this button, the user progresses through the movie one frame at a time.

Step Back: captures a moment in time in the movie. By continuously clicking on this button, the movie progresses backwards, essentially reversing the sense of time.

</COMMENT> No JDK 1.1 support for APPLET!! </COMMENT> No JDK 1.1 support for APPLET!!

Color Code Mapping for Buttons

Toggle: Play Movie/Pause Movie
Mode1 - Subloop, go back & forth
Mode 2 - Play backwards
Stop Movie
Play faster (twice the speed)
Mode 3 - Subloop at rate = 3
Step Forward
Step Back