Human history has developed through the storage and distribution of information. Initially this involved writing and distributing material in a printed form such as with books, news-papers, leaflets and posters. One of the first changes to this type of distribution came when Ted Nelson, in 1960, published 'As We May Think', which was basically a description of a global document system, based on the hypertext principle. This paper inspired many people including Tim Bernes-Lee at CERN who, in the 1980s, actually developed the first prototype of the WWW. A major change has thus occurred over the last century where com-puters were used to distribute, store and present information.
Up until the end of the 1970s, computers systems could only really support text-based information, and were large, and difficult-to-use systems. The great change in computer systems came in 1981, when IBM released the PC. This was followed, in 1984, by the Apple Macintosh and in 1985 by the Commodore Amiga. The Macintosh and Amiga were based around GUI's and their applications used WIMPs (Windows, Icons, Menus and Pointers). These concepts allowed for proper multimedia. The PC would eventually catch up with the usage of Microsoft Windows, which was a GUI for the PC. Slowly the PC has supported mul-timedia, with the additional of graphical cards, audio cards and high-speed CD-ROM drives.
Before the integration of multimedia on computers, the media tended to be delivered in a non-computer-based way, such as through video, or audiotape delivery, or even over TV systems (such as used by the Open University). These systems did not provide much interaction between the trainer and the user. The new integrated multimedia systems supported the integration of audio, video, graphics and text. Initially the production of this material was difficult as there were very few development packages available, but over the 1990s, several companies, especially Macromedia and Adobe, produced development packages, which successfully integrated all the media into a single form.
Multimedia is the integration of many different media types into a single integrated unit. This normally involves converting the original media source, such as images, audio, video, text, and so on, into a digital form, so that it can be integrated into a digital package. This can then be delivered as a single entity. Figure 1 illustrates this.
For example video is normally available in either an NSTC, PAL or SECAM format. This can then be digitized into a digital form. This will give RGB and pixel data, arranged in frames. Next the video can be compressed into a standard format, such as MPEG or AVI. Sound can be converted into MP-3, and images are typically converted into JPEG, GIF or PNG. The output from the media integration package depends on how the media will be delivered. The main forms are:
Stand-alone package. This is where the media has to be run without requiring any additional software viewer. Typically, it is compiled for the specific computer and operating system that it will run on. Media player integration. This involves converting the media into a form which can be played in a media player. Typical media players include Macromedia Shockwave Player (which plays DCR files), Macromedia Flash Player (which plays SWF files). The forms can also be integrated into a WWW browser (using the required browser plug-in). WWW integration. This involves converting the media into a form which can be viewed by a WWW browser. For this the media is converted into a number of HTML pages, which contain media content, such as AVI, MPEG, GIF, JPG and PNG files. Note that ad-ditional plug-ins are required for the delivery of AVI and MPEG movies. A typical player is Quicktime, which is available from Apple Computers. Real-time delivery. This involves delivering the media, in real-time over a network con-nection. Sometimes this can involve the synchronization of images or video with sound. Typical real-time formats include the Real Audio (RA) format, and Windows Media Audio (WMA).
Multimedia Development
Multimedia isn't really a very good termfor the creation, production and delivery of media content. Unfortunately it has become a standard part of the IT vocabulary, and many people view it to be a single activity, but actually involves many different skills from content design to software engineering skills. For example many find it difficult to differentiate the creation of the content from its development as an integrated system. Many also cannot differentiate this development from the delivery of the material. Each of these stages is a definitive part of the process, and require different skills at each stage. As illustrated in Figure 2, the stages might be:
Content creation. At the creation phase there are normally expert users, who know how the system should operate, and who it is aimed at. For example, a French language teacher will know how to present a structured course in the teaching of French, for a certain level of knowledge. They may not know how the material would operate in a multimedia environment, but they can produce material in a form that could be used in this. Content integration. This is where IT skills are important, and normally involves inte-grating the content into a single package. As much as possible the developer must have communications with the content creators, and the delivery specialists. Delivery. This is an important stage as it involves delivering the content to the user's computer. Typically these days the delivery is over the Internet, or over a network, thus bandwidth is a major consideration. It is important that delivery issues are taken into account, before the decisions are taken on the design and development of the package. The important elements Maintenance. The material, once produced, must be kept up-to-date, and bugs fixed, and new material generated.
Just like software development, there is no defined way to develop multimedia. Each devel-oped system will have its own aims; its own target audience; its own method of delivery, and its own special problems. The factors that typically affect the develop cycle include:
Aims of the content. Different subject areas have differing requirements for the way that the content requires to be delivered. For example, a PhD student might require just a basic text-based document with simple line drawings for their research, but pre-school children would require a more graphically rich user interface, where text was replaced by pictures. The navigation would also be simpler. Source content. The source content can be available in a number of different formats, and it may have to be generated before the system was developed, or it may have to be produced after the system has been designed. Another major factor is the protection of the content against it being copied by others. User system requirements. This can have a great effect on the type of multimedia used, as it does no good at all to develop a totally graphical-based, animated system for a mobile computing device which has limited processing and memory capabilities. The operating system can also have a great effect on how the content is presented. It is extremely difficult to aim the requirements at the every user, but market research will show the typical systems that the target user uses. Delivery. This is a major factor, and the delivery type should be defined by both the user, and the type of material. A multimedia system which has a great deal of video content will typically not cope well with a modem connection to the Internet. Thus CD-ROM delivery would probably give better delivery. Also it is difficult to deliver ex-ecutable programs over the Internet (and, in some case, they should not be trusted), and CD-ROM distribution makes this easier. Maintainability. This is an important factor for the long-term development of a mul-timedia product. It is unlikely that the product will ever be completely finished, as new material is often required to be added to it, or bugs fixed. Thus, maintainability is an important factor. It does little good to develop a system, which is extremely difficult to add to, or to change in any way. A good example of this is in the Adobe PDF format. In this a package known as Abode Acrobat can be used to convert from many types of documents, such as Word documents, to the PDF format. Acrobat can then be used to add navigation, movies, sound, menus, and so on. Unfortunately it is difficult to up-date the original material without starting from the beginning again (although there is a basic touch-up tool to make small changes). Thus it is often better to choose a system which can easily update the material and reproduce the product. It is thus an advan-tage to make the media elements as small as possible, as a change in these will not have a great effect on the rest of the material. Compatibility. This can be a major factor, for many reasons. If possible the amount of development for different types of delivery should be minimized. Thus it is a great ad-vantage to a developer if they can develop the same material for both CD-ROM delivery and also for Internet delivery. Resusability. This is important, especially when parts of the multimedia system can be used in other systems. If possible content should be developed in a generic way, so that it can be easily modified so that it can be used again in another system. For example, a developer could develop a range of buttons, with associated interactions. If possible the develop should design them so that the could be easily used in another system. This might involve creating a way of changing the color of the button, or the text, or the way that events occur on the buttons.
Content design and delivery
The stages of content development involve different types of people, with different skills. As much as possible the creators of the content should be kept up-to-date in the development of the project, as many software project fail as the software designers have not received continual feedback from the actual people who have initiated the idea for the project, or how are the users of the product.
A good approach in the development of the multimedia is to setup two design teams. These should be small enough to be efficient (as often the larger the committee, the slower that the work will proceed). These would be:
Instruction design team. The objectives of this team are to analyze, to design, to build and to evaluate the product. Typically this team would be made up of content creators, such as graphics designers, and the idea generators. This the main design team, and will feed ideas to the software design team. Representatives from the software design team should be part of this team, and should give the Instructional team technical sup-port for their ideas. This team will initially ask the software design team to produce pro-totypes which will be presented to the instructional design team, so that the instructional team can generate a design.
Software design team. The objectives of this team are to prototype, to generate new ideas, to construct and code, and to test and evaluate the product. This team will be lead by the instructional design team, and most report back to this team, as technical requirements should never overrule the aims of the product (unless the instruction team were to approve these). After the generation of initial prototypes, the instruction team will give outline designs for the product. These would be turned into a formal de-sign specification by the software design team, which would be presented back to the instructional team, for their acceptance, or not. Once accepted the software design team can start to properly code and integrate the media. After this is complete these can feed differing versions to the instructional team, who would give feedback on their developments. Finally the product would enter the test and evaluate phase.
Any failure in the project is likely to be shared by the two teams, rather than resting on an indidivual. A good approach is to formalize meetings of the two team. For example lets imagine that we have a language tool for Primary School Children. Initially the teams would be defined, and distributed to everyone. For example the instruction team could be:
Ms J.Goodie, French Teacher (Instruction Group Leader).
Mr M.Plode, Teacher, Design Department.
Mr R.Headingly, School Head.
Ms A.Bigwig, Legal Department, Local Authority.
Ms I.S. Techno, Multimedia Developer (Software Group Leader).
Ms A.N. Pupil, Senior Year Pupil.
This team should involve the main content creators (the teachers), and representatives of users of the system (the pupil). It also includes the School Head, who is likely to be able to make discussions on finance, and resources. The representative from the Legal Department will help with copyright issues. Also the technical person (Ms Techno) is there to represent the Software Design team. Initially they would meet and define the main designs for the project, these would be fed to the software team, so that they can work on prototypes and the main design specifications. The Software Design Team could be made up of:
Ms I.S. Techno, Multimedia Developer (Software Group Leader).
Ms J. Goodie, French Teacher (Instruction Group Leader).
Mr C.Plus, Software Developer.
Mr E.Ternet, IT Support.
This team includes someone from the Instruction team, and will meet to discuss the ideas and the requirements from the Instructions team. The number of meets of the teams de-pends on the project, but, in this case we could define:
· Formal Instructional team meets every two weeks, to discuss documents things like design details and content creation. An informal agenda is created for each meeting, and each meeting focuses on a specific aim.
· Software Design team meets every two weeks, and meets to discuss technical develop-ment. An informal agenda is created for each meeting, and each meeting focuses on a specific aim.
· Representatives from both teams meet every four weeks to discuss the progress. This meeting should have a formal agenda with documents and presentations tabled before the meeting, which are open to discussion. This meeting is fully minuted, and actions are put on people. Any major changes in the project are discussed at this meeting.
Multimedia package integration
In most cases the copyright of the original material should be preserved as much as possible. There does seem to be a focusing of multimedia material on integrating it with the WWW. Figure 4 shows an example of a possible flow of content in developing multimedia. If a WWW page is required the developer can simply use a WWW design package, such as Macromedia Dreamweaver or Microsoft FrontPage. The content, though, may have to be generated by another package such as Adobe Photoshop or Macromedia Flash. In many cases though the content must be protect against copying of the original source, thus pack-ages such as Macromedia Flash and Macromedia Director can be used to protect this against copying. These packages also support enhanced user interaction, and excellent animation facilities. As the diagram shows the designer uses Flash and/or Director to pro-duce SWF or DCR files, respectively. These can then either be integrated in a WWW page, or they can produce a stand-alone package, using Director. Flash is an excellent package in that it allows media to be broken into small parts, which can then be integrated in the whole system. Flash content is often known as a Flash movie. The actual design files for Flash and Director are stored with FLA and DIR extensions, respectively. These files are typically not distributed, and should be kept in a secure way, as they contain much of the original source content.
Scaleable graphics. Flash produces graphics which can be expanded or contracted without losing the definition of the graphics content. It does this by making the content vector based, rather than in a bit-mapped format. Vector graphics are much more scaleable than bit maps. Streamed content. Flash allows the content to be delivered in required stages. For ex-ample it is possible to transmit the parts of the content which the user requires to see first, and then load the rest in the background. Timeline-based. Each Flash movie is created along a timeline. This allows events within the animation to be synchronized. This is especially important when audio requires to be synchronized with video/images. This timeline-based system allows different moves to run a different speeds. Optimized for the WWW. Flash content is highly optimized for producing excellent graphics with the minimum amount of bandwidth required. This is because much of the graphics capabilities is available in the player, which plugs into the browser. Scripted actions. Flash content can contain actions on the elements of the content, such as mouse over events on graphics, or mouse down events on buttons.