LIBRARY: Tutorials Reviews Interviews Editorials Features Business Authors RSS Feed

Platform Wars: video formats, codecs and cross-platform compatibility

COW Library : Compression Techniques Tutorials : Manuel Minut : Platform Wars: video formats, codecs and cross-platform compatibility
Platform Wars: video formats, codecs and cross-platform compatibility




by Manuel Minut, Monterrey, Mexico
©2001 Manuel Minut and CreativeCow.net. All Rights Reserved.

Article Focus:
In this article, Manuel Minut, one of the leaders in the CreativeCOW Macromedia Director's forum guides users through the different video formats in order to keep compatibility between the platforms. He explains the difference between the codecs and when and what to use and where.



Somebody once said that "...all wars can be avoided but they are not because we need them." Why? Well, allegedly, because wars are the source of progress. I disagree with this statement!
But the intention of this article is neither to make the theory of war, nor to explain the mechanisms of global conflicts. All I shall do is try to make it easy to understand that “the war of platforms” is something that affects all of us and that yes, there are peaceful solutions to end this war.


The Question

Where to begin? With the beginning, of course! Somebody asked if there is any chance to make two different platforms like Wintel (short for Window + Intel, it means PCs, or Windows-native based computers) and Apple Macintosh exchange media files without the nightmare of file conversions, losing extensions and icon disappearing etc. Is there a way to pass the 3D animation created on my Intergraph workstation to Joe’s G4 to do the final composition and all those eye-candy effects? Then, can I get this back to the PC station, so I can print it to tape? Sounds like a Space Odyssey, especially that we are in 2001.


Once Upon a Time


Well, apparently, that was the beginning. But, to understand the mechanism of these two intensively used platforms, we have to go back in time, at least for a little while.

Back to the days when there were no PCs at all for the professional and home users. Ok, NASA had their “computers” (how do you think they sent that spaceship to put the man on the moon?!), but who could afford some million dollars “home-computer”? At that time, two persons, each one working independently, were trying to come-up with a solution to solve this need for personal computers. Of course, they were not working alone, they were the leaders of two teams. These two guys were: Bill Gates and Steve Jobs. They have developed two independent operating systems on two different platforms. These platforms still exist, after more then 20 years, with some major changes, of course.

Basically, a computer is storing data, transferring data between the components of the machine, interpreting data and processing data, performing mathematical operations on data. The big difference in terms of functionality between the two machines is how they interpret, store and transmit data within the machine and, years later, between the machines. To make it easy to manipulate the data, all computers store data in a sequence of zeros and ones, called bits. A sequence of eight bits, forms a byte. A byte for the computer is like the atom for a body: everything is related to the “small byte” when we are talking computers. The data is structured in “words of data”, which means in coupled bytes. First, a word of data had a byte. Then, two bytes, and then, four.


Big-Endians vs Little-Endians

The incompatibility problems begun when interpreting the data format. Steve Jobs’ team machine, Macintosh, was processing the data as follows: to send a word of data, the first byte was sent and then the following, down to the last byte of the word; Gates’ team machine, was doing the other way around: the last byte of the word was sent first, up to the first one at the end of the transmission. Same thing for storing the data into the hard-disks. This mechanism still happens today, for compatibility purposes.

Do you remember the Story of Gulliver, when the two kings were fighting on what is the best way to eat an egg: the little-endian vs big-endian? This inspired engineers and software designers when they named this “incompatibility” in data transmission the “big-endians, little-endians” situation.


Apple Talks loud and clear

Now, imagine you want to transfer information from Macintosh to Wintel and viceversa. “Impossible!” some said. “Will never be possible!” said others. What a nightmare!

Actually, there is a piece of software, AppleTalk by its name, who can do the service to “translate” from big-endian into little-endian and backwards. Problem solved, we can talk to each other without speaking the same language.


One Answer

The answer to the question raised above is “yes”, one can exchange files between the two platforms without any pain and still work things out perfectly. And I am speaking out from my own experience!


It’s time for a Quicktime

One solution, and the most elegant, comes from Apple’s side. Its name is Quicktime. I guess everybody knows this name, is one of the most popular player in the business. The ones who know about quicktime, please bear with me, even if I might be too “kinder-ish”. Thank you!

There are two versions of Quicktime available now days. The one for Macintosh and the one for Wintel. The players are 100% FREE to download from apple’s website. The url is:

http://www.apple.com/quicktime/download/standalone/

This is where one can download the standalone installer. The other workout is to install it directly from the website. I recommend the first option, is more elegant and more understandable (read “user-friendly”).


What is Quicktime player, anyway?

It is a cross-platform player, used to play any types of media, from .mov files to static images (tiffs, bmp etc) to sound files (aiffs, mp3s) etc. Let’s analyze! Cross-platform: this means that, regardless the platform, the files can be played on both platforms, or machines. Player, well, quicktime is a player, which means it plays the files. Intended, first, to play the movie files format (those files that end in .mov, now days can play a lot of file formats.

For further reference on file formats playback capability, please consult:

http://www.apple.com/quicktime/specifications.html


Universal player

Is an universally accepted player for every single piece of software that produces media files. Adobe After Effects, Avid’s whole line, Discreet’s, Matrox, DPS, Media 100, Macromedia Flash and Director, Media Cleaner, you name it! What makes it so extraordinary is that it has lots of codecs included already in the free player. What does this mean? You can export from your digital content creation software (referred as “dccs”, further on) with different compressions schemes, according to your needs and be able to play the *.mov files in any computer that has Quicktime player properly installed. Regardless the platform; remember, it is a “cross-platform” media player.

The suitable applications for quicktime are infinite: from high-end video post-production to internet streaming, from multimedia presentations to film post-production. As you can notice we have covered the whole spectrum of visual media now days.


Too good to be true…

… one might say. No, better said “too true to be good”. What are the limits of this powerful medium of communication? Well, there are some limitations, of course, but they are reasonable. I mean, let’s take an example: if you record an event with your VHS-C camera, and then do the transfer on Digital Betacam format, make several generation copies and then try to broadcast it MPEG-2 @30 Mbps, you still get VHS-bad-copy “quality” image. You will not be able to tell Chip from Dale! That kind of limitation is what we are talking about. What is meant to be for high-end video will have a certain quality, what is meant to be for film, will have another quality and what is meant to be for multimedia and internet streaming will have a different quality.


Examples

I think at this point a couple of examples will be helpful.

Case # one: in a post production facility, one needs to transfer high quality video files from one computer to another several times. You have a Wintel PC with a 3D animation dccs. You do your animation in this software, you export the file WITH ALPHA CHANNEL as a quicktime movie, enabling the cross-platform export option (on the dccs that have that option; if they don’t have it, don’t panic, it comes by default!!!!). It is preferable to export with no compression, so you don’t loose quality. Animation compressor can do an amazing job and is supported by both platforms. (On codecs, later, folks!) Now you want to import it in another dccs, to composite it and do some effects. This software resides in another computer and is an Apple Macintosh G4 PowerPC. The mean of transfer can vary, we will not cover this subject here. Once you have your quicktime movie in your G4, you import it in the compositing dccs with its alpha channel and do the job. Any pain 'til now? Don’t think so. Then you send your video back to PC platform, because you want to print the movie to tape.

Case # two: a postproduction facility needs to present a preview to a client. Same scenario as in the first case, except that you want to send the video to your client for preview. You export the piece of video w/o alpha channel, as a small and compressed quicktime movie. Sorenson compressor does a great job (on codec, later folks!) you burn a CD and take it to the client. Make sure you add on that CD the standalone quicktime installer, for both platforms. Maybe your client lives in the past and does not have quicktime player installed yet in his/her computer! Now, no matter what platform the client has, he/she can still see you work and sign your paycheck!


Codecs. Which one is appropriate for my application?

A codec is an algorithm of coding and decoding the information. Basically, a codec is a piece of software that resides in your computer and is called by the dccs when need to interpret your media file or when you need to export/render your media files. The codec can reside in a chip on your video-capture card, in that case we say it’s a hardware-codec. This is very useful for real-time capability.

There are several codecs available with the free version of the quicktime player. Let’s analyze the most common ones!


H.261 Video CODEC is ideal for videoconferencing and video transmission applications. The ITU-T H.261 standard is part of the H.320 group of standards for audio/visual communications. H.261 forms the heart of a very wide range of videoconferencing and video communications systems. Applications include: Studio-based and desktop videoconferencing; Surveillance and monitoring; Computer-based training.

More info: http://www.4i2i.com/h_261_software_video_codec.htm


H.263 is a standard video-conferencing codec. As such, it is optimized for low data rates and relatively low motion. H.263 is an advancement of the H.261 and MPEG-1 standards, designed with the goal of producing substantially better quality below 64 kbit/sec.

Pros: Good quality at low data rates. Generally better quality than H.261

Cons: Standard H.263 streams can only have a fixed frame size (QCIF, or 176x144 pixels). Not always as good at very low bitrates (such as 14.4 modem) as H.261.

Tips: H.263 has a strong temporal compression component, and works best on movies in which there is little change between frames.


Cinepak

Cinepak Toolkit is an easy-to-use compression tool for QuickTime. Cinepak Toolkit has been optimized to work with the NEW CinepakPro compressor to deliver high-quality compressed digital movies for the Web, CD-ROM, DVD-ROM, Kiosk, Intranet and game environments. Its greatest strength is its extremely low CPU requirements. As computers have continued to advance in years since Cinepak was created, developers are now using Cinepak at higher (and lower) datarates than it was originally designed for, and making ever-larger movies.

Cinepak's quality/datarate was amazing when it was first released, but is not in the same class as newer codecs available today. There are higher-quality (and lower-data-rate) solutions for almost any application.

More info: http://www.cinepak.com/text.html


Component video codec:

The Component Video codec (also referred to as the "YUV" codec) was introduced in QuickTime 1.6. It compresses at a ratio of 2:1, and is best suited to archival or interim storage of digitized video.

Pros: Asking QuickTime to record in Component Video bypasses a couple of steps during digitization, and this can improve the capture frame rate on some digitizing hardware.

Cons: Due to its compression ratio of 2:1, the Component Video codec will require substantial disk space to store captured video.


M-JPEG

There are three JPEG-based codecs built into QuickTime. These are: Photo-JPEG, MJPEG-A and MJPEG-B.

M-JPEG stands for "Motion JPEG," and is identical to Photo-JPEG with two differences. First, Photo-JPEG is for progressive images, which M-JPEG compresses the two fields of interlaced images separately. Second, the M-JPEG codecs have translators built-in to support the different capture cards (hardware codecs).

M-JPEG is not the same as MPEG, although the names are confusingly similar. The primary difference is that MPEG provides temporal compression, while M-JPEG only provides spatial compression. In English, this means the frame is compressed using the information only from within the frame, while MPEG is using the information from previous and next frames to compress one frame. It is suitable for non-linear editing. Many hardware codecs are based on this class of compression.

Pros: M-JPEG codecs are often used as storage formats for large files that need to be archived with good quality. It is a lossy codec, but at 100% quality, the image degradation is minimal.

Cons: Not appropriate for final delivery of video (on WWW or CD-ROM).

Tips: Avoid saving the same file multiple times with any JPEG codec, as the JPEG artifacts may build up and become objectionable.


Photo-JPEG

The Photo JPEG codec implements the Joint Photographic Experts Group (JPEG ISO version 9R9) algorithm for image compression. It is generally used for storage of still images. It can also be used for editing and storage of high-quality video files.

Pros: Picture quality is generally good enough for use in desktop publishing applications. This codec is great for compressing high-resolution, photographic images, and is also very good for 8-bit grayscale images. It works very well for "slide-show" movies that have a very low frame rate.

Cons: Not appropriate for delivery of motion video

Tips: If the same file is saved multiple times, the JPEG artifacts may build up and become objectionable.


Animation

QuickTime's "Animation" codec is best suited for storage of two-dimensional animation and computer-generated video content. It is lossy at quality settings from 1%-99%, and lossless at 100%. Animation at 100% is generally used as a "storage" or intermediate work format.

Pros: This codec is great for sequences of screen images. Since it is lossless, Animation at 100% will not introduce any noise into the video signal, which is why it is sometimes used instead of JPEG. The Animation codec works with all bit depths. It is slightly slower than the None codec, but usually produces smaller files.

Cons: At 100% quality, files compressed with the Animation codec may be quite large. Images captured from videotape generally have visual noise which can corrupt the inherent similarity of the pixels and make it more difficult for the codec to achieve good compression. This problem is surpassed if you have a good-quality video.

Tips: The Animation codec's performance and compression ratios are highly dependent on the images being compressed. The codec is very sensitive to picture changes and generally works best on images that have been generated synthetically.


Graphics

QuickTime's "Graphics" codec uses an 8-bit compression approach very much like animated GIFs. It provides higher compression ratios than the Animation codec at the expense of slower decompression time.

Pros: The Graphics codec typically generates a compressed image that is a little less than one half of the size of the same image compressed by the Animation codec. it is also good for use with video captured at 16 or 24 bits and dithered down to 8 bits.

Cons: Not well suited to video. The Graphics codec can decompress a given image at only half the speed of the Animation codec.


None

QuickTime "None" codec doesn't actually compress. As such, it is lossless and produces huge files. It is often used as a storage format for files that need to be archived with perfect quality, as well as an intermediate format for files that need to have effects applied to them multiple times.

Pros: Lossless

Cons: The None codec produces huge files. Movies using the None codec normally won't play smoothly given their high data rates. The Animation codec is usually a better storage format given its smaller file sizes.

Tips: When converting full-color data to indexed colors (256 colors or less) using the None codec, the Quality setting affects how the codec does the conversion. If the Quality setting is set to Most, you'll get a dithered image. If the Quality setting is set to Least, you'll get a posterized image.


Video

QuickTime's "Video" codec was one of the first widely available codecs for delivering compressed digital video. It predates Cinepak, and does not include data rate control capabilities. This codec was designed to run on the computers of a decade ago, so it makes low demands on the CPU. Because of this, the image quality at a given bitrate is not comparable to newer codecs. The "Video" is now only used for special purposes, such as quick "preview" compressions, and should almost never be used for delivery of compressed video.

Pros: Plays well on the absolute slowest machines. Compresses very quickly, so it's good for visualization tests.

Cons: Image quality at a given bitrate is not nearly as good as with modern codecs. Not generally appropriate for delivering video (either web or CD-ROM)


Sorenson

One of the best in the business, folks, when it comes to web and CD-ROM publishing. Compared with Cinepak, Sorenson Video generally achieves higher image quality at a fraction of the data rate. This allows for higher quality, and either faster viewing (on the WWW), or more movies on a CD-ROM (often four times as much material on a disc as Cinepak). Now, at its third version, is just great. You can find Sorenson in two versions: Standard Edition, a free plug-in that comes bundled with Quicktime 5 player and the Developer’s Kit, or Pro. The big difference between the two of them is the Pro version has a lot of compression controls activated. Such as Variable Bit-Rate.

Let me explain myself: when movies are compressed, each frame of the video must be encoded to a certain number of bytes. There are several techniques for allocating the bytes for each frame. Fixed bitrate is used by certain codecs (like Cinepak), which attempt to allocate approximately the same number of bytes per frame. Variable bitrate (VBR) is supported by other codecs (such as MPEG-2 and Sorenson), and attempts to give each frame the optimum number of bytes, while still meeting set constraints (such as the overall data rate of the movie, and the maximum peak data rate).

Almost every DVD-Video feature film available today uses variable bitrate encoding. The need to acheive the best possible quality in a given space is important even on a 4.7GB disc; it is even more important on a 650MB CD-ROM or a 1MB web file.

More info: www.sorenson.com


And last, but not the least: MPEG

MPEG-1

MPEG is a set of international standards for audio and video compression.

MPEG-1 provides excellent audio and video quality at 1x and 2x CD-ROM data rates. It is used for a wide range of applications, from CD-ROM to VCM ("white book" video CD) to kiosks. MPEG files may be either "system streams" (both audio and video), or "elementary streams" (audio or video.)

In order to achieve this level of quality, MPEG requires fairly powerful playback hardware. Nearly all computers sold today have sufficient CPU power for basic playback, and many high-quality video cards now include MPEG playback acceleration. As an open standard, MPEG has a wide range of encoders and decoders available. The standard defines a specific way to decode a stream, so in theory all decoders should look the same. But it does not define a specific way to encode a stream, so the results achieved by different encoders can range from marginal from some consumer applications, to very good for professional encoders.

Pros: Excellent audio and video quality. Widely implemented standard, so files can be used in many environments

Cons: Moderately high playback requirements; many older are not capable of viewing MPEG. Not well-suited to WWW video (wait for the upcoming MPEG-4 folks!)


MPEG-2

MPEG-2 provides broadcast-quality digitally encoded audio and video. It offers outstanding image quality and resolution (somewhat better than laserdisc). MPEG-2 is the primary video standard for DVD-Video.

Playback of MPEG-2 video generally requires special hardware, which is built into all DVD-Video players, and most (but not all) DVD-ROM kits. Some of the fastest CPUs may be able to play MPEG-2 without specialized hardware. For instance, a 400 MHz iMac with DVD player can do the job; or a Pentium II 500 MHz, too.

MPEG-2 was based on MPEG-1, but optimized for higher data rates. This allows for excellent quality at DVD rates (300-1000KBps), but tends to produce results inferior to MPEG-1 at lower rates. It is an excellent broadcast-quality audio and video codec. It is also an international standard which is becoming widespread in broadcast industry.


Solution number two

Another cross-platform solution: tiff sequence or targa sequence. It is not that elegant but is more sure and more intuitive for some people. Basically the solution consists in creating a sequence of files that share the same “root-name” and teminated with a number, designating the frame number in the sequence.

To be more specific, here is an example: let's assume we have one second of video exported as a tiff sequence. In NTSC, the sequence will comprise the following files: name.0000.tif, name.0001.tif, name.0002.tif, name.0003.tif, …, name.0028.tif, name.0029.tif.

But, beware! There are some dccs that export the folowing pattern of files: name.1.tif, name.2.tif, …, name.10.tif, name.11.tif, ..., name.20.tif, name.21.tif, …, name.29.tif. This is not alway good, because some dccs will import the files in this order: 1, 10, 11, 12, …, 19, 2, 20, 21, …, 29, 3, …, 9. I guess this was not the way you expected your program to behave! The workout of this problem is to manually put your first 10 frames in a separate folder, then the next 90 frames in another folder, so you can easilly manage the “frame-range numbering” situation. You will have in a folder the frames 0 to 9, in another folder the frames 10 to 99, in another folder the frames the frames 100 to 999 and so on. It's not that complicated, so don’t panic!

That would be the elegant way of this method. If not, well… go QuickTime!

There are some pros and cons of this solution, too.

Pros: Good picture quality, since the tiffs and targas are not compressed very much. It is good for compositing purposes, because it preserves the information on alpha channel.

Cons: Well, being a sequence of static frames, it’s non-interlaced. This can cause problems on rapid movements inside the frame, like an unwanted strobe effect. The “frame-range numbering” situation discussed above.

Note: Well, fellow farmers and worldwide COW-workers, that was it. I hope I answered some of your questions. These are the two methods that I know of and have used for four years, since I started to work on both platforms. If you have any questions, comments and suggestions, I will see you in the Macromedia Director Forum, at the COW.


###




Please visit our forums at CreativeCOW.net if you found this page from a direct link




Related Articles / Tutorials:
Compression techniques
A Talk with Sorenson Media's Eric Quanstrom

A Talk with Sorenson Media's Eric Quanstrom

Jerry Hofmann chats with Eric Quanstrom, VP, Marketing & Strategy at Sorenson Media, end to end media compression and distribution solutions.

People / Interview
Jerry Hofmann
Compression techniques
Sorenson Media's Squeeze 6 Compression Software

Sorenson Media's Squeeze 6 Compression Software

CreativeCOWs leader, Jerry Hofmann reviews Sorenson Medias Squeeze 6 Compression software and has determined that this is the best version yet.

Review
Jerry Hofmann
Compression techniques
Jim Harvey reviews

Jim Harvey reviews

A DVD about compression gets an enthusiastic 5 Cow rating? Really? Really! CreativeCOW.net Contributing Editor Jim Harvey takes you inside the new Creative Cow Master Series DVD by Aharon Rabinowitz, "Creating Web Video: Internet Killed the Video Star." See why Jim thinks this is one of the most essential --- and enjoyable -- training DVDs you can buy.

Review
Jim Harvey
Compression techniques
Internet Killed the Video Star: The DetailsInternet Killed the Video Star: The Details

Creative COW's Aharon Rabinowitz has completed a new DVD for the Creative COW Master Series, about every aspect of preparing your video for the web. Here's the Table of Contents.

Feature
Aharon Rabinowitz
Compression techniques
Introducing: Internet Killed the Video Star!

Introducing: Internet Killed the Video Star!

Creative COW's Aharon Rabinowitz has completed a new DVD for the Creative COW Master Series, about every aspect of preparing your video for the web. We at The Cow are very excited about it, so we asked Aharon to tell you about it. We've also included some of the trailers Aharon created in his inimitable style -- great information presented with humor and high energy. Read on for a link to Chapter 1 of "Internet Killed the Video Star."

Feature
Aharon Rabinowitz
Compression techniques
Cross-Platform Workflows using SheerVideo compressionCross-Platform Workflows using SheerVideo compression

In this Creative COW Magazine article, David Battistella takes a look at cross-platform workflows using the SheerVido Codec. SheerVideo is a family of lossless codecs developed by BitJazz for professional-quality uncompressed video. David does a great job in this article explaining the how, why, and if you should utilize this codec into your workflow.

Review, Feature
David Battistella
Compression techniques
How To Preserve Detail in Mini-Media Movies

How To Preserve Detail in Mini-Media Movies

In this Creative COW Magazine article Aharon Rabinowitz discusses distributing mini-media formats across the web, mobile phones and other devices. Aharon gets into the specific aspects of this growing market and covers common questions like, When to use Flash or Quicktime? What compression should I use? What bit rate? and gives helpful tips for distributing your videos to some of the most popular areas such as YouTube.

Tutorial, Feature
Aharon Rabinowitz
Compression techniques
Radical Approaches to Mini - Media

Radical Approaches to Mini - Media

Portable media is quickly becoming one of the most popular arenas for video production and broadcast. In this Creative COW Magazine article Tim Wilson discusses the insights about multi-platform media revealed from his interview with Evan Schechtman, CTO of Radical Media and explains how to get the tools to utilize this expanding marketplace.

Feature, People / Interview
Tim Wilson
Compression techniques
Jerry Hofmann reviews: The Sorenson Squeeze 4 Compression Suite

Jerry Hofmann reviews: The Sorenson Squeeze 4 Compression Suite

In this article, Jerry Hofmann reviews the Sorenson Squeeze 4 Compression Suite. "If you've read my reviews before about Sorenson's efforts in the Mac World, you'll know I've long been a fan of the company's products. The ALL NEW version of Sorenson Compression suite 4 is shipping now, and is by far the company's best effort to date, and I've been running the Squeeze 3 version, and have always found it easy to use, but this new version really takes the cake. Sporting a much beefier interface, Sorenson's new release adds new support for HD, including Apple's own recent codec, H.264. This is just the beginning however."

Review
Jerry Hofmann
Compression techniques
A Review of Sorenson

A Review of Sorenson

Jerry Hofmann has been impressed before by Sorenson Media's efforts -- afterall, he reviewed Sorenson Media Squeeze for Quicktime. But with Sorenson's new Compression Suite, Jerry is totally blown away by the Suite's deceptively simple but incredibly powerful new interface. It just doesn't get any easier than thisif you want to compress video for the web, email or CD!

Review
Jerry Hofmann
MORE
© 2016 CreativeCOW.net All Rights Reserved
[TOP]