Coneheads At The Gates
Volume Number: 21 (2005)
Issue Number: 4
Column Tag: Programming
The Source Hound
by Dean Shavit
Coneheads At The Gates
"Some who have just returned from the border say there are no barbarians any longer. And now, what's going to happen to us without barbarians? They were, those people, a kind of solution."
-Constantine Cavafy from "Waiting for the Barbarians"
Meet the Coneheads
QuickTime is a very special technology, something to be treasured. It sits in the top tier of video authoring and editing solutions very much like Oracle sits nearly alone in the top tier of database solutions (sorry IBM). QuickTime, as Tim Monroe's MacTech column points out every month, is much much more than a collection of vido and audio codecs, it is a framework of scripting languages, such as TCL, and interfaces that offer direct access to input and output hardware, such as Black Magic PCI cards or Firewire. From a developer or video editor's standpoint, QuickTime is a dream come true. As a holistic video solution for editors, developers, and consumers, however, QuickTime has quite a few shortcomings. That's where the Coneheads can help.
When I was in High School, my friends and I would stay up every Saturday night to watch "Saturday Night Live." I'm not going to give away my exact age, but let's just say that it was the original cast. One of the funniest skits (that had us rolling on the floor), was the "Coneheads," an alien family with pointy heads that indulged in Earth customs such as "consuming mass quantities." Whenever they felt affectionate, they'd rub the tips of their pointed heads together. When they got mad, they'd snap at each other making alien anger noises: "Meps. . . . Meps." When asked where his family came from, Beldar, the papa Conehead would answer, "We are from France," in a perfect alien monotone. However, it seems that despite that prophetic skit on NBC, the true Coneheads actually crash-landed on planet Macintosh sometime in the latter days of 2001, or early 2002. It is rumored that they had strayed off course on the way back to their home world, planet Linux, only to get caught up in some electromagnetic anomaly that was rearranging the core of planet Macintosh in the form of a blue Xs and Qs.
Not Cutting It
I'll have to admit that QuickTime met my video playback needs completely until early 1999. I don't know if was the turning of a century, or the turning of a CD that suddenly made me aware that the blue Q inside my System Folder wasn't cutting it--or, perhaps, I didn't realize that I had video playback needs until 1999. I had just purchased a fairly expensive mid-range Wall Street PowerBook, a G3 266 in late 1998. Of course, like all other Mac diehards, I lusted after the 300 mhz model with DVD drive, which was not only hard to get, but also very very pricey. So, I settled for the 266 with a CD-ROM. I had just embarked on a new career as a traveling Mac instructor, and, with my newly purchased PowerBook and my frequent-flier status, I wanted to sit on airplanes and in hotel rooms and watch movies on my Mac. I certainly had plenty of games (Maelstrom anyone?), and music in MP3 format (Remember SoundJam?) to keep me occupied on the road, and generally didn't suffer from PC envy on airplanes, that is until United Airlines came up with the brilliant idea of charging five dollars "rent" for headphones to listen to the in-flight movies, which seemed to coincide with the proliferation of DVD-playing Windows laptops. I started to feel a twinge watching other travelers watching movies on their portable computers. So, I thought to myself, there's got to be a way to watch a movie on my PowerBook. . . but DVD player upgrades for the Wall Streets were very expensive, and often hard to find.
Enter and Exit Video CDs
I had heard that VCDs (Video CDs) were an inexpensive alternative to DVDs for laptop owners unwilling or unable to upgrade. So, I searched the web, and found a site that had a good selection of movies in VCD format. Interestingly enough, I found the Video CDs to be much cheaper than DVDs, about ten bucks for a set. While most feature films will fit on a single DVD, movies on VCD generally came packaged on two CDs, sometimes three, or even four, as in the case of "Gone with the Wind." Though there was an obvious qualitative difference between VCDs and DVDs (VCDs use Mpeg-1 encoding, while DVDs use Mpeg-2), VCDs were still a notch above VHS tapes, and certainly more portable.
So, I had VCDs, a PowerBook G3 266 without a DVD drive, and plenty of time alone in my hotel room to watch the movies. Well, it turned out that the VCDs hardly worked at all, at least on a Mac (They'd play just fine on a PC, thank you). Meps! A couple of the VCDs I'd purchased would play just fine in QuickTime Player, others refused to play, giving cryptic error messages like "there is an error in the program." Even worse were those VCD movies where disc one of the set worked, but disk two didn't! Various freeware and shareware VCD players had mixed results, and it seemed that there were VCDs that simply wouldn't play on my Mac. More research revealed that there was a commercial package called CD/DVD Speedtools that was supposed to "fix" the VCD problem by replacing the Apple CD/DVD system extension with one that was more compatible with VCDs, but it cost $59. Meps! By this time, however, I'd pretty much given up on my VCD collection, and was saving up my pennies for a PowerBook with a DVD drive, which I purchased in 2000.
DivX Envy
Then the day came when I had the opportunity to show off my brand new PowerBook to a friend who "just didn't do Macs." My friend was a Windows power user and Network Administrator who maintained that Windows and PCs were better, and yadda yadda. He was impressed with the Pismo (2000) PowerBook., however, because of the large LCD screen, Firewire ports, and the DVD player, which his Dell Latitude notebook didn't have. I had just started my DVD collection with a collectors'-edition copy of "Heavy Metal: the Movie" but my friend had been collecting DVDs for a couple of years, as he had a DVD player for his home theater. "Don't you want a DVD player in your laptop?" I asked, and much to my surprise he said, "I don't need one." He then pulled out a CD case, removed a CD, put it in his Dell, opened a program, and we were suddenly watching a movie...yes, an entire movie on one CD, not two, with quality far beyond that of a VCD. Actually, I was hard pressed to tell the difference between what I was watching and what I saw on my while watching DVDs on my PowerBook. Before I could ask how, he said "It's a DivX, a compressed DVD that fits on one CD." I was pretty impressed. The DivX wouldn't play in QuickTime Player, and various Mac OS DivX players I downloaded seemed as rough around the edges as the VCD players that had failed me. My friend's innocent remark made things much worse, "I thought Macs were supposed to be good for video." Well, I didn't know what to say. I knew that iMovie and Final Cut were the programs of choice for digital video editing, but what was I supposed to say. . . "Sure, you can make movies on the Macintosh, but you can't watch them?" It's not just DivX, by the way, it's also .wmv, .asf, certain types of .avi, and even Mpeg-2 clips that QuickTime player doesn't understand. Meps.
Figure 1. Mpeg-2 won't play back
The Costs of Quicktime
No one who invests a thousand dollars in Final Cut Pro HD is going to blink an eye about a few dollars for a QuickTime plugin. What about The Rest of Us? Most Mac users are, of course, very familiar with the Quicktime Pro registration prompt, which always leaves us hanging a little, wondering if we should open up our wallets and plunk down the $29.95 fee, even though we now know that it amounts to a subscription, as new milestone releases of QuickTime require us to re-up for our keys. If we want to be able to import, export, or even access some rudimentary editing features, such as the ability to crop a movie, it's going to cost. If we're going to need DivX playback and encoding capabilities, that's another purchase. Mpeg-2 playback, for video captured on Tivo devices or Replay TVs, that's another fee. Here's the individual fees I'd have to pay for QuickTime to suit my video playback needs (note the emphasis on playback, I haven't even touched on all of my encoding needs):
- QuickTime Pro :$29.95
- QuickTime Mpeg-2 playback plugin: $19.95
- DivX Pro/MP3 encoder bundle: $19.99
- Grand Total: $69.89
The Digital Lifestyle
Apple's "Digital Lifestyle" products are the absolute best on the planet. iDVD and iMovie take content creation to new plateaus when it comes to professional-looking end results and ease of use. However, when creating DVDs with iDVD, it's important to note that the Mpeg-2 encoding is done within the iDVD program itself, not with QuickTime. It's not different at all if the tool of choice is DVD Studio Pro, or Final Cut Pro, either. QuickTime cannot inherently encode Mpeg-1 or Mpeg-2 video, and its Mpeg-4 encoder, while one of the fastest-performing in existence, produces jagged and grainy results, to put it nicely. Take a look at the finished results of a DV clip encoded with QuickTime's Mpeg4 and DivX Networks DivX Pro below, both at 29 fps (frames per second) with an 800k data rate.
Figure 2. Sophie in QuickTime Mpeg-4 v. DivX Pro Delivery Codecs
Both of these frames have been scaled considerably to fit into the Magazine, however, it's clear if you look at Sophie's whiskers, that the DivX codec produces much clearer results, with an even smaller file size, 1.9 megs v. 5.5 megs. Such differences are difficult to overlook or simply explain away. A developer or content provider looking for a codec for web delivery or playback on a small video appliance would certainly choose DivX over QuickTime's Mpeg-4, right? Well, not necessarily. While any version of QuickTime 6, either on Windows, Mac OS 9, or OS X has the ability to play back the Mpeg-4 clip, few users are going to take the trouble to go to the DivX website (presuming they even know what DivX is, because QuickTime's error messages doesn't describe the codec needed, just that QuickTime can't "understand" the file) and download the DivX playback plugin for QT.
It seems that while QuickTime's equipped with an excellent array of authoring codecs (those used to manipulate and edit video), it comes up rather short when it comes to the support of delivery codecs, which are used for actually distributing or playing the final product for playback either on a computer or via a standard hardware device, such as a DVD player, or even handheld video jukeboxes, palmtop computers, game consoles (such as the Sony Playstation Portable). Under OS X, DVD playback is handled by the DVD player application; DVD Mpeg-2 encoding's handled by external applications such as iDVD or DVD Studio Pro. This makes QuickTime somewhat less than useful when attempting to encode or playback mainstream video. In Apple's video model, Mpeg-2 playback outside of DVDs will cost you, as does the ability to encode Mpeg-2.
OK, so it's not the year 2000 anymore; it's 2005, and QuickTime 7 and OS X 10.4 (Tiger) will be available by the time this article reaches print. Has anything changed? Not really. QuickTime is still limited to its preferred set of delivery codecs, notably Mpeg-4, H263, (H264 in QuickTime 7), Sorenson Video, and Cinepak. Steve Jobs, in his MacWorld 2005 Keynote address, made it crystal clear that he was betting the future of QuickTime, and video on the Mac in general, on the benefits of H264. Like the Mpeg-4 in QuickTime 6, which debuted in 2002, H264 is supposed to bring QuickTime into the standards-compliant world of mainstream video. It remains to be seen if Apple's implementation of H264 will be less than spectacular, as in the case of QuickTime's Mpeg-4, or be the standard to which all other H264 encoders aspire. If it turns out that QuickTime's H264 is as awful as its Mpeg-4, a great cry of "Meps" might resound through the Mac community. . .
Meps!
Well, it seems that while QuickTime is perfectly suited to Apple iLife and Pro Apps, it leaves a lot to be desired in terms of compatibility and for extending video beyond the obvious devices such as the DVcam or the DVD player. Here's just a few things that the stock QuickTime on OS X doesn't do:
- Play VCDs with consistency
- Play Mpeg-2 encoded video, preventing QuickTime from playing back video from DVR devices such as TiVo and ReplayTV or EyeTV. (This is a very big deal these days, considering that many people view their PVRs (personal video recorders) to be the "iPods" for their television shows
- Encode Mpeg-4 with quality rivaling commercial or open-source codecs for playback on a variety of devices such as the Sony PSP or for delivery via the web, on optical media, or via streaming server
- Allow for the transcoding of supported codecs such as asf (Windows Advanced Streaming format) or wmv (Windows movie format)
- Allow for the manipulation or authoring of VCDs, SVCDs (Super or Mpeg-2 Video CDs) or DVDs or CDs encoded for devices which support DivX playback (to author VCDs, you'll need to purchase Roxio Toast. To author DVDs, you'll need Toast or iDVD or DVD Studio Pro)
My digital "hub" today has expanded far beyond the basic Apple successes of Mp3, AAC, the iPod, and iLife! My favorite digital hub device is a Replay TV PVR (Personal Video Recorder). I also have a PocketPC that functions as a video playback device, as well as my newest toy, the Sony PSP (PlayStation Portable), which is absolutely otherworldly as portable video player.
Coneheads to the Rescue
Back in mid-2001, I was too busy learning OS X to pay much attention to the video playback frustrations I'd been experiencing at the tail end of my life with OS 9. But once I got comfortable with OS X, I was pretty disappointed to find that the very same video playback limitations that existed with OS 9 had somehow managed to carry over to OS X. Interestingly, it seemed that VCD playback under QuickTime 5 in the early versions of OS X was completely broken, save for the ability to play the soundtrack, and it didn't get much better under QuickTime 6, either.
Figure 3. VideoLAN Cient playing back Mpeg-2 ReplayTV Content and VLC Controller
What did get better with OS X, of course, were the possibilities that software from another platform (or planet) might find its way through a software portal and entrench itself on the video landscape of OS X. And that's exactly what happened! The Coneheads had arrived! In early 2002, I stumbled across the solution to all of my video playback needs. It was a small program, with an innocuous icon of an orange cone, like you'd find sitting in the middle of a road. It's only description: VLC.app, a video player. Man, and what a video player VLC.app was back then, even in its earliest OS X version! SCVD, open DivX, MPEG-4, VCD, MS-DivX, MPEG-1 and DVDs . . . Video Lan Client played them all, perfectly and in full-screen.
Figure 4. VideoLAN Client icon circa 2002
Flash forward nearly three years. VLC, or VideoLAN client, is, as of today, the second-most downloaded piece of software at VersionTracker.com, after another piece of software that addresses a functional hole for the masses in OS X: BiTorrent. VideoLAN client is what I use to playback Mpeg-2 on a daily basis using DVArchive http://www.dvarchive.org, which allows me to archive, retrieve and playback recorded televisions shows with my PowerBook G4 and my Sonic Blue Replay TV 5040. Now when I go on the road, I can not only watch DVDs, I can also watch my favorite episode of "Desperate Housewives" either on my Mac or on a TV, and with additional open-source video encoders such as ffmpeg (ffmpeg.sourceforge.net) or mencoder (www.mplayerhq.hu), even on my Sony PSP or my HP PocketPC! There's even support for VLC in cellphone-as-Bluetooth-enabled remote control programs such as Romeo (www.irowan.com/romeo). VLC has, in many respects, become the bridge extending support to digital lifestyle devices currently ignored by Apple.
Figure 5. DVArchive Window
It goes without saying that something as useful and polished and free as VLC would be an Open-Source program. It's pretty easy to gauge the popularity of VLC for OS X, but with support for nearly every major computing platform, it's quite possible that VLC might be the most popular Video Player on the planet that's not a bundled part of any commericial operating system.
The VideoLAN project targets multimedia streaming of MPEG-1, MPEG-2, MPEG-4 and DivX files, DVDs, digital satellite channels, digital terrestial television channels and live videos on a high-bandwidth IPv4 or IPv6 network in unicast or multicast under many OSes. VideoLAN also features a cross-platform multimedia player, VLC, which can be used to read the stream from the network or display video read locally on the computer under all GNU/Linux flavours, all BSD flavours, Windows, Mac OS X, BeOS, Solaris, QNX, Familiar Linux...
VideoLAN is free software, and is released under the GNU General Public License. It started as a student project at the French Ecole Centrale Paris but is now a worldwide project with developers from 20 countries.
More information about the VideoLAN streaming solution [can] be found in the streaming section.
- http://www.videolan.org/
Yes, VideoLAN client is the client portion of the VideoLAN Streaming Server Solution, one that, not surprisingly, is positioned as an alternative to Apple's own QuickTime Streaming Server, which, incidentally, also has an Open-Source version called Darwin Streaming Server. Also not surprising is that the VideoLAN Streaming Server supports all the delivery codecs (DivX, Mpeg-2, H264) that the current QuickTime 6-based Apple solution does not. While video streaming servers aren't widely used due to enormous bandwidth requirements, the VideoLAN project is certainly one that demonstrates the Mac-community-wide need to have local playback support for formats not supported by QuickTime.
The Coneheads Need Our Help
How many of us currently have VLC on our Macs? I'd be willing to bet that anyone reading this who has tried to get some form of video content from their Macs to a non-Apple device, or to play video from a non-Apple source (other than a DVD) has either become a fan of VLC or has at least looked for a similar solution. In reality, we need the access that VLC provides to video content that QuickTime doesn't support, or the alternative is a future where video playback on our Macs is not only pay-per-play when it comes to format, but also opens the gates to pay-per-view technologies, even if the content (like cable television) is already bought and paid for. In a future article, I'll be putting Tiger and QuickTime 7 through its paces and compare the results of Apple's H264 with that of ffmpeg and mencoder, Open-Souce codecs that have supported H264 for nearly a year prior to the release of QuickTime 7. I'll also be getting into some detail about how to use those Open-Source tools to author DVDs, stream video to every computer on your corporate network, or put your family videos on a Sony PSP.
With success, comes pressure from those who'd like to wring more cash from our computers, with the European Union and other forces are trying to drive the Coneheads off of our computers and into oblivion, because it cannot control, tax, or license Open-Source projects like VideoLAN. Open-Source software is already a political movement in some respects, so it's not surprising to see "Democratic" entities like the European Union attacking the principles of the GPL. Sadly, I'm afraid that Apple might simply choose to stay out of this particular legal battle, and watch from the sidelines as it prepares the release of QuickTime 7, even though OS X has reaped massive rewards from VLC and other Open-Source multimedia technologies, which, like most things we come to take for granted, won't be missed until they're taken away.
In Next Month's "Source Hound"
"No more weak-kneed cats." The Source Hound takes an in-depth look at Apple's most important advance in Apple server technology since leaving the AppleShare IP and the Classic Mac OS behind. ACLs (Access Control Lists) are going to forever change the way we integrate Mac OS X Server into heterogeneous networks and finally unchain the hands of OS X Server Admins and Mac OS X Users alike!
Dean Shavit is an ACSA (Apple Certified System Administrator) who loves to use a Mac, but hates paying for software. Since he's not into breaking the law, his most common response to any cool solution is: "Does that cost money?" If it does, you can bet he's on the hunt for an Open-Source or freeware alternative. Besides surfing for hours, following the scent of great source code, he's a partner at MOST Training & Consulting in Chicago, where he trains system administrators in OS X and OS X Server, conducts large-scale Mac Deployment and Upgrade projects, and writes for his own website, http://www.themachelpdesk.com. If you have questions or comments you can contact him: dean@macworkshops.com.