Streamlining Cross Platform
Presenter / Author:
Rodney Tamblyn, University of Otago
This paper was presented at the Australian Apple University Consortium
Conference in Brisbane 1996, and is made available here with the author's
- AUC (Australia) web site:
- Brisbane AUC conference proceedings:
The process of cross platform multimedia development has become much simpler over the last
few years. Increasing standardisation, the development of sophisticated media manipulation
software, and the emergence of authoring packages designed for cross platform operation have
been important contributors to this trend. Riding on the crest of this wave has been the
emergence of the World Wide Web (WWW) as a viable option for true multimedia delivery,
although the more traditional tools still have the edge in terms of stability and
interactivity. Today there are more multimedia delivery options than ever before to choose
from. This paper will attempt to put these options into a perspective, highlight some
particular technical pitfalls for the unwary, and will conclude with an extensive list of
online information sources to assist the reader towards creating a successful cross-platform
multimedia project. The first section "General Considerations" is aimed at the
non-technical reader, including those without programming or multimedia authoring experience,
"Technical Considerations" is aimed at multimedia programmers/authors, while the
concluding appendix contains hypertext references to online information sources.
The first and most important considerations in any multimedia project, but especially in
cross platform development, are (i) What is the objective of the project? and, (ii) Who are
the intended audience for the final product? The intended audience will determine amongst
other things the minimum hardware requirements of the delivery computers, and this in turn
will determine a host of other technical production parameters. The purpose of the project
will impose certain requirements on the features that must be delivered by the software,
including responsiveness/speed, complexity of interactivity, animation, graphics, and
performance of digital video and audio. Other requirements will be known only to the project
creator, such as the level of technical ability or aptitude and skill available amongst the
project team members, availability of technical support and training, project size, budget,
and timelines for completion. Other important considerations include whether control is
required over the distribution of the final project (this could be for copyright reasons).
Fairly early on it is important to decide what constitutes acceptable delivery standards for
your project: if you limit the delivery platform to the lowest end, you will be accepting
severe performance limitations (see appendix 1). Conversely, if a higher standard is set,
your project can be optimised to take advantage of the resources available. No matter which
software package is used, you should test your project on each platform frequently during
development. Make sure your software runs on the minimum hardware platform you have
In general, projects whose requirements are mainly text and graphics based, and whose
audience are online (e.g. students at a University) may be well served by creating a WWW
site. Projects that require access to large data files (e.g. large Quicktime movies, or lots
of high resolution images) with a higher degree of customised interactivity are often
better suited to a CD-ROM based solution. For more in depth discussion of specific
authoring environments, please refer to the references section at the conclusion of this
Protecting your investment in media preparation
Most multimedia projects require extensive media preparation, nearly always the time spent
in preparing media for use vastly exceeds the time spent in actually assembling the program.
Additionally, in the case of cross platform development, you may have files on both
platforms that require backup, along with files in multiple formats. The basics of project
management are important here: establish a reliable and regular backup system and make sure
that your files are backed up regularly. Do not rely on any one piece of media to protect
your data: e.g. if the only copy of a certain file is on a DAT tape, there should be at
least two copies of that tape. Make sure that your backup copies of data are NOT stored
with the originals, they should preferably be stored in a different building (off-site
backup). Make sure whatever backup system you use allows you to easily search for a file,
chances are, when you need it you'll need it in a rush. For backup software, I can recommend
Retrospect and Retrospect Remote on the Mac. If you use removable media, such as magneto
optical drives or Jazz/Zip drives, or if you are using CD-R, you may find it helpful
to obtain a file indexing application such as Virtual Disk. For cross platform development
you may wish to check when purchasing peripheral devices whether they will run on both
If you are developing on the Mac, or under Windows 95 on the PC, use long, descriptive file
names for files, to aid in clarity. I have found it useful to establish naming conventions
that shows the format of the file in the name. Using this system, when you are looking at
file listings is easy to identify not only what the image is, but what format it is in,
for example, an indexed image might have "idx" in the name, or a flattened movie
"-f". When files are ready to be used in the project (and these will be a small
subset of all the files you create) sad as it may seem, you are probably best to religiously
limit naming of files to 8 characters plus a 3 character extension. Use numbers and letters,
no special characters, and do not make differentiation between lower and upper case.
Observing these rules will save you a lot of wasted time when it comes to shifting the files
to the PC, or pressing an ISO CD-ROM (see below, Technical Topics, CD-ROM).
One of the early decisions to be made is how you intend to distribute your project. If you
decide to use the WWW, you will need to set up access to a web site on which to put your
pages up. If your project is at a University or business with an intranet, consider whether
you wish to make media files available via locally mounted volumes (through AppleShare or
Novell (PC), instead of linking to a document or file via "Http://", use
"file://". The user will have to ensure that the necessary volume is mounted, in
the case of lab computers, this may happen automatically when the student logs in.
Advantages of this system include speed of access (you are not relying on a web server to
dish out data), and copyright control (you can know with certainty that files can only be
accessed by people on your intranet). In a recent project for an accountancy course here at
Otago we have using this system with great success ...
Another similar option to consider is placing these local files on a CD-ROM, you could then
distribute the files on a cross-platform CD to users (e.g. students) while making additional
material available on-line through a web server ... (Omari, Arshad and Brogan, Mark; New
Directions in courseware delivery:Multimedia, CDROM and the Internet. (Use of HTML as a
portable document format for multimedia delivery via CD-ROM, discussion of tools used, and
problems encountered, the latter being slightly out of date since the advent of Netscape 3).
These "hybrid" solutions have many advantages: large digital files can be made
available without cost of downloading time/expense, graphics load quickly, yet content
material can be kept up to date (through web).
When using the WWW, be aware of the ways you can use helper applications to enhance your
project. We have used screen recording software (such as Lotus ScreenCam on the PC, or
CameraMan on the Mac) to record screen activity inside software. Using this software, help
files on mastering tasks in programs like SPSS or Excel were created. These files were
linked to web pages to provide simple on-line assistance to students learning these packages.
We have also used Adobe Acrobat to load PDF document files in the same way, making
examination papers and extracts from texts available online. An advantage of the Acrobat
being that we can restrict printing and copy/pasting of the documents, thus protecting
copyright, these files are also only available through the intranet. As PDF is a
cross-platform format, these files are readable from the Mac, too. Netscape now comes with
a QuickTime plugin on PCs and Macs (a VR plugin is also available), you may also download
Shockwave plugin to access Macromedia Director files on web sites from inside Netscape.
Other options include Java for interactivity, easy-to-use web authoring packages are now
available that open up Java authoring to non-programmers. Taking advantage of these
extensions to Netscape, you can enhance the multimedia content of your Web pages.
There are WWW links for all applications named or referred (indicated by *) to below. Please
consult the concluding section "Internet Resources for Cross Platform Development".
The emphasis is on Macintosh applications and utilities as I usual develop on Mac and then
convert to PC.
CD-ROM drives vary in terms of access speeds. The most common are double speed drives (300
KB/sec), while most new multimedia computers have quad speed drives (600 KB/sec). Be aware
that CD-ROMs have slow seek times when locating files. In general therefore, you should
avoid doing things in your program that require accessing different files simultaneously
(e.g. changing cards while playing a movie) or exceed the data throughput of the drive
(e.g. playing two QuickTime movies at the same time- Oracle Media Objects User's Guide,
Also, when scripting, be aware that your media is locked: changes made by the user may
disappear when the card/frame is left. Store user data in globals and test that your program
works correctly when in read-only mode.
If you are using Toast CD to prepare a cross-platform CD-ROM (which I highly recommend you
do) you may wish to select Toast's Hybrid CD-ROM format. Toast's Hybrid format is an ISO
9660 with the additional Mac information ...
(High Sierra format information), which will allow normal Macintosh file naming, icons, and
folders when the disk is viewed on a Macintosh computer. A system of aliasing allows each
file to have two names, one visible on the PC (ISO name), and another on the Mac, and allows
Macintosh files to have resource forks (these are stored as separate files on the ISO disk).
It is also possible to hide files from either platform, so users only see files relating to
Avoid the use of the resource fork on the Mac, as PC files do not have one, instead either
import media directly into the application (e.g. Oracle Media Objects, Director) or place in
a resource folder in the same file as your project and link media. If you are writing to
CD-ROM, and the authoring application you are using supports embedded media (such as Oracle
Media Objects) do so, this will cut down on seek time while the CD-ROM looks for data.
Depending on the approach you take, you may need to write a function to return the folder
The industry standard for cross platform video delivery is QuickTime. The Quicktime extension
is pre-installed on all Macintosh computers, while the QuickTime for Windows installer is
available from Apple. There are a variety of compression CODEC available in QuickTime,
including a number of new ones in QuickTime 2.5. If your project requires full motion, full
screen video, and if you are willing to restrict distribution to those computers with
hardware assisted playback (or to high end PowerPCs with QuickTime 2.5, in pre-release at
time of writing) you may wish to investigate MPEG video, otherwise, you'll probably be
limited to one of the lossy compression methods.
The best tool available for compressing movies into formats other than MPEG is Movie Cleaner
Pro (Mac only). Movie Cleaner will take you through the steps involved in choosing the
correct compressor and compression settings for your project, based on your responses to a
series of questions, and will then compress your digital video. Movie Cleaner also includes
advanced options for experts, including the ability to select palettes and apply custom
effects and is an essential tool for anyone involved in compressing QuickTime movies for
multimedia. The program will also prompt you intending to deliver cross platform, selecting
this option will ensure that control data for the movie is written to the data fork,
while other options will restrict data rates for CD-ROM delivery.
In the case of Macintosh Quicktime movies prepared in other programs, open the movie in
movie player (or a wide variety of other QuickTime applications) and select
"Save As", choose option "Playable on non-Macintosh computers" (this
will "flatten" the movie to a singe fork), and "Make movie self
contained" (file dependencies are not supported on the PC). You may need to rename the
movie, to ensure that the name is PC compatible, the three character extension should be
".mov". A variety of applications exist to convert Windows AVI movies to QuickTime
and visa versa*. If you intend to distribute QuickTime or QuickTime for Windows with your
software you must obtain a licence*.
First, decide on screen size (for most multimedia projects today this will be 640 by 480
pixels) and the colour bit depth. If your project requires photographic images, or the
digitisation of slides, for the highest quality I recommend the use of Kodak PhotoCD.
Depending on the nature of your project you may wish to purchase a digital camera such as
Apple QuickTake 150, which has software for both PC and Windows access.
If you intend to deliver your project to the widest range of computers, limit colours to 256
colours/8 bit. When displaying on a computer in 8 bit mode the computer's colour palette
will be set to that of the image. If your program contains a number of images, you may
experience undesired effects as the program transitions from one colour palette to another.
In addition, in certain packages such as Macromedia Director, visual effects may not work
correctly or at all. Certain colours in the palette should be reserved for system use, these
are used to correctly display dialog boxes, the menubar and other program windows, such as
the finder. Numbers reserved for these purposes are 1-10 and 247 to 256, leaving a total of
235 colours available for your project. Of course, if you are not showing dialog boxes,
menubars and have hidden other applications you may choose to ignore this restriction.
Showing a black full screen window behind your project (to hide other windows) will stop
users from seeing the effect of the palette change on other windows on the screen, which can
be distracting. Users with monitors set to greater that 256 colours will not notice these
problems, as image palettes will be a subset of available colours in the system palette.
Some applications, such as Director, will import images at the resolution the monitor is set
to, check your monitor bit depth. If your resolution is set to high, image palettes will not
be created, and you will not become aware of the problems referred to until you try to
convert your project to the PC, at which point images will revert to 8 bit display with
undesired effect and consequent introduction of transition/palette problems will occur.
There are two solutions to this problem: fade to a black screen when transitioning between
palettes, or prepare a "super palette" that contains all the colours used by all the images
in your program. There are several ways to prepare a super palette, the most labour
intensive way (but one which doesn't require you to purchase additional software) is to open
a graphics program such as Adobe PhotoShop, paste all the images you need to display in your
program into one big image, and select "Indexed Colour" from the Image menu.
Photoshop will create an optimised palette of the best 256 colours to represent the image.
However, for larger projects, purchase DeBabelizer, which can examine a folder of images,
create an optimised super palette, and convert the images to any desired format. DeBabelizer
also includes a wide range of other automatic image conversion features and QuickTime movie
manipulation options that make it an invaluable tool for the cross-platform developer. A
demo version is available.*
Text often does not translate accurately between Macs and PCs. Fortunately, most cross
platform authoring environments provide a degree of automatic font translation, so the
program will know if "New York" is used on the Mac to use "Roman" on the
PC. You cannot rely, however, on users having all fonts available, if it is important, check
in software for the presence of the fonts you require and alert the user if a needed font
is missing. You may need to do some experimentation to determine which truetype fonts, in
which sizes give identical results on each platform. If copyright provisions permit,
distribute the essential fonts with the project, especially if these are non-standard.
Tools exist for font manipulation, such as Macromedia Fontographer, however this is an art
Automatic font translation features in most authoring packages are not perfect, are a few
simple rules will help to avoid major problems. The first major difference between Macs and
PC is that PCs require line feed characters. Avoid the use of special characters, these
include ellipse (use three dots), curly quotes "" and ''
(use plain quotes), < /> (use >= /<=), bullet · use *, or any other special
character obtained via an option or shift key, e.g. degree symbol °. In addition, realise
that most font attributes, such as kerning and spacing, will vary. If you are relying on a
particular appearance for aesthetic effect, and the text is does not change, consider
pasting the text as a graphic.
Working with foreign languages imposes special considerations. In the case of Roman dialects,
your main problem will be accented characters such as
è, ü, or ç etc. When moving from one platform to another these
will not translate correctly. If you have a number of files to convert you may need to use
a word processor or commercial utility to assist in the conversion process. For small jobs,
you can use the "Character Map" program to determine the correct replacement
character on the PC. For scripters, another simple solution is to write a search/replace
handler which automatically replaces the special character. If you are testing user input,
be aware that many programs will not recognise the difference between the accented and
unaccented character : you may need to write an xcmd or dll in these situations.
If you intend to work with two-byte languages, such as Chinese or Japanese, the problems are
different again. You must decide whether your intended users will have native language
versions of the operating system available, or (in the case of Apple) whether they will
have the appropriate WorldScript language kits installed. You must ensure that your delivery
software can handle two-byte characters, some packages come in localised versions for the
particular country (documentation and menus will be in target language), these are available
from specialist distributors*. Another option is to either include the necessary fonts with
the program (you'll need to licence them), or present all characters as bit maps. Excellent
publications are available that cover this subject in detail*.
The simplest way to handle audio is to digitise your audio files as QuickTime movies.
Alternatively, digitise as AIFF and convert to WAV format for PCs using a utility such
SoundApp*. The best sound editing tool on the Mac, for multimedia work, is Macromedia
SoundEdit16, which provides format conversion, QuickTime support, and a variety of DSP
filters, including normalisation. Higher level products are available from DigiDesign. I
recommend digitising at 16 bit, 22050 Hz or higher. Whatever format you choose, make sure
that it is supported on both platforms.
Appendix: Platform standards
(Standards are in a constant state of evolution)
Low end MMPC:
386 PC or 030 Macintosh computer
8 bit colour (256) display, 14 inch monitor 640*480 pixels
8 bit audio (not all PCs have sound support)
Internet: 14.4b modem access
Slow 040 Macintosh computer, e.g. 660AV or LC 575 or slow Macintosh PowerPCs, such as
16 bit colour (thousands) display,14 inch monitor 640*480 pixels
16 bit audio (Sound Blaster on PC, Quadra or AV Macintosh built-in sound)
Internet 28.8 modem
Higher end MMPC:
Pentium PC (100Mz or faster)
PowerPC Macintosh (100Mz or faster e.g. 7100)
16Mb or higher DRAM
24 bit ("millions") colours, 15 inch or larger monitor
16 bit audio
28.8 modem (or faster e.g. ISDN or direct IP through network connection)
Comparison of presentation packages (Persuasion, PowerPoint), discusses cross-platform
Levitt, Jason; Comparative Review: A new look at Multimedia
Includes link to discussion of publishing/subscribing (Mac) and object linking (OLE):
Data Sharing Made Easy , Windows, Mac provide importing facilities,
Listing of 50+ authoring environments for multimedia,on Mac and PC, with links to homepages
for each company:
Multimedia software and hardware site. Good overview of the issues in areas ranging from AV
digitising to software, computer hardware and graphics:
Introduction to authoring systems, discussion of metaphors used, selection of appropriate
authoring system for specific tasks:
Siglar, Jami; Multimedia Authoring Systems FAQ
Version 1.4.3 ,
Magazine-style multimedia developers site, with good discussion of wide range of technical
and general issues, interviews, etc:
For an introduction to Oracle Media Objects, including software features supported:
Macromedia products (Authorware, Director, Shockwave, SoundEdit16, Fontographer, etc:
Windows technical information:
Check out the Windows developer's site:
For Frequently asked questions, try
Apple Mailing Lists, subscriptions:
A particularly good place to visit is the survival guides section of Apple Media Program's
WWW site. Topics covered include Shockwave, Cross platform multimedia, Desktop audio,
interface design, etc:
Apple Announces QuickTime Plug-in 2.0 for the Internet
Information on QuickTime Plug-in; QuickTime Enables Access to the Vast Majority of
Digital Media Content on Internet; New Plug-in to be Available Simultaneously on
Windows and Mac OS.
For developer information, licencing, technical questions, and the Apple Media Program, see
(Note you can download "QuickTime streamliner", a small drag-and-drop Mac application that
will turn any existing QT Movie into a cross platform QT movie).
QuickTime Cross-platform page:
Basic review of the standards and discussion of the latest compression hardware (up to $25,000):
Possibly the most popular multimedia video compressor:
The home page for Intel's Indeo video compressor. Download the latest version for Mac or PC.
There are a variety of documents, ranging from the Indeo FAQ and troubleshooting pages,
through to more in-depth articles:
There is also a special page devoted to cross platform development with Indeo:
Indeo and Cinepak, data rates on various computers compared:
Windows-based video compression:
"Video Compression for Multimedia, a 400 page book, teaches you techniques to capture,
edit, and compress digital video under Video for Windows. An accompanying CD-ROM illustrates
the products, technologies, and techniques outlined in the text." Ozer,Jan Video
Compression for Multimedia , Academic Press.
Video Post Processor and Batch compressors:
Batch compressor for Video for Windows, see:
The batch compressor for Macintosh is Media Cleaner Pro, an essential piece of software,
available in a free demo version, plus full version (that allows batch processing, and is
PPC native) a must purchase, see:
DeBabelizer The Graphics Processing Toolbox. A must have for cross platform multimedia
producers, allows conversion of images between almost any format you can imagine, it is
scriptable, does batch processing, supports Photoshop plugins, and can produce image
"superpalettes" (CLUTS), manipulates QuickTime movie palettes:
IMA Audio Compression
Everything you ever wanted to know about cross platform development using QuickTime
and IMA audio compression:
Graphic Utility FAQ
Find a link to the latest image version of any popular image utility (most platforms):
File Formats FAQ
For information on Macintosh Worldscript language kits:
In Australia and New Zealand, more information on a wide variety of international software
(including language kits, Chinese voice recognition etc) can be obtained from Techflow Pty,
Ltd, email@example.com, Phone Australia (02) 9971 4311.
Another good source for software (ask for their catalogue) is Cheng & Tsui Company,
25 West Street, Boston, Massachusetts 02111 Ph (617) 426 6074.
The industry standard package for pressing cross platform CD-ROMs (Mac only) is Astarte's Toast
Installer VISE (v4) from Mindvision is the best available Macintosh installer. It comes in a full and "lite" (v
3.5) versions, with the latter being available for free use by "shareware" authors:
For the PC, many authoring packages include built in installation creation options. Alternatively, you might
like to look into one of the commercially available options, such as the installer from Harrisoft (not
reviewed by this author):
Internet News Groups:
A good place (amongst many good places) to start is comp.multimedia
If you get stuck, after trying the above, send me an email:
Macromedia Multimedia Essentials for Windows, 2nd Edition, April 1995.
(Supplied with Director and Authorware)
Oracle Media Objects User's Guide, Creating Engaging Worlds, Version 1.1 for Macintosh, 1995
(Supplied with Oracle Media Objects).
Using Authorware, Version 3, First Edition, March 1995.
(Supplied with Macromedia Authorware).
Patten, Bryant, Cross Platform Survival, Apple Computer, 1993
Note:You will need Adobe Acrobat to display PDF files.
Omari, Arshad and Brogan, Mark; New Directions in courseware delivery: Multimedia, CD-ROM
and the Internet., in AusWeb95- New Directions in Courseware Delivery,
Educational Technology Support Services (ETSS)
Information Technology Services
University of Otago
PO Box 56
Tel +64 3 479 7580
Fax +64 3 479 8577
Back to top of page