Cross platform multimedia (or multiplatform multimedia) is becoming an important tool as the proliferation of multimedia packages on different platforms increases and diversifies. This paper examines some of the most widely used platforms for multimedia. Features which make them attractive for multimedia as well as packages which have the ability to make use of several different platforms are evaluated. The concept of datatypes is introduced and their importance in defining a multiplatform multimedia system is examined. A framework for multiplatform multimedia system is introduced. Future directions in the field are discussed.
By extending this concept further, it should be possible to have communication links between different platforms so that multimedia applications can make use of the strength of each platform. What this means, is that it should be possible to take a multimedia application from one platform and run it on another platform (ie, a heterogeneous network).
The need for this is obvious. Developers of multimedia applications, presentations, info-stations (and also other types of applications) can reduce the work needed to run the package across any platform. This implies the use of appropriate authoring languages that can provide equal (as possible) functionality when implemented on different platforms. Perhaps this could lead to an authoring "datatype" which would enable scripts from different multimedia authoring systems to be shared between different machines.
Many authoring languages exist. With a consistent authoring language across Amiga, Mac, and IBM the same multimedia application can be presented. A more advanced approach is to include network opportunities for running applications. In this situation, many machines can co-exist on the same network and be able to be used for the same multimedia assets. This is similar in concept to the X-Windows interface, where the user can run an application on one machine and interact with it on another. Furthermore, there is no need for both of the platforms to have the same hardware or operating system as long as one machine has a X-Windows client (or driver), and the other a server. If all platforms on the network support X-Windows, then X-Windows can be used to facilitate the creation of an authoring client for the system.
The media supported on each platform will be dependent ultimately upon the requirements. However, a general framework for an "ideal" multiplatform multimedia system shall be introduced.
One major hurdle exists on most systems when the representation (or formats) of the information required is to be stored on computer. The user (and developer) will continually be confronted with problems such as "it won't load GIF images but it will load JPEG images - and will require intervention with a file format converter". For example, features on the Amiga computer exist (and currently under continuous development) that will allow a more natural method of managing media in a variety of forms. The concept of DATATYPES is introduced to describe an object oriented, extensible system for managing types and transparent conversion between types (if the application is aware of datatypes), as illustrated in figure 1.
Figure 1: Datatypes hierarchy
A similar concept is also being developed by Kaleida laboratories (IBM and Apple) in their forthcoming ScriptX for Macintosh and PCs.
Consider an application which can only load PCX pictures. Utilising the concept of datatypes, a variety of different formats within the IMAGE class can be loaded (RAW, GIF, TIFF, JPEG, PICT, XBM, XPM, etc). This process is reversible, so if necessary, an image can be saved in a particular format.
More development is needed before a "true" multiplatform, multimedia system/software is generally available. The major factor which will determine whether widespread research into this area will develop is whether the vendors can agree upon set standards and methods for describing media, implementation, etc; then multiplatform multimedia will become a practical proposition. However, with no existing standard covering the needs of all developers, new "standards" are created.
Object oriented design provides a more natural way of describing highly complex systems. Thus, features can be added relatively easily without major rewrites to the underlying structure of the system.
Applications which detect datatypes can be easily integrated into a multimedia environment. Because of this capability, applications such as multimedia authoring systems can handle multiple file formats easily. It may even be possible to add a datatype for different authoring systems. With this sort of capability, multiplatform multimedia would become a reality and not some far off vision of the future.
Another step in the format standardisation game is the Interchange File Format (IFF) standard. This has been around since 1985, but is only in widespread use on the Amiga platform. IFF provides a standard format for text, graphics, animations, sound and other things. In theory any application which makes use of the standard can use files created by other packages.
This concept could also be extended to different multimedia hardware such as laser disks, scanners, digitisers, etc. A datatype could be provided to give the user a consistent interface to the device. If the same datatype was also present on other platforms, then a consistent user interface would exist across all platforms for any sort of multimedia device. This, once again, would aid in multiplatform development. Currently no vendor has implemented this philosophy to a large extent, though this sort of standardisation is becoming firmly evident on both the Macintosh (Script X) and Amiga (Workbench Classes) Platforms.
Synchronisation can be achieved by executing external programs on remote machines. The external programs or daemons provide the communications resources. They are written to communicate with their remote counterpart computers and report back to the local client machines. These programs come in two categories, blocking and non-blocking
Blocking programs act as semaphores where the program is executed and waited on by the script. The program accesses the network and checks for a variable. When the semaphore arrives, the program will then return the variable and allow the script to continue. This type of communication requires communication programs to be custom written but has the advantage of running over long haul networks like telephone lines.
For example, modems can be used in remote places where the script activates a communications program which calls a server and downloads an updated script. The new script can then be executed, implementing the changes. This method is very useful if the programmer does not want to buy the latest packages, or just run a test system with what they have. Furthermore, if the information has to be updated only once in a while the above example will work very cheaply as a continuous link does not have to be maintained. Some applications come with driven needed to do this. An example of this sort of application is InfoChannel IC 500 from SCALA A/V. Others will have to have custom drivers written.
On fast communication lines like Fibre Distributed Data Interface (FDDI), or Copper Distributed Data Interface (CDDI) this method can be used to implement full motion video which is generated on a remote node on the network. This video stream is then piped down the network to the local machine which processes it and displays it locally. Of course, full motion video takes up a lot of bandwidth and is only feasible of very fast networks like FDDI.
Non blocking communication programs are the ones which execute concurrently with the script. Example of this can be Network File Sharing (NFS) (Sun Microsystems) or Appletalk (Apple Computers).
Unlike the above method, a continuous link needs to be maintained, requiring a dedicated line. The advantage of this type of information exchange is the fact that in many local area network situations the network software will already take care of the link problem. These types of information exchange fall into two categories: the first one is message passing; and the second one is common file system.
Message passing is very similar to above blocking input/output solution except that the programs run in parallel. For example, a video conferencing program can be running in parallel with Authorware Professional which is making a presentation to a client. The best known example of this type of communication is X-Windows. Here a client and server are running together communicating over a network. The main requirement in this type of solution is that the platforms need to support preemptive multitasking. At present, this feature is supported only by UNIX workstations, Amigas and IBM compatibles running OS/2. Apple's multitasking is non-preemptive (hence cooperative) and is prone to latency problems in poorly written programs.
The file system solution involves sharing common disk space between a number of machines. This method has the advantage of being very easy to implement. The programmer needs no knowledge of the network software as the networking is performed transparently.
The Macintosh platform provides for sharing of data files very simply using AppleShare (Appletalk) utilities. A "single server - many clients" situation is possible where the software is stored on one server with a large disk and it is run by a number of smaller machines. Appletalk resources are supplied with every Macintosh sold. With the correct drivers, Appletalk can be run over Ethernet or FDDI.
Amigas, on the other hand, followed the workstation market and implemented Remote Procedure Calls (RPC) using Transmission Control Protocol /Internet Protocol (TCP/IP) as its "standard" networking system.
Commodore's peer to peer network system, Envoy, is being released with their Operating System Version 3.1. The features of Envoy are very similar to Appletalk. Envoy also provides two shared libraries which provide application programmers with a standard Amiga Application Programming Interface (API) to network services. Currently the network is based on a TCP/IP protocol stack though the shared library could be rewritten to handle Novell network resources concurrently. Multimedia applications would not have to be rewritten for the new network protocol, as this is transparent to the user and the programmer.
An Amiga, in its standard configuration, does not come with any dedicated networking hardware but Envoy, from Commodore, has driver provisions which allow it to work over a number of physical networks including parallel and serial connections. Those are supported by a number of third party products. These drivers come under the auspices of the Standard Amiga Networking Architecture (SANA II) network architecture.
IBM compatibles come with a large number of networking options, the main ones being TCP/IP and Novell. Those networks will quite easily share disk space in above manner. The hardware is usually sold with the software and Ethernet as well as custom protocols can be used.
For all the platforms there are products which will interconnect with other platforms. For example Amiga has products which will allow it to connect to Novell and Appletalk. Macs and PCs can also connect to TCP/IP Novell and Appletalk.
Currently the most widely used OS on the platform is MS-DOS though more and more users are making use of Microsoft Windows and its 32-bit implementation, Windows NT (Microsoft). The other option is OS/2 from IBM. Windows NT and OS/2 are multitasking operating systems with extensive features for multimedia application support. These features range from in-built networking support to Multimedia extensions to the Graphical User Interface. Due to the large number of hardware developers there is a very wide choice for this platform. Multimedia, Ultimedia, Mediascript, and Audio Visual Connections are examples of scripting authorware which support digital video (DVI) applications over networks.
System integrity is a problem, as one stalled task way not release the CPU, bringing the whole system to a halt. This presents special problem if the system is a server for a number of applications. Macintosh is also video unfriendly. That is, a Mac, in its standard configuration, will not directly output video to broadcasting or video recording equipment. This is only a problem if the user wants export video and appropriate third party boards can be purchased but they add to the overall cost of the system.
There is a range of multimedia packages for the Macintosh. The QuickTime software movie player is included with the operating system and allows very simple animation play. When read off a CD ROM, these animations can be quite effective. Some other packages include Authorware Pro, Multimedia Toolkit, HyperCard and Script X. With the exception of Script X, all these packages are the basic point and click variety. There is only a limited notion of variables and decision making, but in most applications this is sufficient.
Unfortunately, a far as multiplatform multimedia are concerned there are no specific packages. A package which will provide script synchronisation or script update over a network or phone line could not be located. Of course, methods discussed earlier are still applicable, especially using Appletalk.
INDIGO Magic is a new desktop user environment for SGI workstations. It uses a simple, intuitive highly iconic media interface to give the user access to both multimedia and operating system resources. Applications are thus able to use the full system resources of the machine.
One of the first applications available is Magic Media (SGI). This application allows users to create digital movies for use in SGI's Showcase product. Showcase is SGI's multimedia authoring system. It makes full use of system resources including the ability to use interactive 3-1) graphics which are calculated in realtime. Due to the nature of UNIX and its networkability, Showcase presentations can be distributed over a local network or distributed to a remote site halfway around the world.
The arrival of the Amiga, 4000/040 and its smaller counterpart, the A1200, were released in late 1992 and offered good price performance. When it comes to multimedia tools, the Amiga offers some of bed multimedia development packages available for any computer. These include the SCALA authoring package and the lesser known Ban and Pipes Professional. Bars and Pipes offers extensive inter-application control using AREXX (the Amiga's interprocess communication language).
In the realm of multiplatform multimedia the Amiga, is well endowed with products that make full use of the multitasking capabilities of the Amiga. Examples of such products are InfoChannel and MediaLink 3.0. These both make use of the SANA II to provide a device independent networking standard so that any application which use of this standard can effectively use any type of connection to the outside world from Ethernet to serial links.
The multistation capability of some multimedia packages allow data distribution over wide area networks which contain multiple machines of the same type. An example of this is the InfoChannel IC 400 package from SCALA A/V which contains special features for this sort of work.
Using the concept of EX modules, InfoChannel is able to provide new capabilities when the need arises. Current EX modules include timetabling and synchronisation features which enable multimedia applications to be synchronised across several client Amigas on a network.
This synchronisation feature allows InfoChannel to synchronise scripts over two or more stations using the null modem EX or the various network EXs. This feature, allows simultaneous playback of scripts across multiple platforms. Currently InfoChannel, along with MediaLink are the only authoring systems that offer synchronisation features across multiple machines.
Another feature of InfoChannel is the SCALANet EX. The SCALANet allows multimedia applications to be controlled and synchronised over a network. In concert with the SynchroEX IN and OUT EX Modules, InfoChannel provides an effective multimedia solution for data distribution over a wide homogeneous network. SCALANet also allows the user to make use of the resources of the V-LAN system. This is the Video Local Area Network which is used to connect a wide variety of media recording and playback devices.
It provides facilities for remote updates from terminals such as the Macintosh and PC compatibles over some sort of physical network. Scripts, Images and audio informational can be edited on these remote machines. Due to the program's flexible architecture this can be via serial, phone line and Ethernet links.
One facility that it offers, is that Macs, PCs and Amigas can be used as display terminals. The Amiga is used as the server, though, and Macs, PCs and Amigas are used as display stations.
This application is one of the very few that contain true multiplatform, capabilities. With further development this application could become a landmark development in multimedia authoring systems.
Script X from Kaleida has been designed to change this. The package in essence is a carefully designed object oriented authoring language, designed to run on several platforms. In fact it is suspected that a design of a dedicated delivery machine is under consideration.
ScriptX follows today's general move into object oriented programming by supporting objects as well as inheritance . A basic set of objects am the multimedia devices. Peripherals like CD-ROMs and animation players are seen to the programmer m distinct entities. The reason for this is the fact that on different platforms, the devices have different control methods. Inheritance allows the programmer to make a new object, inheriting another objects properties. For example a new "audio-video" object can be created by combining the audio and animation player such that the audio and video is played in sync.
By providing objects the language hides the device control problems from the programmer and allows easy cross platform porting. This concept can be taken further where the devices sense the capabilities of the platform to hide speed differences, giving a faithful reproduction on the delivery system. This allows a powerful system to be used for creation and testing of a script for a cheap delivery platform like the CD32, Amiga's new CD-ROM machine.
Although the language is aimed at using the CD-ROM as a cross platform medium, due to its object orientation there exists room for incorporation of a cross-network protocols. A network object can be quite easily implemented. Furthermore this object can be implemented such that is resembles a CD-ROM drive over a FDDI network. This once again would allow device independent configuration as a network CD-ROM object which would be transparent to the program being run.
Future directions in multiplatform multimedia include peer to peer conferencing. This has already been investigated by IBM, Apple Computer and Silicon Graphics for use with their 486, Macintosh and Indy systems respectively. Current communications hardware does not allow this to be entirely practical over public wide area networks at this time.
Further developments along this line include the capabilities offered by cable TV and B-ISDN networks. Advertisers would be able to "send" multimedia directly to the consumer and thus it would be advantageous if this transmission could be easily processed by the consumer's computer. As a result of this opportunity, a lot of research money is being spent on development of multimedia tools for these sorts of applications. The MPEG-2 standard is an example of this trend. It has been specifically design for distributing full motion video over slow networks such as cable.
Concepts such as Retargetable Graphics (RTG) and retargetable sound will allow current applications, if RTG aware, to make use of future hardware and software advancements.
Unfortunately the problem arises of how to control all of the new hardware and software made available, as well as the problem of a consistent user interface. With a little thought and application both of these problems can be solved as well as be extended to the problem of different file formats on each platform. If this capability is added to the operating system of each computer platform then multiplatform multimedia becomes trivial to implement.
It has been found that very few packages exist which are capable of multiplatform multimedia. Some others can be used in conjunction with appropriate networking software to provide a crude implementation of multiplatform multimedia.
Another trend in software development will be the support multiple platforms to allow a greater distribution of a vendor's product. This will be achieved through cooperation of the major manufacturers and software developers. Evidence of this trend is the formation of Kaleida Laboratories as a joint venture between Apple Computer and IBM.
The use of a hierarchical method of describing different media within a system shall become more prevalent. Datatypes are one such method of providing transparent interchange of data between various platforms.
In future, the interface to multimedia products will become an important issue due to the increased availability and accessibility to multimedia software. Guidelines should be established to provide consistent interfaces to various types of multimedia hardware (scanners, CD-ROM devices, etc).
Currently, however, multiplatform multimedia is in its infancy. With increased development this should eventually become a major focus of multimedia development.
Australasian Amiga Developers Association. Amiga related information.
Authorware Inc. (1991). Authorware Professional Documentation.
Kaleida Labs Inc. (1993). Kaleida, Script X, and the multimedia market.
MPEG Standards Committee. MPEG-2 Standard.
SCALA A/V. SCALA, InfoChannel Documentation.
Silicon Graphics. Indigo Magic documentation.
Dr H Edgar, Dr D G Myers, B von Konsky and T Docherty, School of Electrical and Computer Engineering, Curtin University of Technology
A Temple - Temple Interactive Media
C Ludwig, D Junod, Commodore Business Machines
Dr R Phillips - Curtin University of Technology
N Headlam - Headlam Computers
L Sorenson - Sontec
Authors: Martin Cholkowski Glen James Kidd Matthew Christou IMAGE Technology Group, Curtin University GPO Box U1987, Perth WA 6001 Email: scholkows@cc.curtin.edu.au Please cite as: Kidd, G. J., Christou, M. and Cholkowski, M. (1994). Multiplatform multimedia: A critical appraisal. In C. McBeath and R. Atkinson (Eds), Proceedings of the Second International Interactive Multimedia Symposium, 237-243. Perth, Western Australia, 23-28 January. Promaco Conventions. http://www.aset.org.au/confs/iims/1994/km/kidd.html |