ABSTRACT: The advent of powerful, widely accessible, and financially viable personal computers with network connections on the World Wide Web has lead to exciting possibilities for financially viable personal computers with network connections on the World Wide Web has lead to exciting possibilities for creating musically meaningful presentations for teaching, performing, and researching music and disseminating them easily to colleagues, classes, or even to a potentially vast mass audience. These presentations can combine sound, images, animation, and interaction for stimulating and interesting results. The downsides of learning different programming languages, understanding Web page design and networking, dealing with multiple platforms (principally MacIntosh and Windows), and the problems of generating sound on different computers have a solution in the multimedia authoring program Director and its Web counterpart Shockwave, from Macromedia. This paper outlines the format of Director in its Web version with an emphasis on its potential for sound, and includes some demonstration files, and closes with some considerations of technique and content in web authoring for educational purposes.
[1.2] Fortunately, a solution to these obstacles exists in the
multimedia authoring program Director and its Web counterpart
Shockwave, from Macromedia. This program, currently at version
6.0, is available in an educational form for around $300 and is
well worth the time and effort to learn. In this paper, I will
outline the format of Director in its Web version with an
emphasis on its potential for sound, and include some
demonstration files. I have used Director only on the Macintosh,
and this article is written from that perspective, but the
program exists in almost the same form in Windows versions, with
differences noted clearly in the documentation. The Web
compiler, Shockwave, allows authors to compile Director files for
use on the Web, and a Shockwave plug-in for Web browsers allows
users to access the Director program in a suitable format.
[2.2] Those who believe in the split between the visual and aural
might be skeptical of the computer's sound production
capabilities, regarding them as a crutch similar to using a piano
for sight-singing or part-writing. Those who regard it as a
benefit when the visual and aural are joined in a musical
environment will find truly new uses for computers in musical
production, education, and research. The trick, I believe, is to
use the computer in ways that it is uniquely suited for, and not
to translate books or musical scores into computer programs with
the same goals and perceived limitations. Several interesting
uses of computers, in Computer Aided Instruction (CAI) and with
Hypercard Stacks have and are emerging, as well as some
innovative Web page designs, and it is my hope that musicians
will be stimulated by this discussion of Director to keep
developing new tools and paradigms in this area.
[3.2] At least five solutions have arisen in response to this
situation: 1) use of small files with often ingenious solutions
to the limitations and/or acceptance of a lower quality; 2)
development of compression programs that allow files to be sent
in a smaller, compressed form from the server and then be
expanded on the client computer; 3) breaking down of files into
smaller components that are downloaded on demand; 4) linking to
external media such as images, sound, and video (instead of
copying them into a program so they are internal or inline), which
are downloaded separately and on demand; and 5) streaming of
files that only need to be partially downloaded before
functioning, particularly with sound and video files, which tend
to be large.
[4.2] Sound files have several forms. First, as relatively large
files, they contain numbers that are representations of actual
sound signals, carrying information about amplitude and time
dimensions created from an Analog to Digital converter.
[4.3] When discussing digital sound quality, reference is made to bits, bytes, and samples: the more bits, bytes, and samples in the representation, the better the sound quality and the larger the file. The standard Web sound quality, 8-bit and 22050 (or less) sample rate, is intolerable for musicians, but it is used because a mono sound file of 8-bit, 22050 samples (uncompressed) takes about 22 Kilobytes (KB) per second or 1.3 Megabytes (MB) per minute, while a CD-quality stereo 16-bit, 44100 sample file takes 166.4 KB per second or about 10 MB per minute in size. A mono 16/44100 file, perfectly acceptable, is 88.2 KB/s or about 5 MB/m, but a good compromise file size is mono 16/22050, which requires 44 KB/s or 2.5 MB/m. Even though sound files are compressed, with ratios of 3:1 or 4:1 common, they are still relatively large. With download times of, on average: 1 KB/second for a 14.4 Kilobit (Kb) modem, 3 KB/second for 28.8 Kb modem, 5 KB/second for a 64 Kbs connection, and about 30 KB/second for higher speed connections, such as the T1 connection often found in universities, sizes of sound files are a constant consideration.
[4.4] To get sound files to a more manageable size, several compression procedures are used, which cut down on the amount of numbers used to represent the signal. Audio compression is a complex topic beyond the bounds of this article, but Director and Sound Edit 16 have a particularly good compression feature in Shockwave Audio (discussed below), which allows for an acceptable quality of 16 bit/22050 sample, and provides for at least a 6:1 compression ratio (compressed file is 1/6 the size of the original).
[4.5] Other common types of sound files are Midi (Musical
Instrument Digital Interface) files, that contain no information
about the actual sound and so are quite compact, and files like
Mod files that contain mostly Midi-type information but also a
few sound samples.
[5.2] HTML is basically a labeling language, but has associated scripting and programming languages like CGI, Perl, Java, and JavaScript. These allow for more complex interactions between the browser and the file, and for more interesting Web pages than the standard static page available with simple HTML commands. Currently Java applets, small programs that are compiled and run on the client computer, and Director Shockwave movies are the most common applications used for creating Web pages that combine sound, image, animation, and text. When, as is the case with Director movies, files sent over the Internet have more complex control sections, and use different proprietary command structures, the browser may need plug-ins to run or display them. Director's plug-in is called Shockwave; by using Shockwave from within Director, self-contained file is created which consists of controls and resources (such as images, movies, etc.) that are either placed within the file or are outside and are called when required (like HTML). The Director movie is called from within an HTML file using an EMBED command (described below). Linked sounds (.SWA files) and images (.GIF files) do not require a separate HTML file, but currently linked video must be called from within a separate HTML file.
[5.3] Readers running Netscape should look at their plug-ins. Go to the Finder and look inside the Netscape folder for the plug-ins folder and look inside at the plug-in programs available (Examples 1,2). You will probably see Quicktime and LiveAudio--other plug-ins may be downloaded from various places on the Web. In the next section of this paper, you will put the Shockwave plug-in this folder. Back to Netscape. In Netscape, open up Options; then General Preferences, and then helpers (Example 3). A list of helper applications that call plug-in programs appears; it will probably also include Quicktime and LiveAudio. Click on one plug-in line and then edit to see the details (Example 4): the code names for the application and the file extensions or suffixes, such as .mid for Midi files and .dcr, .dir, .dxr for Director. These extensions are very important, as they tell the browser what type of file needs to be interpreted.
[6.2] You will need to restart Netscape, but first increase the amount of memory (Example 5) that Netscape allots, since the program will now have to open up Director movies as well. Set the memory to at least 15000 KB (15 MB). Restart Netscape. Go to the Options folder and increase the cache size to at least 10 MB (Example 6). Finally, if you haven't already, extend the window to the right so that it is as wide as your screen. The accompanying movies to the rest of this article will appear in a new upper window which you can move around to be able to see the corresponding text while you look at the movie or image.
[7.2] Director's design gives the author a choice of two levels for creating presentations: 1) using prepared scripts called behaviors; and 2) writing new scripts. Script is a general term denoting a programming language that is created to use common language references, such asset the text of castmember 'x' to 'I love ice cream,' rather than the more complex allotment of variables, types, and memory locations found in C or C++ or other similar programs. While easier to use than programming languages, scripting retains certain features, such as "if then . . "; and "while" loop constructions, and the ancestor - parent - child metaphor of object-oriented programs. Director's programming language is called Lingo. The standardized behavior scripts allow for application of scripts and interaction without independent programming, but those interested in programming can add their own scripts to govern the actions of sprites, etc. in the course of the movie. Since the behavior scripts have only appeared in the latest version of Director, 6.0, anyone who has used Director has already learned scripting, which was required of the author in earlier versions.
[7.3] Movies with behavior scripts only are generally created manually, using the changing relationships of sprites in the flow of frames implied in the movie metaphor. Cast members--images, text, etc.--are either imported or created within Director, using its Paint and Field tools, and put in a list of cast members, then dragged and arranged on a stage as sprites. Successive movie frames; are similarly arranged, with a few behavior scripts to create animations. The introductory movie shown above has few scripts, consisting mostly of 1) "wait" type commands, which stops the movie by causing it to replay the same frame until the user clicks; and 2) "go to" type commands that send the movie to a different frame when the user clicks. Another movie with minimal scripting is one I created for a multi-media class at Eastman, with general information on computers and multi-media. The only scripts are "go to" types and "wait until user does something" types.
[7.4] When the movie is run, the frames run sequentially at speeds of 1 to 30 frames per second, allowing for animation or sequences of events similar to a movie reel. In frame-by-frame animation, the frame succession is clear when the tempo, or frame rate, of the movie is slowed. Frames can be looped to wait for user-activated buttons or hot; spots: these interactive elements allow the user to jump around between frames and control the pace or order of the movie, depending on its design. A simple interactive movie allows users to alternate between images. Simple movies with animation are small, easy to create and compile, and can be found in many places on the Web.
[8.2] The tricky part was to get the scrolling of the score to
coincide with the music: the corresponding cast members of the
score and notes were lined up and placed in successive frames on
the stage to line up approximately with the flow of the music.
As the score scrolls by, colored cast members are placed on the
score, then moved up to the analytical layer to show the analysis
develop in real time. The advantage is that the harmonies
(pitch-class sets) are coordinated with colors, and that the
student can listen to the score and start, stop, and pause the
music and score for study.
[9.2] The script of Lingo can be divided into at least nine categories: 1) decision scripts: mathematical symbols, numbers, operators such as = or <> (not equals); "if - then -- else if - then -- else" loops; "repeat while" or "repeat with" loops; 2) function scripts: handlers which perform a task, or take a value, perform an operation, and return a value; 3) classification scripts: define local variables, global variables, lists, put and set commands which assign values; 4) control and program handler scripts: scripts that run the program and connect with the computer, such as abort, exit, start, alert, mouseDown, KeyDown, button scripts, menus, sorts; 5) location scripts: setting the location of sprites; on the stage: top, bottom, right, left, location of mouse when clicking on stage; 6) attributes scripts: setting other attributes of elements than location: color, blend, height, number, name, type; 7) text-related scripts: identifying characters, words, lines, whether text field is editable by user, length; 8) connection scripts: connecting to other programs, files, desk accessories, resedit manipulations, Xlibraries, File Input/Output (I/O), etc.; 9) creation scripts: object-oriented programming elements: ancestors, parents, children; 10) Web and network-related scripts: controlling Web and networking features.
[10.2] A non-working version of the movie showing the separate elements is included. To create the movie, the main cast members, the score and staves, are exported from Finale as PICT files (an image format that Director supports). First, import the files into Director as cast members, and size the stage at 432 X 455 pixels (for a 17 inch monitor, 464 X 310 for 15 inch). For Question 1, put the notation cast member on the stage. To create the Roman numeral, Arabic number, and note repository, use fields and type in the numerals and numbers, but use texts for the quarter note heads and sharp, natural, and flat signs (using a font like Petrucci). Fields are more flexible, but require that the user has the same fonts as the author--so they should be set up so that the font doesn't really matter; texts are treated like bitmap images so the user won't need the Petrucci or other notational font. To complete the cast, using the Paint tool, make a small colored circle to use for non-chord tones. Arrange the Roman Numerals and Figures and symbols on the stage. For each sprite, check the moveable box so that the user can move the symbol. Create a field for the student to add the names of non-chord tones, and fields explaining what the student is to do. Finally, add navigational buttons, to move to different frames. When allowing for interaction, use "go to the frame" in the frame script, as this allows the movie to keep running and accepting mouse clicks etc. (the use of "pause" stops the movie). For Question 2 and the answer, follow a similar procedure.
[10.3] A working version of the movie showing its scripts is also included--the main movie script is given in the top right hand field, changing scripts according to what sprite is clicked are given in the lower right field. These fields may be moved by dragging with the mouse.
[10.4] When scripting a movie, it is easiest to place all handlers in "Movie" scripts, under a general global line, so that the global variables are available to all handlers, with calls to the handlers in the scripts of the various corresponding sprites, frames, etc. This avoids the common problem of undefined global variables--a situation which causes errors not always clearly articulated by Director's automatic de-bugging features. The Movie script; sets up several groups of variables, beginning with IH, IIH, etc., which are variables set to the initial locations of many sprites (necessary for the script when they move and recreate themselves as the user performs the analysis). The next variables (scroll down in the upper right hand box to see these) are for two lists, then for counters also used in the move/recreate scripts. Global variables for the sound follow. The "on startMovie" handler sets up the initial values for locations and counter global variables. It also initially sets all sprites visible, as some are made invisible in the course of the movie, but toward the end another handler called "nonvissprites1" makes the sprites corresponding to question 2 invisible, since the user will presumably start with question 1. (If the user goes to question 2 first, a script along the way will make the relevant sprites visible.) It also erases all cast members past a certain number: this is the number of functioning cast members, until users start to perform the analyses, then more cast members are created. Every time the movie is restarted, the excess cast members are deleted.
[10.5] The essential script for all the moving sprites (the roman numerals, etc.) is "dupandmove," placed within the movie script. Move one of the Roman Numerals to show this script, then look in the lower right field. The "if .. then" script is a test: if the sprite has been moved from its original location, then it will not duplicate itself; this is so that users can adjust the Roman Numerals, etc. they have already placed in the score. If the sprite has not been moved, then the handler "dupandmove" is invoked. This script, shown in the upper right hand field, duplicates the cast member corresponding to the sprite, assigning the duplicate all the attributes of the original (all the "set the" lines in the script) so that there is an apparently endless supply of numerals and figures. In fact, the duplicate replaces a dummy sprite that is sitting unnoticed on the stage, starting with sprite 120 and moving backwards by the incremented value of a counter variable x. There is a total of 120-(the number of functioning cast members) of these dummy sprites, allowing for around 60 copies of the Roman Numerals, etc. The script places the duplicate at the same place as the original, while the original is free to move away.
[10.6] The trick in the script is to duplicate the cast member (the Roman numeral, etc.) only the first time the sprite is clicked--after it is moved, the user should be able to move it again without creating another duplicate. As noted above, this is the purpose of the location test beginning the script in each of these moving sprites, as seen in the lower field on the stage. If the sprite is at the original location, it will create a duplicate; if it has been moved once, it will not.
[10.7] The handler "dupandmove" also includes "puppetSprite" commands. To alter the condition of a sprite from the script, it is necessary to use a "puppetSprite spriteNumber, TRUE or FALSE" command. All elements, sounds, transitions, palettes, etc. may be changed with Lingo, with the corresponding 'puppet command ("puppetSound," etc.). When changing any sprite attributes, it is also necessary to end the handler with "upDateStage" or to use "go to the frame" in the frame script to register the change--this movie uses the latter.
[10.8] A problem with the "puppet" commands within Director lead to the "visible" sprite handlers, "vissprites" and "nonvissprites." To see these handlers, click on one of the navigation buttons: "question 2" or "Answer." A channel or sprite that is puppeted will persist on the stage even when it is not in the score; thus, it needs to be made invisible when not required. The "vissprites" and "nonvissprites" handlers set the sprites corresponding to question 1 visible or invisible, while the "vissprites1" and "nonvissprites1" handlers set the visibility of sprites corresponding to question 2. Two lists are created to catalogue the sprites from these two questions: Q1List and Q2List. At the end of the "dupandmove" handler, the duplicated sprite number is put into the corresponding list, and the numbers in the list are used in the "visible" handlers. These handlers also include the sprite numbers corresponding to the original movable sprites (the Roman numerals, etc.), which also must be made visible or invisible, since they are also puppeted.
[11.2] Returning to the homework assignment, to complete the steps for creating the movie, prepare a sound file of the passage, using a program like Sound-Edit 16 (also made by Macromedia), to create a mono file, 16-bit and 22050 samples. Use the SWA Compression Xtra in Soundedit and the SWA Settings Xtra for Director to compress the sound. The sound is given a corresponding dummy cast member, called "SWAHolder," and the name of the sound file is assigned in the "on startMovie" handler. The sound handlers then take this sound file and play it, with a few configuration features. The sound can be heard any number of times by pressing the corresponding button. A second sound in this example is a reduction to the two outer voices. Both of these sounds were created first as Midi files, then altered to .AIF format sound files using Quicktime's MoviePlayer, then Sound Edit 16 to change the sounds into compressed .SWA files.
[12.2] The first rule of Web programming with Shockwave is to start with the smallest movie possible: if the movie is large, divide it into smaller movies that call one another, or begin with an introductory movie that consists of only an image which displays while other movies load (using the "GoToNetMovie" script). The second rule is be clear on pathnames and file names. Director's lingo, the pathName, is disabled in Shockwave, and the movie and supporting files all need to be in the same folder or directory and properly labelled. Files names have different restrictions on different platforms: UNIX servers are case-sensitive; Windows machines may have trouble with names longer than eight characters with a three character extension or names with spaces. These two and MacIntosh may have trouble with special characters in file names.
[12.3] As with sound, color and graphics are complex topics unto
themselves when it comes to size, quality, and compression. The
safest route is to use the System Color Palettes and the smallest
bit size for images that provides a clear image: the difference
between 8 bit and 16 bit color is noticeable, but the former is
acceptable. Use text fields if possible, with standard fonts:
the client computer must have the same fonts to get the same text
shape and size.
[12.4] When putting Director movies into shocked form on the Web, important considerations are: 1) data transmission rates; 2) New Lingo commands; 3) Director features disabled; and 4) miscellaneous issues that affect playing Director movies in a browser. Data transmission on the Web is, from a hardware point of view, standardized, with user modem speeds of 14.4 kilobits (Kb) per second (= 1.8 KB/s), 28.8 Kb/s (3.6 KB/s), 33.6 Kb/s (4.2 KB/s), and 56 Kb/s (7 KB/s). Higher speeds come from ISDN lines, ranging from 64 Kb/s (8 KB/s) to 1.5 Megabits (Mb)/s (184 KB/s), and T1 lines at 1.544 Mb/s (193 KB/s), Ethernet at 10 Mb/s (1.25 MegaBytes (MB)/s), and T3 lines at 44.736 Mb/s (5.592 MB/s). Over the internet, however, these theoretical speeds are affected by the data transmission capacity of server computers and by how busy the server and the lines between server and client are at that moment--a very unpredictable value. A given speed estimate for general use is about 1 KB/s. By taking the size of the movie and supporting files, approximate download times can be calculated. The most important advances for data transmission are streaming versions of data: Shocked movies and audio are both streaming, but streaming video is not incorporated into Director, although Quicktime movies, which are linked to from within shocked movies, are now streaming.
[12.5] Other concerns to users of Director are the features not available in Shockwave form, and the new Lingo scripts required by Net form. Features not available are mostly those related to operating systems: custom menus, printing, saving, restarting, resources, file I/O etc., but also include movies within windows. The Web-related Lingo commands are in three categories: those that start a process, those that monitor it, and those that send or receive a result once the process is done. This three-step set-up accommodates the essentially asynchronous Internet, where the time to send and receive data is unpredictable. Finally, a concern at all times on computers is the amount of free memory: Shocked movies on top of Web Browsers take up enormous resources, and the use of multimedia files can easily (on the MacIntosh at least) cause system crashes. While new versions of operating systems and internet protocols help this situation, it is always a concern when sending large and complex files over the Web.
[13.2] Second, since in the marketing of computer programs, prices must go down with successive generations of more powerful systems, companies dole out versions of software yearly that users are required to purchase to keep up. Although Director is useful, for instance, the initial cost is high (around $800) until the educational versions come out, usually a year or two later. The educational version of Director 5, for around $75, was available only a few months before Director 6.0 came out. After the initial outlay, while upgrades are not too expensive, the price dissuades many authors. In my case, I learned the Shockwave version of Director 5.0 by cobbling together elements from books and the Web; in Director 6.0, these elements have been integrated into the program--but with some elements now changed from the Afterburner; generation. Such changes make working in multi-media exasperating.
[13.3] Third, to create worthwhile educational content for the
Web, instructors have to re-imagine their course material, or
invent new courses, appropriate for the new medium. Putting
class notes and schedules in electronic form is convenient, but
hardly represents a new use for computers. What is the criteria
for useful Web texts? At Eastman, only a relatively small
proportion of students have web access, so it is difficult to do
tests with large groups. I have just begun to use web pages in
my own teaching, but in the process of thinking about using the
web and computers, a few important questions have come to mind
and, I believe, need to be considered by all web authors for
educational materials:
1) Do the materials use the capabilities of the computer to combine sound and image? Image and text alone work quite well in a book, and sound alone is easily available on CD systems. Combining images and text, with instant access to both, is a strength of the computer, and should be the goal of instructional materials.[13.4] To the problems of multi-media authoring noted above--learning programming languages, Web pages, problems with multiple platforms and generating sound--Director offers an all-in-one solution, and is worth consideration by all those interested. Although it has a few quirks, Director is relatively easy to learn and get fast results with scripts.
2) Are the learning materials goal-directed? I'm not a big fan of pages full of multiple menu possibilities on successive pages or teaching materials organized like a game. Part of teaching is instructing students in a systematic and goal-oriented way, as their lack of experience with the material is the reason they're in the class to begin with: it is not appropriate to assume that they will make the best decisions in the order of material. Web materials should be efficiently and clearly presented, with the next step indicated.
3) Do the assignments or tasks on the Web allow students to learn at their own pace? This question requires a well-thought out interface, with lots of looping connectors so that students can go back over material and review/rediscover ideas and concepts as needed. This potential is also one of the great strengths of the computer.
4) Does the program or file point beyond itself, causing the student to make larger connections? Self-contained drill type programs might be of some use in a directed environment, but the ideal materials should both present the immediate topic and point (with links) to topics of larger implication.
Computer programs such as word processors, webbrowsers, and operating systems are often designed with smaller programs in self-contained modules which can be added on easily. For instance, the MacIntosh operating system has system extensions and control panels, Director has Xtras, and Netscape has plug-ins, called helpers in the Preferences menu. These modules, put in an appointed folder, can be called upon when necessary to run certain parts of the program or to recognize and run related types of programs. Procedures made available by Xtras are called X-commands (Xcmd), and other names beginning with X. Netscape's plug-ins allow it to recognize file types, called Mime (Multipurpose Internet Mail Extensions) types, that are sent over the internet. Director's web plug-in for Netscape is called Shockwave.
Web browsers are programs designed to recognize and display
different types of files, particularly Mime (Multipurpose
Internet Mail Extensions) types, which are sent over the
internet. Netscape Navigator is a well-known browser, that can
display text, images, and animations written in different codes,
such as HTML (Hypertext Markup Language). Browsers can be
extended by plug-ins when new codes are introduced.
Return to text
2. Computer-aided Instruction (CAI) programs have developed along with personal computers. Some existing programs are MacGamut, Practica Musica.
Hypercard is a MacIntosh program using a stack of cards as the metaphor. The best known examples of its use are found in studies of works such as Stravinksy's Rite of Spring and Beethoven's Ninth Symphony, as well as the more recent Ragtime, put out by the Voyager Company. For recent examples of teaching uses, see the article by Elizabeth West Marvin and Alexander R. Brinkman in this issue of MTO. See also the Voyager web site and accompanying software, CDLink, which allows for Hypercard Stacks online.
For some Web pages designed for interactive activities and
teaching, see the following "http://sparky.parmly.luc.edu/sharc"
for Greg Sandell's timbre research, as well as
"http://locutus.esm.rochester.edu/~cscotto/jrt121/" by my
colleague, Ciro Scotto, as well as my own
"http://locutus.esm.rochester.edu/~dhlm/acoustic.html."
Return to text
3. In the past on the Internet, a sound or other file had to
download completely and then begin playing, which can take a
lengthy period of time. Streaming files are created with enough
control information put at the beginning of the file so that the
file can be processed and begin playing or presenting almost
immediately. The remainder of the file continues to download
into a buffer simultaneously. The problem is that download times
are unpredictable on the Web and may change even during one
file's download. Thus, a sound may begin playing, then stop,
while enough information flows into the buffer to continue the
play. Director's streaming audio allows authors to set the
initial time before the playing begins (default 5 seconds), which
allows some leeway, but there is no fail-safe solution.
Return to text
4. Soundwaves can be described digitally in a Cartesian graph type format, with x-values as time, measured in small chunks called samples. Samples of sounds are taken in fractions of seconds, usually in 1/22050 or 1/44100's of a second, or 44,100 samples = 44,100 times a second. The sample rate is twice the highest frequency possible in the sound represented, thus 44,100 samples per second allows for a frequency of 22050 Hz, or cycles per second, above most people's range of hearing; 22050 samples per second allows for 11025 Hz frequencies, within the range of hearing, but is acceptable as a compromise (the piano spans 27.4- 4186 Hz).
Computers store information in binary numbers, with each bit set to either 0 or 1, and in bytes of 8-bits each to store numbers or words, etc: 8-bits = 1 byte, 16 bit = 2 bytes. A kilobit (Kb) = 1000 bits, a Kilobyte (KB) = 1000 bytes, a Megabyte (MB) = 1,000,000 bytes. In the Cartesian graph representation of a soundfile, y-values are the amplitude levels, measured in divisions relating to the bits; present in the sound representation, usually 8 bits (=256 levels) or 16 bits (=16536 levels). The sound wave is much more faithfully reproduced by the many more levels in 16 bits, but for size reasons 8-bit sound has been used on the Web. The size of sound files (uncompressed) depends on the bits and samples: 8 bits = 1 byte, so that 8 bit, 22050 sample sound takes about 22 KB per second; CD quality stereo 16 bit, 44,100 sample sound takes 2 2 44,100 = about 166.4 KB per second.
An Analog-to-Digital converter converts a sound signal (trumpet
note, traffic noise) from its electrical representation into a
series of numbers representing the time and amplitude values of
the signal. A Digital-to-Analog converter reverses the process,
creating sound from a series of binary numbers.
Return to text
5. Midi file information can be found at
"http://www.eeb.ele.tue.nl/midi/index.html", but there are
thousands of sites with MIDI files and info. Mod file
information can be found at:
"http://members.aol.com/Edgeman101/musica.html"
Return to text
6. Information and downloads related to Quicktime 2.5 can be
found at: "http://quicktime.apple.com."
Return to text
7. Although useful by itself, Director may also be ordered in a
Studio, bundled with a sound editing program, SoundEdit 16, an
image editor, xRes 3, and a 3D tool, Extreme 3D 2, for a complete
multimedia package.
Return to text
8. In the original CD-ROM version of this movie, the sound is a
quicktime movie, and can be accessed at any point, as well as
stopped, started, and paused. Director's streaming audio
unfortunately only allows for the latter.
Return to text
9. In non-web uses, sounds can also be placed in the two sound
channels; when the movie plays the frame with the sound file in
it, it will play the sound file. To coordinate sound with
animation, it is easier to import the sound as a quicktime movie;
quicktime movies can be controlled virtually frame by frame, and
so a quicktime movie sound can also be started and stopped and
accessed at any point easily to coordinate with animation.
Unfortunately, this is not yet possible with linked quicktime
sounds or Director's streaming audio.
Return to text
10. On servers, a file called "mime.type" (UNIX) contains many
file types; add the line: application/x-director dcr, dir, dxr.
Return to text
11. The standard system fonts: Arial, Courier New, Symbol,
Times New Roman, and Wingdings on Windows and Chicago, Courier,
Geneva, Helvetica, Monaco, New York, Palatino, Symbol, and Times
on the Macintosh. If you choose a standard Macintosh system
font, Director automatically substitutes a standard Windows
system font when someone runs the movie on a Windows
computer--and vice versa.
Return to text
12. Director has a few quirks that should be noted. First, the first frame of a movie often doesn't work properly when sounds or scripts are present, and it is best to begin in frame 2, leaving frame 1 either empty, or with the same stage as frame 2 without the sounds, scripts, or markers, so that the movie begins and passes through at least one unscripted frame before the action begins. Second, the last frame of a movie needs to be considered carefully, otherwise the movie will just end; often, the ;last; frame loops, waiting for a user click. Third, repeat loops and pauses shut out the user (and, in Web pages, the browser as well) and should be used carefully; options should be given to stop any lengthy activity. Fourth, when using text, use ;field; cast members for general text but use a standard font, since client computers will only show fonts that they have mounted; for specific fonts or text arrangements, use ;text; cast members, which are read as bitmaps. Fifth, when done making a movie, it is often convenient to get rid of unused Cast members by opening the Find command, which has a setting ;not used in movie.; The list of members includes movie and frame scripts however, which must be kept. It is thus best to name these scripts to avoid a tedious search to be sure which cast members may be deleted. There are also a few general quirks of computer programs to remember. For instance, when using linked media, make the link to a copy of the image or sound, etc., because any changes made within, in this case, Director, will change the source media.
For the best source on Director, go to
"http://www.macromedia.com/", for music-related shockwave sites
go to "http://www.teleport.com/~arcana/shockwave"; a few helpful
books are: Gary Rosenzweig, The Comprehensive Guide to Lingo
(Ventana, 1996), and Cathy Clarke, Lee Swearingen, and David K.
Anderson, Shocking the Web (Berkeley, CA: Macromedia Press,
1997).
Return to text
[2] Any redistributed form of items published in MTO must include the following information in a form appropriate to the medium in which the items are to appear:
This item appeared in Music Theory Online in [VOLUME #, ISSUE #] on [DAY/MONTH/YEAR]. It was authored by [FULL NAME, EMAIL ADDRESS], with whose written permission it is reprinted here.[3] Libraries may archive issues of MTO in electronic or paper form for public access so long as each issue is stored in its entirety, and no access fee is charged. Exceptions to these requirements must be approved in writing by the editors of MTO, who will act in accordance with the decisions of the Society for Music Theory.
This document and all portions thereof are protected by U.S. and international copyright laws. Material contained herein may be copied and/or distributed for research purposes only.