One of the most perplexing things about Snow Leopard has got to be what’s happening to QuickTime.
First, the unequivocally good stuff:
QuickTime X is the next generation of QuickTime. It’s GPU-accelerated right down to (some of?) the decoders, it’s color corrected and the architecture is new and modern (by which I mean “not endlessly patched since 1991”). With any luck (and this is speculation), encoders could run via either Grand Central Dispatch or OpenCL and make good use of the multitude of cores, be they CPUs or GPUs.
The new QuickTime Player supports screen video recording; far too long overdue. It also provides skimming and the oft-accompanied thumbnail timeline for when you trim.
The QuickTime Pro witch is finally dead. No longer will you have to pay $29.99 — $0.99 more, I’m inclined to note, than Snow Leopard itself for those who upgrade from Leopard — on top of a $599+ computer just for the ability to convert movies.
Now the fun begins.
The new QuickTime Player application comes with the ability to trim movies and “Share”/Export in three formats. Say what you will of QuickTime Pro, but you can at least maintain selections, copy back and forth and save in new formats. (If these features are still there in the new QuickTime Player, they haven’t been advertised, and I haven’t seen any evidence of them. The only playhead mode that obviously supports maintaining a selection is the one used for trimming. A screenshot of the File menu where the “New Player” command, which is useful only to create a movie from scratch in which to paste media, is gone, bears this out.)
I guess you can make the case that for video editing, QuickTime Player always sucked, and that you’re hard pressed to find a Snow Leopard-capable machine that’s not got a usable version of iMovie on it, and that’s true, but sometimes you don’t want to start up iMovie just because you dare want to keep two non-consecutive portions of a movie in the same file.
The way QuickTime works in Safari 4 is just plain weird.
When you go to a standalone video file, Safari apparently special-cases the QuickTime plugin. (This may also be WebKit, but I haven’t been able to locate where this magic happens. It does not seem bound to QuickTime itself, since the last modified date of my WebKit QuickTime plugin is two weeks before I upgraded to Safari 4 proper.) You get an HTML page with a
videotag, and the version of the QuickTime plugin that appears for this get the nifty disappearing play controls.However, on account of the
videotag usage — check YouTube’s HTML5 test if you don’t believe me — the plugin area doesn’t display a context/right-click menu. The clicks fall through to the web page, which means that the two commands that exist to save the movie to disk in source or QuickTime format have vanished. You can’t use the menu button at the right edge, because that’s now gone, and you can’t use File → Save As… . What you can do, and what’s a horrible workaround, is find the source using the Web Inspector or the Resources window, copy the URL, open the Downloads window and paste. No step of this process is documented.The old-style plugins, by which I mean the NSAPI plugin and the ordinary WebKit plugin, both still carry support for saving movies, and both carry the menu button at the right end of the controls that could have been used in the other scenario to host these commands. Embedded non-
video-tag: you can right click to save; otherwise: you can’t.Notably, saving movies from within the plugins and from QuickTime Player was one of the QuickTime Pro features.
Update: This just got even more weird. I went to a direct link to an H.264 movie with the .mp4 file ending, and this time, I got the movie inserted via the
embedelement instead of thevideoelement. My guess is that this didn’t transfer with the appropriate MIME type,videosupport was not triggered and it falls back to the regular plugin pipeline.Apple can’t throw away any part of QuickTime 7 yet; even the PowerPC pieces need to run in Snow Leopard under Rosetta. This means that there are now two QuickTimes. My guess is that if you use QTKit, you get QuickTime X, and otherwise you get QuickTime 7, but if that’s not how it is, I’m confused as to how you’d opt in. You don’t want your fan wound because you try to show efficiently encoded HD video on a weak machine and accidentally get QuickTime 7 instead of X, and if my hopes for a more efficient encoding process turn out to be correct, you definitely don’t want the wrong mode.
I find myself wondering what this means for QuickTime for Windows. Many apps depend on it, but Apple’s not historically been in a hurry to upgrade the user-facing APIs to new, QTKit-level heights, or the technology foundation to corresponding, sometimes non-existant, breakthroughs on the Windows end. Apple maintains QuickTime for Windows because they must; pleasant, swift and native-looking are just a few words that are entirely inapplicable to QuickTime Player, and it sticks crap in your system tray. (Everyone does that, yes, but that’s not an excuse to fail, it’s a reason to succeed.)
Quicktime for Windows still uses brushed metal.
By Bergamot · 2009.06.15 02:38
Good Article. On question though: Why do you think Apple needs to keep QuickTime 7?
By Norman Heino · 2009.06.15 07:25
I thought that Snow Leopard is Intel-only?
By Orestis Markou · 2009.06.15 10:46
Norman: Because QuickTime X uses a new architecture. Either QuickTime 7 (by which I mean the old codebase) is included, or QuickTime X needs to reimplement, flawlessly, the entire old architecture with support for all old components and APIs and quirks, or every application that depends on those features of QuickTime — everything QuickTime that anyone without a Snow Leopard seed can even program against today, with the possible exception of QTKit usage — will stop working. And I can name a few Apple applications that they’d like to keep working. There’s no reason for them to toss the old codebase; there are lots of reasons for them to say “use QuickTime X”, but 7 won’t go away overnight.
Orestis: Snow Leopard is Intel-only, but you have Rosetta, so you can run, say, a PowerPC-build of After Effects or something. Since the entire process has to run emulated, that means that the PowerPC subsystems (not just including QuickTime, but also Carbon) still need to be available for access — it can’t just use the Intel versions.
By Jesper · 2009.06.15 11:20
I think trimming sounds great (will have to check whether it also supports rotation as properly rotating a video taken with a digital camera wasn’t easily possible in QT non-pro previously) and should cover the most common editing cases.
Unfortunately Apple make no mention of full support for AVI, MKV or external subtitle files and the formats typically conained therein. That would be real progress for the out of the box experience of the Mac. It looks like Perian still has a lot of time to live and I hope it will be able to benefit from the fancy new technologies as well.
If I understand HTML5 correctly you are not using the QuickTime browser plug in in that situation. Instead, the browser natively supports the tag just as it supports the tag without further plug-ins. With Apple this ends up using QuickTime anyway, but it’s a completely different thing, technically. (You can verify this by removing the QuickTime Plug-In from the Internet Plug-Ins folder.)
Of course this understanding doesn’t help you save videos. But perhaps it’s a valid feature request for Safari to support Saving and copying of media just as it does for images.
By ssp · 2009.06.15 16:00
Understanding the technical background is good, and I don’t expect plugins to be able to hook into the video element, but in the middle of this there’s an obvious regression in actual behavior:
In Safari 3, whenever you see a movie played by QuickTime (or, if you don’t want to drag QuickTime into this, whenever you directly load, say, an H.264 video), you could save that file. In Safari 4, you can’t.
This may very well be explained through the technical detail, but it doesn’t excuse the regression. And you may debate where the regression lies (in Safari, for having changed behavior, or QuickTime, for having the new video element view), but Apple controls both ends.
By Jesper · 2009.06.15 19:32
Ok, I didn’t know QuickTime X has a completely new API, breaking compatibility with apps written against QuickTime 7. An architectural change doesn’t necessarily mean the programming interface has to change as well.
By Norman Heino · 2009.06.15 21:26
At least in QuickTime 7, you programmed against the abstractions that QuickTime itself worked with. They did transition from that to QuickTime X via QTKit, which had an object-oriented interface.
Initially, QTKit was a bridge to the existing functionality, but in Leopard, they exposed some new functionality to QTKit (mostly Capture) and added a completely new 64-bit code path that you could only access through QTKit.
Support for codecs that embedded data across frames was only introduced in QuickTime 7 thanks to some heroic redesign work. From what I understand of QuickTime development, the codebase was so archaic, patched and long in the tooth that it was necessary to start over to really get somewhere. (Or maybe it was just a matter of rewriting everything for iPhone OS and deciding to go with that in the future on all platforms. I don’t really know.)
That means new APIs, which, as I said, leaves two options to support the old APIs: a) Write passthroughs for the old APIs to the new APIs, support every single preexisting feature and maintain perfect bug compatibility (or risk major applications dropping dead in its wake), or b) Keep the old API and the old implementation. One is significantly more work than the other.
By Jesper · 2009.06.15 23:00
I agree that the lack of film saving this is a shortcoming of Safari 4’s video tag. I just wanted to explain why there are different film behaviours seen in the browser.
That’s why I encouraged to file bug reports / enhancement requests on that with Apple. Even though I guess that the existence of this feature in the browser may depend more to how deeply in bed Apple are with the ‘content industry’ rather than how reasonable a feature it is. After all Apple always put business first.
By ssp · 2009.06.16 09:41
Maybe so, but wouldn’t they have removed the Save functionality from all plugins then?
By Jesper · 2009.06.16 11:06
I have no clue. But wouldn’t that kind of coordination require different teams within Apple to speak with one another? If the interwebs are to be believed that’s a big no-no in Cupertino.
By ssp · 2009.06.17 13:29
I think the lack of saving is deliberate, but I’m not technically inclined to find out whether it’s due to Safari or the Quicktime plugin. What makes me think so is the fact that saving mp3:s and other media files played in the browser works fine in Opera, but not in Safari. This is in 10.5, by the way.
Apple irritatingly enough has also removed functionality from the Quicktime plugin in Safari 4; more specifically the volume control. Now you can only play full volume or mute (for mp3:s at least), at a time when this is expected functionality from even the simplest Flash audio/video player.
By Johan Strandell · 2009.06.29 19:34
Safari does not use the QuickTime plugin for the video tag. Apple just reimplemented the controls with the same style as the QuickTime plugin, but it’s a whole separate thing.
By Galad · 2009.07.06 11:28
That makes a lot of sense.
By Jesper · 2009.07.06 18:09
I’ve just been bitted by this, in a roundabout way. The <video> tag really needs a context menu. If nothing else, so that “Save as source…” works (which, let’s face it, is the only really useful option in there).
As for QT/Win: iTunes for Windows needs it, for the time being, though I wouldn’t be surprised if a future release of iTunes just bundles the QT engine rather than installing “iTunes + QuickTime”.
By Mo · 2009.08.24 23:07
Hi I found your site looking for some explanation of the fact that you cannot save quicktimes… annoying ! However there’s a simpler workaround. Just copy URL from your browser, open quicktime player 7 (I hope it will stay forever), File/Open URL (cmd+u) and paste your url. After the file loads in quicktime you will be able to save it
By zbr · 2009.08.30 15:21
This is so annoying that you can’t save videos easily anymore. Does anyone know if there’s a way to force Safari 4 to use QuickTime 7 instead of QT X?
Thanks!
By Lola · 2009.10.13 19:39