Configure player

Close

WWDC Index does not host video files

If you have access to video files, you can configure a URL pattern to be used in a video player.

URL pattern

preview

Use any of these variables in your URL pattern, the pattern is stored in your browsers' local storage.

$id
ID of session: wwdc2004-719
$eventId
ID of event: wwdc2004
$eventContentId
ID of session without event part: 719
$eventShortId
Shortened ID of event: wwdc04
$year
Year of session: 2004
$extension
Extension of original filename: mov
$filenameAlmostEvery
Filename from "(Almost) Every..." gist: ...

WWDC04 • Session 719

QuickTime Pro in Your Workflow

QuickTime • 1:14:40

QuickTime Pro makes a great complement to other applications in your content production workflow. This session explains how to use QuickTime Pro to fill in the gaps in your workflow, with topics such as preparing media for delivery, automation techniques, using QuickTime Pro with other applications, and much more.

Speakers: Aimee Nugent, Francesco Schiavon

Unlisted on Apple Developer site

Transcript

This transcript was generated using Whisper, it has known transcription errors. We are working on an improved version.

Well, good afternoon, everybody. Welcome. Session 719, QuickTime Pro in Your Workflow. I'm Aimee Nugent, product manager from Apple for the Core Media Technologies. And I'm here to welcome you today to a session by Francesco Schiavo. We're very lucky to have him. He's been involved with QuickTime both professionally and as an educator for more years than I think he would prefer I don't reveal. So everyone, please extend a warm welcome to Francesco. And we'll have a great session and do Q&A at the end.

FRANCISCO SCHIAVO: Thank you very much. Good afternoon, everyone. First of all, let me get used to the microphone. So that's the first thing. It's going to take me a couple of minutes to do that. But what we're going to do today, or my plan for the session is to raise awareness that QuickTime is involved in most of the multimedia productions that you might be doing or other people might be doing. Sometimes it's under the hood and people don't know about that. But in most cases, that's what happens.

Another thing that I want to cover is what you can do with QuickTime Pro that you could do in other software, but you don't necessarily need to do it in that software. An example is having to go to Final Cut Pro to edit or to put together a series of slides or a series of images.

You could do that with QuickTime Pro without having to wait for the long boot of Final Cut Pro. I mean of QuickTime Pro. Final Cut Pro. Sorry about that. And in some cases, QuickTime Pro is actually faster to use than those applications, just the example of booting up Final Cut opposite to the player.

So what you will be learning in this session is what is QuickTime Pro, how and when you may want to use QuickTime Pro instead of other applications, and how it's also involved in the typical workflow, which goes from acquisition, editing, authoring, and displaying the media. So QuickTime is involved in all of those cases. And I have a few tips and tricks here and there that do relate to the workflow.

So because it's workflow, my topics are going to be jumping all over the place from editing to-- or rather, from acquiring to editing, authoring, and deployment. And therefore, I'm going to be using a number of applications, Final Cut, a lot of it with QuickTime Player, and so forth. So I'm going to be jumping back and forth between applications. So this slide represents that Final Cut Pro-- not Final Cut Pro. QuickTime Pro is involved in the whole process, from the acquisition to deployment.

This slide originally came when OS X was released, or announced actually. And one of the important things that I want to point here is that QuickTime is right on top of Darwin, which means that it's very, very close to the OS and relatively apart from the applications. And the reason why I'm saying this is because think of QuickTime as a big engine that a number of applications can get access to. So keep that in mind. In terms of QuickTime, what is QuickTime Pro? QuickTime Pro is not just a player. You've gotten a number of descriptions about what QuickTime is and what QuickTime Pro is.

But one of the things that it does is unlocks the professional, as they call it, capabilities of the QuickTime player and the QuickTime plugin, as well as preview. So how many people knew that preview was part of QuickTime Pro? So how many people knew that? But once you get a license for QuickTime Pro, you can actually do exporting out of preview. For the most part, it is not that useful.

There is one feature, which is to export what they call a QuickTime image file. And you can do that with QuickTime Pro, or with previewing QuickTime Pro. Now in terms of the workflow, and in terms of acquiring assets, as you should know by now, and if you don't, I'm telling you right now, QuickTime has a really wide gamma of file formats that it can import. Over 200 media types, which means that you could be bringing in Flash or JPEGs or TIFF files or PIC files, text, video of course, even AVIs and so forth.

So in terms of the acquiring process, it's not only the acquisition of digitizing video, but also bringing in existing files that you may have. So how is QuickTime Pro involved, or how is QuickTime involved? And I have this other slide which has a better representation how all of the applications get access to the engine, the QuickTime engine, that is under the OS.

And I think at this moment I'd like to switch over to my machine over here. And what I'm going to do here is I have my eyesight running here. And I've got this really simple application that I downloaded from the developer site at Apple. And if everything works all right... Uh-oh. Okay, this was working before.

This little application, what it does, it just gets access to the digitizer in QuickTime. And the reason why I'm showing you this, guys, is because it's a very simple application that gets access to that layer, that QuickTime layer that I showed you earlier. And it's QuickTime the one that should be doing the digitizing. Now in this case, I'm seeing not to be having too much luck here. So I'm going to quit that. And I'm going to ask you guys to switch over to the slides, please.

Okay, so what I was trying to show you here is, it was that the application was getting access to the QuickTime engine through the rendering, or actually doing the capturing and the acquisition of the assets. But this is another example that I'd really like to show in terms of bringing media, or how QuickTime gets to acquire media that doesn't necessarily need to be video.

So, has anybody tried opening a PDF file, for example, with a QuickTime player? Well, that's something that you can do, and the important thing that I want to stress here is that it is QuickTime the one that is doing the opening of the PDF file. So if I could switch back to the demo machine, please. Thank you.

Now what I have here, this is Final Cut Pro. I've got a timeline there with two .db files. But rather what I want to do is I have another PDF file on the hard drive. This is the developer documentation for QuickTime 6 on a PDF document. As you can see, it has a number of pages. It's the documentation for QuickTime 6 on a PDF. One of the things that you could do, you can actually drag and drop the PDF file into Final Cut Pro.

And now you have a PDF in Final Cut Pro. I'm not exactly sure why you want to do that. There may be some cases where you actually have sources coming from a PDF file that actually has a number of pages. But again, the stress that I want to do here is from the acquisition point of view, I'm acquiring a PDF file into the Final Cut Pro application, and I can dump it into my timeline. That's a little bit wide. Let's just zoom back from here. So now as you can see, I have a PDF document inside my timeline.

So can I switch back to the slides, please? This is what I was trying to do with acquiring video from HackTV. HackTV is a free application that you developers can download from Apple. It's meant for developers as an example of code, how they can integrate the digitizing capabilities of QuickTime into their applications. I'm not a programmer.

Rather, I'm a content creator. And for content creators, if you guys want to try that application, you can download it. It's really tiny. And for example, plug in your eyesight or another video camera, or if you have a digitizing board, you can use that to capture content with QuickTime.

Now in terms of acquiring assets, I had mentioned the idea of bringing in a series of images. And what I'm going to do here is I'm going to import a series of images that were taken from a still camera. So this is not video. It's rather taken from a still camera.

So I'm going to ask if I can switch back to the demo machine. Thank you very much. And import media. So I have here a number of pictures that were taken outside of my window in Vancouver. Look at just one of the pictures and let's see the actual size.

It's a really large image. And this is a typical time sequence, or timeline sequence, that was-- is the executive director of the QuickTime Pro project. He's the executive director of the QuickTime Pro project. He's the executive director of the QuickTime Pro project. He's the executive director of the QuickTime Pro project.

is going to make a time lapse movie with a QuickTime Player. If you wanted to do this in Final Cut Pro, you could bring all of the images into Final Cut Pro, change preferences, change the settings for how long you want individual images to be, or still images to be, and then lay your images onto the timeline. In this case, the process is going to be slightly different. Back in the QuickTime Player, There's this option under the file pulldown menu that says open image sequence. And the idea here is just to select the first image in the sequence.

and have all of them sequentially named. So in this case, it's captured 0091, 92, and so forth, all the way to 165. So I'm only selecting the first image, and Final Cut Pro is asking me what frame rate I want. Now, I could go for the typical frame rate of video, which would be roughly 30 frames per second.

But instead, if I do that, I'm going to have a really, really short movie that is going to play really, really fast. So instead of doing that, rather what I'm going to do is I'm going to switch to six frames per second and have that movie a little bit longer so each frame stays just a little bit longer on the screen. So off it goes. And as you can see, it's a huge, huge, huge image. Maybe the easiest way to do this is to try to resize.

So in this case, I was able to acquire my series of images into a linear QuickTime movie. It's really large. Let me just bring it to half size.

[Transcript missing]

Oh, there you go. That's a nice day in Vancouver, one of those days that didn't rain. So you have to take pictures of a day that doesn't rain in Vancouver. Really. Any Canadians, by the way, in the audience? Right on. Well, happy Canada Day.

All right. In terms of a brief tip that I have for you guys, when you're acquiring content from Final Cut Pro or with Final Cut Pro, is, as you guys know, when you're shooting your content, before you shoot, you should have your videotapes striped, which means having timecode laid onto the videotape. So when you start shooting, you don't have a broken timecode. So if I can switch back to the slides, please.

So a little tip that I have for you guys, when you're working with Final Cut Pro, or rather if you have Final Cut Pro, to stripe your tapes, you just use this little feature in the edit to tape option under Final Cut Pro. By pressing on that little tiny black button, what it would do is it would print black frames onto the whole tape and would actually lay down a timecode track onto the tape. So when you go shooting with that tape, don't get broken timecode.

And this is very important when you get into the acquisition process and when you go and capture your content into Final Cut Pro. That way you won't have problems with broken timecode. So that's it for the acquisition content. Now I'm going to talk about the editing process in the QuickTime Player.

And instead of doing the typical thing of actually showing you how to copy and paste frames and fast forward or go frame by frame in the QuickTime Player, rather I'm going to refer you to the help system in QuickTime Player. Another thing that I see, I see Linda Wyman here, so I can always refer you to her book on QuickTime, which talks about editing with QuickTime Player. But rather what I want to focus is the concept of reference movies.

One of the things that is great with QuickTime that sometimes is misunderstood is that QuickTime can work with what is called reference movies, which means that the media doesn't necessarily need to be duplicated onto the drive. You can actually have it written only once onto the drive. So this would be an example of what you can do. The idea of reference movies is that you can have the media written only once onto the hard drive.

And depending on where it comes from, you can actually take that same media to different applications without having to re-render the media or without having to duplicate the media on the hard drive. So if I'm going to show you a quick example of that, I'm going to show you a quick example of that. So I can switch back to the slides, I mean to the demo machine please.

Thank you. So what I have here is a movie that is actually made out of, I don't know how many images were in my folder, but it's a series of images. And when I play it, it's actually making a reference to each one of those files onto the hard drive. So a typical process would be to actually save or export this movie as a self-contained, which by doing that would actually duplicate the media on the hard drive.

It would keep my original images, and then I would actually make a new copy of this large movie. But rather, one of the things that I can do now is save

[Transcript missing]

referencemovie.mov. And in this case, what it's doing, or what it did-- let me just go back to the finder here really quickly. It made this document that if you take a look at the file size, it's really, really tiny. Only 44K on disk. And the reason for that is because the file itself is actually making a reference to each one of the documents of the QuickTime movies.

I have a problem with your microphone. Can I switch you out? Alright so, oh, I sound different. Do I sound older? I sound louder, I think. Okay, so what I was trying to show you here is the reference that this document is actually making to all of my picture files elsewhere on the hard drive. And as you can see here, in the QuickTime-- or rather, in the movie properties window, I can see all of the files are actually being referenced from this original document.

Now, the whole idea of this-- doing this in terms of a workflow is I don't need to duplicate, I don't need to make a new really large file to be able to take it, for example, what I had in my slide before, into Compressor or into After Effects or into anything else.

What I can do... is the person who will be presenting this session. I'm going to show you how to use QuickTime Pro to fill in the gaps in your workflow. I'm going to show you how to use QuickTime Pro and use that as my source, instead of having to render or having to save as a new copy of the document onto the hard drive. So if I can switch back to the slides, please.

So this is what I just did in this case. I saved what QuickTime calls "saved normally" or "as normally," which means making those reference files. Now, another thing that you can do, or to put it more in typical cases with Final Cut Pro, is doing the exact same process that I did, but rather with Final Cut Pro. So if I can switch back to the demo machine.

This is my Final Cut Pro timeline. And I have-- let me get rid of the PDF and zoom into my timeline so it's actually a bit more interesting. So what I have here is two DB files. and some titles. And let's say that we want to compress those things so that we want to maybe take them to After Effects or maybe take them to another application on the same machine for compression, maybe Squeeze if you want to use Squeeze for delivery on the web. I'm going to do a reference movie out of Final Cut Pro in this case.

And the process would be to go into the export option Select QuickTime Movie, which they changed the wording in Final Cut Pro 4. Get rid of all of that noise. And this is how you make a reference movie, so it doesn't take as much drive space. You simply uncheck that thing. Where it says Make Movie Self-Contained, you uncheck that thing, and you uncheck that Recompress All Frames. So by doing this, it's going to be saved into my folder. Actually, let me put it onto the desktop.

Well, you didn't even see the progress bar because it went so quickly. The only thing that it did, it wrote-- A really tiny reference movie, even though it has a Final Cut Pro icon, it is a QuickTime movie. And if you take a look at the files that this thing is being referenced to, it's actually referenced to my sequence, to my DB file, and to my .mov file that are elsewhere on the hard drive. And the whole media is here, everything is here. But if I take a look on the finder, the file size of this little tiny reference movie would be comparable to the one that we had before. A little bit larger, one megabyte. There's something rendered in there.

So as you can see, in terms of our workflow, you can save a lot of drive space by using this method here. So can I switch to the slides, please? So that's how you can make reference movies on Final Cut Pro. One important thing about reference movies-- well, I'll mention it later, but this works great only when you're working on the same machine.

This is the making the reference movies out of the QuickTime Player, which does exactly the same thing, just slightly different interface, slightly different wording, but it does the exact same thing. Now, a few tips on editing for QuickTime, particularly for deployment. Most of the QuickTime that you're going to be doing is going to be for web deployment, or it's going to be for CD-ROM deployment, or for DVD, which means compressing the content.

And this, to tell you the truth, doesn't have to do much with QuickTime Pro as per se, but it has to do with video, digital video in general. And definitely what you want to do is avoid changes on the screen. That would be the best way of summarizing all of that stuff that is on the slide here.

So, in two words, avoid changes. If you have fast motion, or if you have fast text, or if you have scrolling text, you may want to avoid those. Same thing with dissolves and complex transitions. Those are going to have a terrible impact when you get to the compression part of your project. project.

Now, another thing also related to editing has to do with previewing DV in full resolution. Has anybody actually noticed? You have a DV file, you open it up in the QuickTime player, and it looks really bad, really pixelated. I get this a lot of times with my students.

They see their files, particularly the one with text, or the files that have text, and those are the files that I made. So if I can switch back to the demo machine, please. What I have here is the 2db files that I showed you earlier. Let me do some housekeeping here.

There we go. And I don't know if you guys can notice, particularly you guys in the front here, you're going to notice that the text looks kind of blurry on the edges, which in this case is a DB file. But don't be scared. All the media is actually there.

You don't have to panic. You don't have to go and render this humongous file with maybe the animation codec to get the quality that the DB file should have. In fact, the quality and all the data of your DB file is there. What QuickTime does, rather, for the sake of speed and playback speed, real-time playback speed, is it sacrifices some of the quality so it can play in real time. So if you guys want to really check out the quality of your files-- and this is just for previewing purposes-- what you can do is turn on a property of the video track.

So what I did here is I went into the Movie Pulldown menu on the QuickTime player, get movie properties, This is a property for the video track. One of the things that you're going to see, it's a .dv file, 720 by 480 NTSC. And there's this option that says "Quality." And by default, it has that high-quality checkbox disabled.

When you turn it on, now you get to see the full quality of your video. Now, in this case, you can actually see the interlaced of your .dv file. That's actually the reason why I used this example here, to show how the interlace disappears or not. And take a look at the edges of the text. I'm not sure if you guys at the end can actually see the detail.

Here I have another example. And it's happening--it's doing the exact same thing, which is just showing a preview mode

[Transcript missing]

Most cases, when you're previewing your content, playing it back on the QuickTime player, you don't want to have that enabled. Because by enabling that checkbox, what you're telling QuickTime to do is give me the data, regardless of the frame rate. So by enabling that high-quality checkbox, what QuickTime is going to do is try to render every single field of every single frame.

And therefore taking more CPU. So it's great just for previewing individual images, making sure that the quality and your edges and your text is as sharp as you're expecting. But for playback purposes, it's much better to disable it as the default is and just play it. That will give you the full-time rendering or full-time playback on QuickTime player. Okay. So where am I? Okay, now let's move on to the editing side of things. So if I can switch back to the slides, please.

For the authoring, QuickTime Player is relatively limited in terms of authoring, but you can still do some of the authoring. And one of the things that I personally love about the QuickTime Player is that it could be an excellent learning tool. An excellent learning tool by seeing what other people have done in the past, or with their own files.

So what I'm going to do here is, if I can switch back to the demo machine, I'm launching Safari. and I'm going to go and download one of the movie trailers from the Apple site. And to tell you the truth, it really doesn't matter, well, it sort of matters, which file I download.

But I'm going to wait for-- I'm not going to play. I'm going to wait for the whole download to happen. And I'm going to use QuickTime Player Pro just to analyze how this movie was compressed. This way I can get a pretty good sense of what other people have done to get great quality video if I don't know exactly, for example, what frame rate to choose, or what data rate to choose, or what window size to choose. So I'm going to use this as a learning tool.

It's going to take a few more seconds. Actually, we may be able to play it. So if we can get sound for this machine, off it goes. Look what I've become. I sometimes don't talk to another living soul for days. I trust no one, nothing. It's grief for a life wasted.

Will Graham was the hardest man I've ever known. And I've known a few, believe me. Where are you going? I don't know. What do you think he will do? He's changed. Has he? He won't be back. Davey! Davey! What did he do? I've got to find Will. I don't know where Will is. Davey, are you there? He's got to know.

His brother's back, asking questions. I'm looking for David. He's back. I've just seen him. Don't ever underestimate Will Graham. He's a fierce man. He'll go the distance. He's killed people. Why are you here, Will? You know why. I want to know why he died the way he died. It was suicide. But you're not sure, are you? Was there anything that sounded odd to you? No one knows what happened.

What could he possibly find out? Tell me. There's nothing to tell. Don't lie to me. He's dead. Does it matter? It matters. What kind of man am I looking for? He's scum. Just like his brother. People like us don't change. You're wrong. You're wrong about most things most of the time.

Someone's going to die. You left all that behind. Leave the city. Go back where you can breathe. If you stay, it'll destroy you. What are you doing here? Okay, so there you go. You have a really nice movie compressed by somebody else, and let's say that you want to work with your own content and try to at least learn what these guys have done with their file. So what I'm going to do here is save this file as a QuickTime movie or as a source. It really doesn't matter that much.

[Transcript missing]

A number of information or a number of pieces of data about this movie.

I'm going to get that movie properties window again. There's information about the annotations. Particularly, I'm interested in the video track and the sound track. So for the video track, we can find out the format. So in this case, we're learning that these guys use a Sorenson Video 3 codec.

There may be reasons why these guys chose maybe to use Sorenson 3 instead of MPEG-4. We can also see the size. It's 480 by 360. So in terms of our workflow, we can actually get those numbers down and maybe use them as a tryout to see how it works out. Frame rate, in this case, the movie is 24 frames per second. And if you were to download the smaller movie, usually you would get to see something like 12 frames per second for the encoded version.

A little bit of a note here. That doesn't necessarily mean that if you shoot your DV file or your content with video, you should compress to 24 frames. In this case, their compression is done to 24 frames basically because their source is a film that was actually shot at 24 frames per second. So if you're going to be working with video, rather, you should be working with multiples or sub-multiples, rather, of the original frame rate. So if you were working with video, it would be 30 or 29, 97, 15, and so forth.

Another thing that we can find here, this is most important, is the data rate that these guys chose for the video. And in this case, they're using a data rate of 180 kilobytes per second. Now, you have to be a little bit careful with that number here, because QuickTime Player traditionally, and has always since ever, provided the data rate in kilobytes per second. And when you're dealing with networks, you're actually dealing with kilobits per second. So there's an eight-fold difference in here.

So if you wanted to get that data rate in kilobits per second, you would have to actually multiply that by eight, which is a really, really high data rate. That's why the video looks so nice. I'm going to come back and talk about that data rate in a minute.

Now, for the sound side of things, We can also find out the format. In this case, it was compressed with QDesign Music 2. That was the codec that was used. They decided to go mono for some reason, I guess, to save bandwidth. And maybe the reason to use QDesign 2 and Sorenson 3 that these guys chose was to be able to be compatible with older versions of QuickTime, for example, QuickTime 5. More information regarding the movie, or regarding the soundtrack, is the sample size, which is 44.1 kilohertz. For some reason, QuickTime doesn't tell you anymore the sample size. Most likely, it's 16-bit.

As to per the file size or the data rate, we can see that the sound part of the movie takes 2.1 megabytes, and the data rate of the soundtrack is 15.6 kilobytes per second. So in terms of a workflow again, what you could do is take these numbers, take them into your movies, and try compressing them with those settings, and at least it's a great starting point as to per what you should be doing to tweak your settings for compression. So if I can go back to the slides, please.

So this is what we've done. We've used the movie properties to learn from somebody else's work, which is a great tool. Now, one of the things that-- or one of the options that you have in the QuickTime Player when you're compressing content,

[Transcript missing]

is the director of the QuickTime Pro team. He's going to talk about how to use QuickTime Pro to fill in the gaps in your workflow.

So let's say that I want to compress this movie, that I want to make this movie, that right now references all of my single frames. Let's say that I want to make a web version of this and target an audience that is maybe running at 200 kilobits per second. Actually, I should know what data rate I'm going to be targeting. Let's say that we're rather going to target somebody that is running on a 350 kilobit per second bandwidth connection. So I'm going to save this onto the desktop, and I'm going to call it Web Movie.

I'm exporting as a movie to QuickTime movie. Now, in this case, I went through the file export option, which means that I'm gonna recompress. I'm gonna make new media out of this. Click on the Options button to choose the different settings. Let's say we're targeting a 350 KBps audience, somebody that would be on a fairly good ADSL connection. I'm going to change the size of this humongous movie to something more manageable, like 256 x 192. So that's going to be a relatively small size, but should yield really nice quality for a 350 KBps data rate.

Now I'm going to change the settings for the video. And there are a ton of codecs that are available for you, depending on what you want to do. So for deployment, most of the times you would want to focus on either Sorenson 3 Pro, if you do have the Pro version, and another great alternative is to use MPEG-4. So I'm going to use MPEG-4 for the time being.

Now, frames per second. In this case, My frame rate, I don't know if you remember, but my frame rate was actually six frames per second. So I'm going to leave it at best. And what best does, it actually leaves the original frame rate of the movie as is. So it'll maintain the original frame rate. If my source was actually video, it would be kept at the original 2997.

Now, these two options down here are usually a point of confusion. Now, who doesn't know what that keyframe every-- frames mean? Everybody knows? Okay, a few of you guys don't know. Well, that keyframe every 24 frames actually has to do with the codec. What the codec does is it tries to analyze one frame and then the consequ-- the following frames.

So if there are no changes in the following frames, or rather if there are a few changes in the following frames, what the codec does is it just saves those changes without having to save the full frame. So keyframe every whatever number, what it does is it actually refreshes that original frame of video, so it has a new starting point for comparison of the following frames.

As a rule of thumb, every 10 seconds is perfectly fine. So if I'm running at 6 frames per second, and I want to keep it at every 10 seconds, I would want to enter-- in this particular case, I want a keyframe every 60 frames. Now this is where the rubber meets the road, as they say. And it has to do with the calculation of the data rate for the video. So I'm going to switch over to the slides, please, and do a little bit of an explanation here.

So here we go. It's a little bit of math. It's really basic math, so don't worry. We said that we wanted to target a data rate of 350 kilobits per second. So that means that we're going to have audio and video that when you add them up, it should add up to about 350 kilobits per second. Now, in this case, I split it up in 310 kilobits per second for the video and about 40 kilobits per second for the audio.

Now in this case, I'm kind of like-- Maybe what I should do is I should open up a DVD movie instead of the slides that I have here because they don't have any sound. Actually, I don't have anything with sound. But anyway, so in a typical situation, I'm dividing here 310 kilobits per second for the video and 40 kilobits per second for the audio. So when you add them up, it goes to 350. Now, the problem is that the QuickTime interface, here where it says limited data rate, it says limit data rate to whatever kilobytes per second.

But we were doing our calculations in kilobits per second. So the secret here is to divide the 310 kilobits per second that we had or that we want to target. If we divide that by 8, that gives us 38.75 kilobits per second. So that's the number that we have to enter in the QuickTime player user interface.

If we were to enter 310, it would actually give us a movie eight times as large as what we would be expecting, which is not what we want. So this is a typical point of confusion I've seen throughout the years from my students. They enter the 310 and boom, the movie looks amazing, definitely, because you have an eight times the battery that you're expecting. But the file size is just undeliverable over the web. So if I could switch back to the computer here, what I would be entering in this case, it would be that 38.75 kilobytes per second. That should match up to the 310 kilobits per second.

So that's a very important step that I definitely wanted to mention. When delivering the content over the web. Now in this case, I don't have any sound, but if I was to use this, let me actually try to get a movie that does have sound. To show you the interface. And I think this one does have sound. Or at least it has a soundtrack, even though it has no sound. File, export.

Onto the desktop options, we set MPEG-4. Now this would definitely relate to the slide that I had before. I said sub-multiple of the original frame rate, so I'm going to drop it down to 15 frames per second. Rule of thumb of a keyframe every 10 seconds, that'll be around 115. And the battery that we had specified was 38.75 kilobytes per second. Now for the sound side of things, I'm going to use MPEG-4 sound, which is top notch, particularly at lower data rates. So where am I missing? Here we go. Apple MPEG-4 Audio.

And this is kind of weird because the video did give me the option for the data rate in kilobytes per second. But when you get into the audio codec, in this particular case, and I think it, actually most of the audio codecs would actually allow you to enter the data rate. This is where it says bit rate in kilobits per second.

So QuickTime Player is a little bit confusing in this case by giving you one data rate or one unit in one case and another unit in another case. So watch out for that. Now from the slide that I had before, I said that the audio would take about, or would take 40 kilobits per second, plus the other 310 from the video to add up for the 350.

So I'm selecting 40 kilobits per second. And what the bit rate really means, it means how much data is it going to be taken to store the sound, which is very different to the sample rate. The sample rate has to do for those audio guys to how often is the computer actually storing a sample from the original file.

And one of the things that the QuickTime player does in this case, it actually shows you in in bold, what would be the optimum

[Transcript missing]

Now this is also kind of confusing because I have a sample rate over here and I also had another sample rate over here, so that's somewhat confusing. So I'm matching them, making sure that they do match.

And I'm going to let go. So I'm going to compress this movie. It won't take that long onto the desktop. It's just a few seconds long. But what I want to see is if my data rate -- whoops, was that the one? Yeah, that was the one. I forgot to change the size, remember? That's why it looks so bad.

But file size-wise, it should be my 350,000. is the creator of QuickTime Pro. He's the founder of QuickTime Pro. He's the founder of QuickTime Pro. Appropriate for the whole movie should be the full size. It's actually lower. Let me get the calculator just to actually do it right.

And we have the 36.1 kilobytes per second. To get that into kilobits per second, we would need to multiply that by 8. And in this case, it's 288 kilobits per second. So the movie itself ended up being somewhat lower from what I was expecting. So that's definitely good, because it would definitely match the audience, the target data rate of the audience that I was looking for. And it would not take that much space on my hard drive.

Now, mind you that this is a demo with a really short movie, so that's why the numbers are relatively off. There's no audio? That's true. There was--there's no audio there. Well, there is an audio track, but it's silent, which is weird. That's another point of why it's so small.

Thanks a lot. Now, another thing is, in terms of the workflow, a huge element is AppleScript. And I really hope that you guys had gone to the AppleScript session that was earlier today, because AppleScript is most important. Especially if you're an AppleScripter, you can do amazing stuff with a QuickTime player. So if I can switch back to the slides really quickly, In this case, Apple provides a series or a collection of Apple scripts already written, which are great. Surprisingly enough, they had not updated them since QuickTime 5, but nevertheless, they are very much useful today.

So that's the URL where you can get them from the Apple site. Just go apple.com/applescript/quicktime, and you'll be able to download this really, really powerful collection of scripts. So what these scripts do is-- they are divided in a number of-- is the director of the QuickTime Pro project, and he is the director of the QuickTime Pro project. He is the director of the QuickTime Pro project. He is the director of the QuickTime Pro project.

Please. Thank you very much. Now, in this case, I downloaded earlier the Apple Scripts from the Apple site, and another thing that I did is in the Apple Script folder of the Applications folder on your Macintosh, there is this thing that says, "Install Script Menu." When you run that little tiny app, it provides you with this little tiny Apple Script pull-down menu that now appears throughout the OS.

So let's see. Let me, what am I going to do here? Let me see if this is a small movie that I had done earlier or not. Come on. Come on. What I want to do is I want to apply a couple of Apple scripts that have already been pre-written for me, or for us actually. Okay, this thing is not responding, so let me try that again.

Okay, hopefully this is going to work. Doesn't seem... Hey, my cursor turned into a beach ball now. Go figure. and the machine is somewhat sluggish. Anyway, one of the scripts that has been-- or that has been provided for you is-- this is another question that I had the other day at the lab. Somebody was asking how to make a movie save/disable, so that when you put it on your website, people view it, but they don't save it onto their hard drive. That's a feature that QuickTime Pro offers.

And there are a number of ways that you can get access to that little flag. One of them is using Live Stage Pro. Another one is, if you're running OS 9, you can do it with a little free app from Apple called Plugin Helper. Or you can also do it with Apple Script, which is what I'm going to try to do here. But somehow, this thing is not working for me. So let me try that again.

Okay, I'm not going to compress the movie. What I was going to do is I was going to compress the movie, or use the compressed version, and apply my Apple script to that. But I can apply my Apple script also to this movie. So let's do two more things.

Apart from making it save/disable, I want to make it so that when it plays, it goes full screen. And another thing is that when it finishes playing, it actually closes down. So there's no chance that, or giving relatively little chance for the user to save my movie onto their hard drive. So now that I have installed the Apple script extensions here, I have this option that says QuickTime Player Scripts.

and some of them, they are organized by the type of functionality that you want to do. So in this case, I think it's under properties. Autoplay is one of them. So I'm going to change the autoplay of this movie. By default, any QuickTime movie is set by off or set to off. So I'm going to change that to on.

So as soon as the movie opens, it should start playing automatically. Okay. So that's actually been applied to my movie. We said that we wanted to take it full screen as soon as it started, as soon as it launched. So that would be, I think that's another property of the movie.

Whoops. Properties. Okay. So I'm going to

[Transcript missing]

This is the screen, so I want to go full screen. Okay. So that sets it to go full screen. And the last thing that I'm going to do is I'm going to save/disable. And I think that's another property here. We also said that we're going to do auto close when done. And I don't see that the Save/Disable is there, so Auto-Close to true.

Oh boy, where was that option for Save/Disable? Actually, I can do that from the droplet that is over here in the Apple scripts that were downloaded. Apple scripts, droplets, media type, playback.

[Transcript missing]

And then dumped it into my-- or into the droplet to make it safe-disable.

[Transcript missing]

So now if I open the movie, it should go full screen, it should play the whole thing, and at the end it should quit. Oh, it did not.

[Transcript missing]

I want to see if it gives me an error. It should return an error saying that I cannot save it. There you go. So at least it gave me that error. So that means that I cannot save it. Even if I put this movie on a web server or play on the plug-in, on the QuickTime plug-in, it would not give me that option that I had originally as save disabled. So unfortunately, the other scripts were not applied somehow. And now that it's been saved disabled, I cannot apply those scripts anymore. I won't be able to save them.

But in this case, the point that I'm trying to make here is that the Apple scripts that Apple provides are amazing. It's an amazing collection. I don't know if you guys were able to see the different types of Apple scripts as I was dragging or as I was looking for on my hard drive. But there's a ton of Apple scripts that have been pre-written for you. And the great thing about these Apple scripts is that you can still go and open them and edit them or learn from them if you definitely want to try that out.

Personally, I'm not an Apple script guy. Apple script is so easy that I don't understand it for some reason. It's supposed to be too close to English, but I don't know if my accent is the one that doesn't work here. But nevertheless, the Apple scripts that have been pre-written by Apple are perfect. Okay, moving on. Can I switch to the slides, please? So that was AppleScript.

Now, in terms of authoring, mixing media types usually is a must when working with QuickTime, and we're working with QuickTime Pro. Now, most of the times when you would be doing advanced authoring, you would be using some other applications like Live Stage Pro or iShell or some other applications for your authoring. But in this case, what I'm going to do is I'm going to make--what I have is I have a QuickTime VR movie.

All of the stuff that we've seen before was video and sound. But in this case, I have a QuickTime VR movie, and I've made this little dumb flash animation that looks kind of like a target that just goes into the center. So if I can switch back to the demo machine. Thank you very much.

This is what I've got. I've got two movies here. One of them is a flash track. It's really tiny. If we take a look at the file size on this document, it's just 324 bytes for the SWF. So this is the typical Flash 5, I think, or Flash 4 file.

It doesn't do anything. It just has a gray background and a little ball that goes into the center. And on the other hand, I have this other QuickTime VR movie where I want to add this flash animation on top of the QuickTime VR and always stay there. So has anybody ever done something like this, as in adding flash to a QuickTime VR with a QuickTime player? Anybody? Great. Perfect. So this is what you need to do. The logic is this.

The logic is to bring the flash into the clipboard, then paste it on top of everything else onto the QuickTime VR. Now, if I wanted to do that without changing the QuickTime VR, right now I'm on the flash, so I would go file, I mean, edit, copy. So that brings it into the clipboard.

And if I wanted to just paste it or add it on top of the VR, QuickTime does not allow me. QuickTime VR is actually all disabled. And the reason for that is because the-- to be able to have the edit pull-down menu, you actually have to have a typical QuickTime controller down there. You have to have a timeline, which, of course, QuickTime VR don't have-- QuickTime VRs don't have any timeline. They render on the fly.

So the secret is to actually change the controller here. One of the properties-- The QuickTime Pro is a controller that it uses. I'm getting the movie properties for the QuickTime VR, and one of the properties for the movie itself is the type of controller. I'm going to go to the movie controller, and I don't know if you noticed, but the QuickTime VR controller now becomes a linear video controller.

If you play it, nothing happens. It's just whatever it's seeing at that moment. But now I can add on top of this my flash. First of all, I wanted to add it on top of everything. So I'm going to select the whole timeline, select all. You see that the whole gray timeline gets selected. Now I want to add scaled, which means whatever is in the clipboard, make it match my timeline.

is the director of the Office of Data Science at Scaled. Right now we have the Flash on top of everything else. One of the great features about Flash is that by default it contains an alpha channel. So the gray background, that's just the background in my Flash document, but I can actually turn off that background by applying its own alpha channel. So I'm switching to the properties of the Flash track over here. And one of the properties is the graphics mode.

And by the way, to be able to change these properties for the flash track, I still have to have the QuickTime controller or the movie controller active. So as you can see, there's a straight alpha that we can take advantage of the alpha channel on the flash track, on the SWF, on the SWIFT file. And two more things that we need to do more. One of them is if I was to go back and change the controller back to the QuickTime VR, I would still not be able to play it back or have the QuickTime VR controller or controls.

As you can see, I'm clicking and I'm dragging and nothing's happening. And the reason for that is because the flash track is actually capturing the click. So let me see if I can change that. I'm going as another property for the flash track. It's the only one that says properties here. It says mouse capture enabled. If I disable that, the click is going to go through the flash track into my QuickTime VR.

So now I have a target. No, don't shoot. The great thing about this whole idea is that because it's a flash track on top of a VR, the VR is actually a really high resolution. I was using the free application that came with my Canon camera to stitch this VR, but if I go full size or even full screen, Because the Flash is a vector-based animation, it scales beautifully. And the VR, being high quality, it still looks quite nice. Never mind the bottom.

So as you can see, in this case we have the flash track on top of the QuickTime VR track. Something that you should not do is do this on a G4, because my VR is too large, and I'm applying this alpha channel, which adds a lot of CPU. So that's what I love about this G5, and that's why I wanted to use this G5 to show this demo here.

Nevertheless, on a PC it would actually be somewhat smoother than on the Mac, just because of the alpha channel. So I hope that you really like that one. I personally love that example of just mixing the VR with the Flash. So I've got just a few more minutes to show something else. And if I can switch back to the slides, please.

In this case, I'm talking about Save As. When you go and save as a movie, you have the different options of Fast Start, Compress Movie Header, and what this does, when you go and save as, what it does, it just copies the media of the existing file into a new file.

Now, there are 15 more minutes. No, I still have 15 more minutes, right, Aimee? Okay. So, in 10 minutes, what I want to do is the following. I want to talk about deployment. So far, I haven't been able to get to the deployment, even though it's most important. And in this case, I'm going to aid myself with a few more applications, and this is what I want to do.

You guys have seen on the Apple site that when you go to a movie, in the movie trailer site, depending on the bandwidth that you've selected for your particular machine, it would give you a small movie or a large movie. Well, one of the things that you could do is use those reference movies to deploy in different languages. So, what I want to do is, I have two movies here, one in English and one in Spanish.

It's the same QuickTime VR that I showed you earlier, but with text in English and in Spanish. And what I want to do is I want to embed these movies on an HTML page, and depending on the language of the user, I want either of the movies to play back. So I'm going to do this really quickly. First off, I'm going to show you this slide here. The applications that I'm going to use is this application called MakeRefMovie from Apple, which is available on the free tools and tips of the QuickTime site.

I'm going to use the QuickTime player to create a dummy movie, and I'm going to use this other application called PageOutX from Qt Bridge to write the HTML for me. Has anybody ever used this? Or rather, has anybody not seen that application before? Okay, you guys are going to love it because it writes HTML no problem. Much better than what you would be able to do with other applications. Okay, so. I'm going to start from the bottom of my diagram back to the top where I have the two movies.

This is the one in English, and as you can see, it just has text in English on the top. And what I did is I brought in a flash track, and I've got a Spanish version. So this one should be selected either or, depending on the user's language. So the first thing that I'm going to do is that reference movie, and the reference movie is going to select either or, depending on the language of the user. And that's where I use the application called MakeRefMovie.

So when you launch MakeRefMovie, it asks you to save a movie. In this case, it's a brand new movie that I'm going to create. It's going to contain no media, and it's going to refer to either of the other two movies, depending on the language of the user. And I'm going to call that--how do I call it? I call it QtSource on my diagram. QtSource.mov.

And this movie is going to refer to the two VRs. So I'm going to drag both VRs, the one in Spanish and the one in English, and I'm just going to drop them into the user interface. And they appear here. Now, this application allows you to select the type of-- or one of the movies, either of the movies, depending on a bunch of criteria. And usually people use the data rate, or the bandwidth available to the user. In this case, I'm actually going to use language.

So this is the one in Spanish. You can see the name over here. This is the Spanish movie. So I'm going to select this movie only if the user has a Spanish OS. And I'm going to select the English version. I could actually leave it unspecified, pretty much just in any other case.

And that's pretty much it. We don't have to do anything else. By setting those preferences, we should get either of the movies depending on the user settings. So I'm going to quit this application, save the changes, and it should have made the reference movie. Now this reference movie, if I launch it, right now it gives me the English version.

But if I change the preferences, I don't know if I can do that without an admin password. If I change the OS to Spanish, Up at the very top, you just gotta love OS X. Let me get QuickTime Player, launch it a second time. No, it should be in Spanish. Hold on, this thing is not behaving properly.

Anyway, the QuickTime player is in English for some bizarre reason, but as you can see now my movie opens up in Spanish, because I changed my settings to Spanish. So I've got that reference movie. Now, if I can go back to the slides please. So I've got the Spanish, the English movie, and the Qt source movie that I've made.

Now what I need to do is I need to make a dummy movie that when the user clicks on that movie, then it launches either the English or the Spanish movie, which by de facto, that movie is going to be the one embedded into the QuickTime, rather into the HTML document.

So what I've done here before is I've made-- thank you very much. What I've done here before is I've made a picked file of the kitchen there. I'm not going to open it in preview. Rather, I'm going to drag and drop it onto the QuickTime player to open up the picked file in the QuickTime player.

Now, for the embedding, what I want is the QuickTime plugin to initialize. Therefore, what I need to embed is going to be a QuickTime movie. So right now, it's a PIC file, but if you go and-- Save As. It wraps the picked file around the .mov extension, so it actually turns it into a QuickTime movie that contains a picked file. I should be putting it into my folder that contains all of the other files.

And I'm going to call this file my source. This is the one that is going to be embedded in the source tag of my HTML. There we go. So this is going to be what's called a poster movie. This is the one that is actually going to be embedded into the HTML.

The user, when they click that poster movie, in effect, is going to call the source movie. And that one is actually going to check if it's in English or in Spanish. So we've got all the media from my diagram ready to go. The only thing that I need to finish up is the HTML. And this is where page art comes to place.

And what this application does, it writes the object and the embed tag for you. And these guys at QT Bridge are always on top of QuickTime, way faster and way better than what you would find in applications like Dreamweaver that's supposed to have an embed and an object tag for QuickTime, which they take forever to update. These guys on the other hand are always on the ball. So I'm going to embed the source movie.

I'm just going to drag and drop it into my Pager application. As you can see, it gives me the name. It figures out the height and the width. And let's set all the properties. So what we want is when you click on this, to actually have an href.

So when you click on the movie, it should actually target the reference movie that it's going to figure out if it's in English and Spanish. Just going to paste the name over there. And you could potentially go to the QuickTime Player. Let's go to the QuickTime Player. So it actually can go full screen, or the user can take it full screen.

And let me get rid of the controller. So it will show the code. There's all the HTML for the object and the embed tag for that particular movie that we've made. So I'm just going to copy that stuff. Copy. I've already made an index page that doesn't contain anything. Let me just open up TextEdit. And hopefully TextEdit... Wow, there's nothing there. That has to do with the preferences, I think. Plain text. Okay, let me try that again.

Okay, that's what happens when you depend on TextEdit and not BBEdit for your... The other preference. Which one is the other preference? Yeah, ignore everything. Thank you very much. That's a good thing of having a really live audience. There we go. So we have all the HTML that I was expecting. So I've got-- I just have the header there.

And now I should be able just to paste my, whoa, relatively large code that contains everything else in there. And as you can see, it already wrote the class ID for the ActiveX control. It wrote the source, the height, the width, and the embed tag for the whole thing all over again. Save.

So, when you launch that, you click on it, it figures out that I have my computer in Spanish, and it gives me the Spanish version. On the other hand, if I change the settings of the computer to English, which I should, When I click on that, I'm expecting to see the English version. Ooh, still the Spanish version. Let me quit the player. Let me quit this thing, too.

[Transcript missing]

Thanks, Francesco. So-- Can you go to the slides, please? About quarter to 5:00. There are buses coming for the campus bash tonight, which you'll meet downstairs. You don't have to rush to get down there. So if you have questions for Francesco, maybe what we can do is we can take them off stage, maybe out in the hallway, take a few, and then you guys can head down and have fun tonight down in Cupertino. Thanks again, Francesco. Thank you very much.