Apple Opening QuickTime Code
Wonko42 writes "Apple has apparently decided to make QuickTime open-source in order to beat the competition. The article is on News.com. " I sure hope so. Of course, the article leaves several questions unanswered: what kind of license? APSL? What about
codecs? Since it's only the server, I assume nothing will happen in regards to opening codecs. I hope I'm wrong, but fear I'm not. Thoughts?
There seems to be a lot of confusion here as to what QuickTime really is. It's not a "format" and it's not a "codec".
.mov file format like any other more primitive format (like AVI) -- just ignore the atoms you don't know how to handle, and stick to codecs like MPEG-1 or MJPEG.
It's an entire library of code for managing time-based data. There's a file format, sure, and codecs, too, if you're doing video or audio data. But the magic happens when that file format gets processed by that library of code.
The QuickTime file format is wel l defined. It's a pretty nice format, actually, which I suppose is why the MPEG-4 people have decided to use it.
In its simplest form, a "movie" (file) can consist of a track, which points to a media, which points to a media handler (often a codec). That's basically what an MPEG or AVI file looks like -- a stream of samples which have a defined media handler.
But a QuickTime movie can have multiple tracks of information, of any type. These tracks have "media handlers" associated with them -- which is where the codecs come in. The weird stuff happens when you have media handlers that allow you to translate other media handlers, media references that point to other media references, filters, sprites, interactive behavior, etc.
You can't separate the "content delivery" portion of QuickTime from the "content creation" part, because the content creation part happens during content delivery. Think about that for a second -- this is an amazingly powerful concept. It's an object-oriented system for processing time-based data.
A movie could contain two tracks, one which points to a stream of MJPEG samples, while the other points to a convolution filter. This filter is applied in real time during playback -- the original MJPEG data doesn't get changed.
QuickTime movies also don't have to contain their media data. You can easily make a movie which composits -- on the fly -- several different movies, some on CD-ROM, some streaming over a network, some pulled from your local hard drive. Most people here would consider this to be content creation, and assume that you would be compositing it to a single stream of video samples that would then be played back, but QuickTime does it at "runtime".
Now, since the QuickTime file format is well-documented, and is completely independent of any particular codec, you could easily write a simplified QuickTime generation/playback layer for any operating system you like. You could treat the
As to Apple open-sourcing the QuickTime code, take a look at the QuickTime API, and ask yourself how much engineering effort went into making it. The amount and quality of code in QuickTime makes Mozilla look like a weekend project. I'd say it approaches the complexity of the Linux kernel, and I believe the only reason the Linux kernel has so many developers working on it is because they need it. I doubt that there are as many programmers out there who would contribute to a GNU/QuickTime effort.
The only place that a viable competitor to QuickTime is going to come from is the commercial (read: proprietary) arena; i.e., Microsoft. Don't look to Real as a competitor -- their format is designed for streaming over networks, and only for streaming over networks. It doesn't have the dynamic, client-side, on-the-fly creation capabilities that QuickTime has, and I don't think Real has a real motivation to add those. Microsoft does, but they're lagging, and most content creators prefer QuickTime.
Now, as to Apple porting QuickTime to GNU/Linux or *BSD, that I can see. But not yet. They'll do it when there's a decent UI standard for both content creators and consumers, and Linux has a ways to go yet. The best way to get QuickTime for your favorite free operating system is to work on [insert UI system of choice here], and make it suitable for the end-user. Which will naturally increase desktop acceptance to the point where Apple would be foolish not to offer QuickTime for the platform, in much the same way that they had to offer QuickTime for Windows.
Disclaimer disclaimer: I don't work for Apple. I just like some of their technology. I also like some of Real's, very much. I don't think I can find anything good to say about Microsoft's, except that at least they keep trying.
Quicktime is:
And the best people can do is 'Duh, AVI is faster on Windows 95, Quicktime sux!'?
Sheeeeeeesh. Can we say apples and oranges people? In fairness, what we're actually talking about here is a _creation_ format- though Sorenson performs amazingly well, I for one would be happy using Quicktime to _produce_ multimedia content and then for your general movie-type stuff, 'rendering' it all down to a plain data stream like MPEG. I've seen some very pretty MPEG
But then I can- I'm dualbooting a Mac, deal with it. I like that much better than dualbooting a Windows machine and giving money to the Butcher of Redmond, rather than the apprentice butcher of cupertino which (as you _know_) may never fully gain the power to destroy which Redmond has.
You can do nonlinear video editing all you like on AVI, for what it's worth. How much do you have to pay? With Quicktime (at least on the Mac) you get to do video editing at no _cost_ with MoviePlayer (granted, you're not supposed to, but guess what? The old MoviePlayer from before QT3 _still_ _works_ with QT3, and lets you do all the editing and file saving with the new codecs.)
There are freeware MP3 encoders. Where's _your_ freeware nonlinear video editor? How's it for editing files by reference and working from existing HD data without generating huge amounts of new work files? I'm sorry- yes, I'd like to have a good converter for changing elaborate QT movies into MPEG, but a lot of people seem to have no idea what Quicktime is.
As for AVI, basically you're talking %90 elaborate codecs explicitly made by Intel to be insurmountably difficult to translate to other processor architectures. I see that nobody _minds_ the lack of current Indeo codecs on PPC, Sparc, Alpha, MIPS yada yada... seems like if it runs on Windows on Intel, it must be okay, eh guys?
While you're ranting about how bad Apple sucks, mind getting after Intel to translate their codecs to an architecture approximately as popular as all of Linux? Geeeeez... Oh well. The most recent video I did was a rendered explosion in POV-Ray. 400x300 at millions of colors, ten seconds at 30fps, and in Sorenson it's 1.4 megs with _no_ artifacting at all.
I'm always going to be concerned about compatibility, and I'll be paying attention to all discussions of multimedia formats, but for my own stuff I can't see not using Quicktime. I _am_ on the optimal platform and processor architecture (having 32 registers and 32 FP registers rather than, uh, 4, does make a difference).
I'm happy for anything Apple does to further Quicktime, and not for a minute do I believe it will fully meet the interests of the FSF for instance. But _anything_ which suppresses the tendency of (currently) Microsoft to exterminate all other choice, is good. Quicktime is good because you've got the option- deal with it. Having options is good. Having all the options on Linux would be better (+linuxPPC) but failing that, it's at least good to _have_ options out there. It's healthier.
And like I said, Quicktime royally kicks butt and takes names _in_ its area of focus, primarily content creation.
It was pretty obvious that they were looking for some significant drive from the Linux community before committing their Quicktime source code. When I released Quicktime for Linux, it was more of an attempt to show Apple that we really needed a Quicktime library on Linux and it worked.
When hundreds of hits from Apple came during March, it became pretty obvious that Quicktime was very close to being opened sourced. That's why my work was never intended to be a complete port of the Quicktime API and never intended to support all the codecs and features of Apple's Quicktime.
Now let's hope Apple's code is thread safe and allows you to import bitmaps into your own code.
Don't count on Sorenson being opened up anytime soon. Quicktime is an Apple cash cow and undoubtedly very important to the company in the near future. You can read all the Golden Convergence articles at Mac Week. Some of you may find it interesting...
Funny how people only want code to the cool things out there ;-)
"We don't want the Windows source code."
"Hey Apple, open up Quicktime."
-- Are you an EFF member yet?
One problem with that is that, even if you succeed in creating a passable free CODEC, the battle is in getting content providers to use it.
Firstly, the content publication tools that content providers use (mostly from Adobe and Macromedia, running on MacOS or NT) would have to support it. The software publishers have investments in other CODECs and no real interest in providing a GPLed CODEC, especially since the bulk of the desktop market is Windows; if there's a sizable Linux desktop market, we're more likely to see players for the existing formats.
Secondly, the actual media providers have to decide to use this CODEC; and big corporations tend to trust products of other corporations, with intellectual-property investments and contracts, more than the output of the free-software rabble. (Media companies, in particular, tend to be paranoid about open digital formats.)
If a GPLed CODEC comes about, one could expect it to find a niche among geek-underground content providers (claymation Star Wars spoofs, &c.), with GPLed Linux authoring software and players; though breaking into the world of corporate media is another story.
Sarcasm aside, this is a good point that many of these companies seem to miss. Opening the code is only the first step. A project must also attract developers. I think we are close to reaching an attention economy of open source projects.
Oops, that sounded a little too much like JonKatz -- I'd better explain. (Just kidding, Jon!) Developers willing and able to contribute to these open source projects compose the pool of resources in this economy. That pool is decidedly finite. As the number of projects increases, they will be competing for the finite time of those developers.
Cheers,
-Nygard
"Genius may have its limitations, but stupidity is not thus handicapped." --Elbert Hubbard (1856-1915)
Many people seem to be under the impression that the spate of new "kinda sorta" open licenses are going to undermine the movement as a whole. That's not necessarily so. I believe that the Free Software concept will continue to flourish. These corporate type projects aren't going to undermine anything. When the tide of open source licenses has abated, the original movement will still be there because of loyalty.
These things aren't going to undermine Open Source, because opening source code is not the complete answer. There has to be a sense of community and of actually building something, not just being a glorified bug eradicator for some stingy corporation that can't fix its own problems. That's why these new licenses are just a marketing ploy, and that's why the true Open Source community will still be intact when the hype wears off. In the end the joke will be on the big boys, not us Linux guys. They'll be stuck with their source out and the novelty worn off and then we'll all sit back and laugh. Laugh at them for not looking ahead past the marketing and seeing the true meaning of the movement. Long live Linus!
Loader of Code and of BricksBy opening up the server, it will allow all of you people to make money streaming QuickTime media to other people. All they need is a player that can read the RTSP(Real Time Streaming Protocol) data. The server is open-source, so it won't be that hard to make a player. Once you use RSTP, you can use any codec you want to stream. Sorensen is not the best protocol for streaming since it requires tons of processor power. Therefore, I expect many people to use RTSP to stream cinepak or even mpeg2.
QTSS is not about revolutionary codecs, it's about a revolutionary protocol. For as much as you folks like to rip on news.com, you take a lot of their stuff at face value. If you really want to know more about QTSS, sign up for some of the Apple Mailing lists on the subject.
regards,
remy
http://www.mklinux.org
Apple making the QuickTime framework Open Source is a good thing. Unfortunately most of the good codecs (such as Sorensen) are distributed under license -- so Apple can't just make them available.
What I'd really like to see is the creators of these codecs open up their sources so that people could write free decompressors, while selling the actual compressors to "video professionals" -- the people who can and are willing to pay.
Matt Slot / Bitwise Operator / Ambrosia Software, Inc.
The article seems to imply that they will give out the server code. So we can right our own streaming servers, but not players or codecs.
At lot of the talk here has been dedicated to criticism of, among other things, the closed nature of QuickTime encoder/decoders, and the general dissatisfaction with pseudo-open source licensing practices.
Putting aside the fact that Apple Computer does not own the rights to many of the codecs used with QuickTime, and therefore, cannot release the source code to them without consent of the rightholder, if you don't like the things Apple Computer (or any other company or individual, for that matter) has created or done, create or do your own thing.
Distribute it any way you like, under any license you so desire, for any fee you would like to charge, under any restriction you see fit.
Stop this pointless complaining about the RIGHTS of others to do as they see fit, PLEASE.
Corporations do not exist to provide software free of charge or restriction. They exist to provide their consituents (by which I mean not only shareholders, but employees and related third-parties) with a livelihood.
How many Open Source(tm) programs would have been written without some form of monetary support? I would venture to claim *zero*.
Does not Linus Torvalds eat while writing the Linux kernel, or RMS while writing GNU software? How do they obtain their food? Does it magically appear, like manna from heaven?
I think not.
The unfortunate fact of capitalism is that money makes the world go 'round. We all have to eat, obtain shelter, etc., and the most successful, by many measures, form of value exchange the human race has come up with is capitalism; therefore, in our world, we must exchange something of value (i.e., money) for other things of value (i.e., software and food).
For every thing created by human hands, somewhere it was paid for, if not in money, then by the labor of its human creator, who also must eat.
Why do many people seem to believe that a corporation has no right, or find it morally repugnant, for a corporation to attempt to profit in any way from the fruits of its labor or research, and yet find it perfectly acceptable for a member of the "Open Source Community(tm) (sic!)" to derive a profit (and there are many definitions of the word "profit") from his or her efforts?
For people who live in the binary world, this is a ludicrous situation.
Don't bother responding with arguments concerning Apple's supposed subversion of the so-called Open Source(tm) or free software movements, these things are, by definition, incapable of being subverted. So long as one person continues to write free or Open Source(tm) software, there will continue to be a free or Open Source(tm) software movement.
One could sooner subvert the value of zero.
We were all blessed with free will at birth; if you don't like Apple's terms, or anyone else's, don't accept them. If you don't want to fix Apple's bugs without recompense that you feel is acceptable, do not do so.
Write your own software, set your own terms.
I get it.
I am also a proponent of all forms of software, whether open, closed, or free. I also believe, as a creator, in the validity of intellectual property protection.
Intellectual property protection laws, *used properly*, are meant to encourage creativity and competition, not to undermine them. Without the ability to ensure an exclusive economic benefit for themselves, creators of all types would quickly find themselves less and less able to secure a livelihood through the use of their talents.
The argument you make seems to be that the pursuit of happiness at the expense of others is immoral. I disagree. I believe that competition is much more important to the betterment of humanity than is charity.
Please elucidate upon these points:
What do you define as a durable good? Why is software not included in your definition?
What, exactly, is your point in claiming that software should not be sold as a durable good?
Where is your basis for claiming that free software provides an economic benefit for more prople than other forms of software?
I think I made my point rather clear in my original post: If you don't like a particular piece of software's license terms, use another package, or go write your own software, and distribute it as you please.
Just please spare us the complaints if the rest of the world doesn't follow the same path. This isn't a life or death issue.