---
title: WWDC2003 Session 722
framework: wwdc
role: article
path: wwdc/wwdc2003-722
---

# WWDC2003 Session 722

## Transcript

Kind: captions Language: en hi everybody let's get started I'm Glen bullet on the QuickTime team you're in advanced QuickTime interactivity OneNote housekeeping note the feedback forum for QuickTime ever-popular has been moved not to cupertino but to the marina room so our speaker today you know really doesn't need an introduction in the QuickTime world Michael shafts and some amazing work and is recognized as one of the leaders in in delivering and helping developers create applications and then also helping content folks put out the most interesting interactive content there is you know he's the only person here who got special dispensation on the shoe requirement and so he's allowed to wear special sneakers so I'll let him get started and if we could keep the questions till the end and during the Q&A if you would please use the microphones and tell us you know your name and what company are with and speak really closely to the microphone so that the translators can accurately translate your question and Michael can answer appropriately thanks Michael with my loud note back there good excelente so we are going to be talking about quicktime interactivity today and what advanced means i've come to realize is a bit of a range shall we say so i'm actually going to start off maybe not quite advanced we're going to work our way over to there all right so i'm going to start off with the tool what i use a whole set of tools i should say but the tool that I use to integrate media is live stage probe the current version for one is a personal favorite of mine and it's a personal favorite of mine for many reasons but I personally am somewhat lazy so i really hate to work hard on something that I've done many times before probably many of you are the same way and so totally hip got together and they thought well how can we make developing quinter quicktime interactivity easier but still let people like me do all sorts of strange and crazy things to it and the idea came about to do what we call fast tracks and fast tracks allow you to create advanced interactivity but not have to be a rocket scientist not have to be a gearhead or a script monster and let me show you some of this stuff I'm going to start off by creating a skin fast track and I can do that a couple ways I can click on this bar right over here that will bring up a a editor for doing work with skin fast tracks and automatically quicktime excuse me quicktime live stage pro has already put in some default Media not some of my personal favorite media so I'm going to bring in some other media look I've got special media just for this event WWDC theme down here and you'll notice I have a folder down in my library window called skin now it's a couple ways I could do this I could bring in my media one piece at a time and I can say well is this a window shape note is a drag area nope is it my skin background yes definitely and right away it gets replaced or I could bring in the entire folder fast track for skins has a close button it's very valuable to put a close button if you're going to use the skin no close button confuse users confuse users are rarely happy so what I'm going to do is I'm going to grab on to this whole skin folder I'm going to bring it over here and I'm going to drop and poop everything gets swapped out for me I now have a new new close button I'll grab that and drop it over here and I've got a new full screen button and I'll grab that note the stage kind of rolls around for me and you'll notice that as I move things around there's a lot of information about what's going on and these are new features to live stage pro version 4 we thought go figure designers would like to have this information rather than have to calculate it out on their calculator so I'm going to zoom out and a lot of these in instructions are just like you would expect from Photoshop if I hold down my spacebar I get this kind of what I call an active scrubber and just like in Photoshop if I hold down my option key I can do the toggle between zoom in and out we've tried to make the tool as much like the tools that you're already using as possible reason we don't want you to work any harder than you have to there's a lot of space and quicktime interactivity let's focus in on the things that you bring to the table that are unique and not have you jumping through all types of new hoops so once i have done this i can close that out and i can see my stage over here and zoom out on that one as well scrub around and zoom back up now that's good that's a help but what about the rest of the stuff that I may want to do well okay someone took away my outline that's bad because amongst the many things that I am is forgetful so I'll be able to handle it but we might skip a point and I might come back so what I'm going to do here is I'm going to grab another fast track this one dealing with linear media linear media control I could either create it from here menu and I can come my own here and say plus going to let me do a playback controls fast track believe it or not I have used the application but we have built in a lot of redundancy so there are different ways of working with live stage pro just as there are different ways of dealing with quicktime so I've created a linear control that has has a beginning go back to the beginning rewind stop play fast forward and end and all those are pre-scripted for you so if i look at my stage I can grab on to my linear controller and drag it around or as I showed you some prematurely I can just grab on to a control and move it around in here and it will automatically resize the track for me once I've done that I'm going to bring in some not surprisingly some media that that I'm able to play I'm going to find some video and then I'm going to bring out the hip bot he's brought out quite a lot so I dragged him on the stage and again you can see all these annotations now I'm going to do something that I've done myself accidentally a number of times those my knowledge Oh Jim you are a savior thank you very much so I bring back in close button and I'm going to try this out so I press the play excuse me i press the preview which does a preview inside a live stage pro and you can see i can drag this skin around and now I go over and I click on the close button and nothing is happening and i've done this i can't tell you how many times have done this wrong and the reason is that my drag region the region that allows me to drag the window is a key component to a skin so what I'm going to do is I'm going to turn on the stage show me where that drag area is and you can see it's right here at the top right where I put my close button so first mistake that or the first thing you want to check for is when you're placing your controls is are they in an area that the window is going to be dragged from if so move them because they won't work I'm going to grab this I'm going to put this right over here and drop it I'm not going to do too much aligning because I bet you folks believe that I can align things and you don't want to watch me doing it so once I've done that let's do another preview and it builds that back up again and in a moment I can both drag and of course i can close but i don't actually want to close quite yet when you use these buttons just to prove that it can be done sorry Ryan I didn't max that out before you kill me okay so I've got these all the way up and you can see these works just like they should and that close button works now that would be great except for one thing let's say that I was trying to learn the product I actually wanted to understand not only how the product worked but I wanted to learn how to do this stuff myself what we've enabled you to do is click on a fast track and ask it to be decompiled now no bits are going to go flying off the screen so no one has to go running in any panic and notice it changed my fast track down here from one color to another and it also changed its icon over here to show me that this is now a sprite track will be talking some more about the timeline on the bottom when I open that up I can see each one of these control and exactly how they were scripted so for instance if I want to know how we're doing the fast forward I can just click on it take a look at the script and find out that onmousedown I'm doing this script not going to focus on this particular script right now I'm going to just focus on the fact that you can use the product at a high level for building fast tracks and we have a number of features that that can be built just in this drag-and-drop fashion and then once you get comfortable with them you can dive in and learn for them or you can easily eat also use them as the basis for extensions that you're going to do and far from just being a basics for beginners these are great basis for cutting down your time and production and i'll be showing some other methods that we've built in to tote into live stage pro for making things faster and easier as I've often times told Steve Steve Israel sin being the lead architect of live stage pro we on live stage pro to drive like a sports car like that need BMW car don't want to actually drive like one of those big diesel trucks all right so I've showed linear media and fast tracks a lot of new features came in on live stage 4.1 and I would be remiss if I did not tell you that there is a special discount for all of you folks out there and any attendees of this session guia calculated it out I think it's a sixty percent discount or some odd from the list price what I'm going to do is show some of the new VR features inside of live stage problem going to grab on to let's do this cubic right over here i'm going to drag and drop that actually i'm going to kill that and i'm going to turn off a six-stage there's two different ways of viewing the stage in my mind in live stage pro you can have it as a sixth stage in which case if you have already designed out your skin and you know exactly what the sizing is going to be you can enter that sizing right in here and it's all locked down handy but oftentimes you want the flexibility of having a dynamic stage where you can just move things around freely in the stage will automatically adjust for you I like dynamic things so I'm going to turn off sixth stage so I've turned off fixed size and I don't want an extra background put in so I'm going to turn that off as well I'm going to grab on to this cubic and I'm going to drop it in there okay we've got a cubic it marks down in the timeline that it is a VR and I have one node in that I can go out here and stretch its duration which occasionally you want to do if you're trying to match it up to audio that's going to be in the background I'm going to open it up and we have a brand-new VR editor with more features than I could tell you in several hours so I'm going to focus in on some of what i believe is a keys first off I love a number of the stitchers that are out there however when i create vr it's not always going to be used the same way each and every project sometimes I'll want it to be one way on one project and another way on another but I'm not going to want to go back to the original stitcher and redo all that work so what we did at totally hip was we looked at where that threshold is and what we figured was one of the things you'd like to be able to do is set in a new initial view so I'm going to have my initial view be pointing over here it's very difficult to do once I've found where I want to be able to zoom in a little bit I'm gonna set that as my initial view automatically get set and now when i open up this movie this will be the first view that i see even though the original stitcher put it out in a very different view the next thing that we wanted to be able to do was create hot spots inside a VR so that you could have a beautiful stitching but you could put new hot spots based on the particular project that you needed to get done so I'm gonna switch over to hot spots this particular VR already has a number of hot spots and you can see them right up here they have both ids and names the ids can be very helpful when your scripting you can enable and disable them and the names i'm partial of words myself so i like to be able to see that and work at that level i can also set the cursors that are associated with excuse me the cursors that are set from that hot spot when I mouse over I'm going to do a turtle for mouse over i'm going to leave the other two alone so now i'm going to create a new hot spot look around over here and i'm going to create my hot spot right over here i have different tools that i can do that i'm going to create just a simple rectangle put that right there and that pretty much obscured whatever was behind it so I'm actually change the opacity so I can see better my actual content once I've done that I'm going to change the type of action associated with that hot spot I've got different actions that I can do I can link to another note there's only one note in this VR right now so I'm not going to do that I can do a go to URL which will either trigger a browser or trigger a new movie or the ever favorites blob which is not a 1950s movie but rather the ability to have arbitrary actions associated with a spot actually going to do a go to URL here and notice again I guess we could call live stage pro the slacker aid codependent maybe I hate to look things up but I oftentimes forget syntax so we've got all the different syntax for go to URL right here for you and I'm going to choose one for a browser and is everyone watch me type know raising hands so I'm going to skip actually typing in a URL and you have you folks were all trust me as that will actually do the right thing I'm going to close that up for a moment and then what I'm going to do it didn't actually mean to close it up I'm going to do some fast tracks associated with VR now this stuff what I'm about to show these fast tracks this just that probably eight months ago would have been advanced quicktime interactivity who have been stuff that we would have gotten deeply in the scripting of how do you actually do that not these first ones which are just controls say yes i would like some new controls same type of thing here i can get new controls and bring in some new media again the folders can be used in order to get production i'm going to grab on to a pan left folder I can do them one at a time well that's the down image this is the up image this is the over image or I can click on my control and I can grab on to a folder full of images in this case pan right just drag it and drop it and it does all three of them for me at once so I've got those two out there and I'm going to turn off I share i want kilt up and down to be there actually want all them to be there so i'll just leave them alone ordinarily in a real project course i would go through and replace all these so they have the same media but i'm not going to do that right now so at that point i have my BR and i have my BR controls so if I preview this I can tilt up I can pan around and of course they still have my old controller we have the ability to set just about anything you could ever want to set in quick time and then some so I'm going to go through i'm going to say ok leave that cutie be our controller there what i'm going to do is grab that same skin track creating a new skin track you see my BR right there going to go grab it drop it poop and now i can adjust my vr I can grab on to my fat checks so I can use all this notice I've done no scripting which if you've been to some of my previous talk is impressive so I grab this and I drag this stuff around everything's been dragged and dropped to this time and now because I'm doing a demo I want to actually do something a little bit beyond that i'm going to go out and create a compass that will follow my movements around so i do that and it asks me quite politely whether i really want to do this and feel certain that i do and automatically I get a new compass now the reason why we're always supplying default Media is because we want to encourage people to experiment interactive quicktime has so many different ways of doing things that it's valuable to do experimentation it is shall we say a cultural experience do this kind of experimentation and we don't want you to have to go looking for media just because you need media we're going to pop it right in there and then if you have media you're certainly welcome to replace it in this case I'm going to leave this media alone the next piece of functionality has been oftentimes requested by users we want to make a map off to the side of our VR and we want a few things we want to be able to put nodes on that map so if you click on the map they'll go right to that node and we also want to be able to have some compass indication right on those notes now if I have one node I have a very boring map so what I'm going to do is I'm going to bring in a second node and I'm going to actually create a multi-node right inside of live stage pro you are never able to do this before before if I want to create a multi-node had to go back to my VR authoring environment create a multi-node export it come back over live stage pro look at it and see that everything works now that's gotten a lot easier all I have to do is come over to my library this by the way is my library window will be talking some more about that a little bit later and I'm going to grab an object movie now an object movie is going to be combined with a cubic movie to create a heterogeneous multi know so I drag this over and it says I can't drop it there mm-hmm nope can't drop it there but ah there you can drop it so I drop it notice that all of my fast automatically adjusted their durations because I had added this in it's a big drag for users when they get everything set up and they have their control or set at a duration of one second and they bring in their three-minute video and poof the controller lasts for one second and then it's gone which is wonderful functionality if you want to use it but if you don't it can be awfully disconcerting when your controller disappears so I've brought that in open my window back up and notice i was able to switch between the different notes i can also do that with a manual and switch back over to my cubic and now back over to my object movie I could switch back and forth and work with cubix cylinders or objects even multi-state objects which we'll be talking about some all inside of the same editor without any fuss for months now you'll have to stretch your imagination just slightly because i'm going to be having a map which is going to point off to this object movie and i'm going to create a new map fast track which is okay once again we've popped in some media for you I don't know where this actually is this map pops up often I'm going to place it now again much like Photoshop if i switch to my resize tool which he tells me is the letter T which matches up with the key that would be used in Photoshop I don't actually use that particular key in Photoshop so I never know that and now if I hold down my shift key it will constrain my aspect ratio so I have justed my map i'm going to place it and now I've got two nodes I have and I click on it and drop this anyplace on my map that node represents the node associated with the cubic and this node over here is a associated with my object ordinarily of course if we were building a map like this they would all be similar kinds of things she may ask why did you grab the hip-hop movie then and I wouldn't really have a good answer except i like the hip bought object all right now those are both pretty cool pieces of functionality I've got my map and I've got a compass would take a look at this drag that around I look around my compass is moving right over here it looks like I should have set the transparency mode on that and you'll notice that also the node right over here is indicating where I'm looking as well I can set the North spot on this VR so that North is north and now if I click on this note I automatically go to my object and now I have completely different type of media in the same space that's cool i like that close that up sound spatial sound been done it's raw somewhat tricky to do strictly on a scripting basis pretty fun to decompile and take a look at what we've done to actually implement that but we've wanted to make spatial sound easy for you click on sounds fast track it's going to create a new one it's done it now I don't have any sounds in my sound list at this point so I'm going to use my handy dandy library close some of these things out since I have less screen space than usual here's my sound and I'm going to bring in two different kinds of sounds the first kind of sound I'm going to bring is actually going to be a MIDI soundtrack and I'm going to use that as my ambient sound so this is a sound that's not gradual or sudden its non directional I always want it to be playing I could adjust the volume if i want you i want to draw put down a little bit so it doesn't overpower everything and plop that right there and now since it's non directional there are no spatial components to this the next sound I'm going to want to do and all of your cell phones are turned off right now right the next Island I'm going to want to do is this cell phone ring and cell phones can be non directional when you're at a place like this and everybody's cell phone is going off but I actually want them to be at a specific place pop over to my cubic and I want my cell phone to be associated with this heavenly statue right over here ah my bad i should have created my soundtrack in my cubic and i didn't do that so without further ado I'm going to use my timeline to kill remember no electrons were hurt while I do this I'm now killing my soundtrack and opening back up again I wanted to be in my cubic when I was having this experience so I create a new sounds fastrack and yes as you just saw you can have different sound spatial sound associated with different media and once I do that I'm going to go back out and grab my in-flight switch that back to non-directional come over to my cell phone drag and drop now I want to be right here when this sound happens so I'm going to grab this I'm going to turn it to where i'm currently facing this arrow indicates where I'm facing and I'm going to spread this out i can set the extent of the sound when am I going to start to hear the sound in the pan direction and I can also set it how much tilt do I need well I want it to always happen so I'm going to stretch that tilt over the entire extent of the movie so once I've done that I'm going to change that from gradual too sudden and now I'm going to preview that ok first we can hear the key listen very closely yes the MIDI that was non directional so as I look around here I'm getting this lovely media experience I'm able to have my media map show me where I'm pointing and then when i come across here i can be interrupted by a cell phone just like real life you can't get any more immersive than that all right now I could dive down into the debugger but that would be the old brutal advanced Mike but we're going to we'll get there okay so we're going to close that up so we saw a lot of advanced functionality and VR and except for showing that i could decompile I've done absolutely no scripting that does not mean however that live stage pro doesn't have scripting chops it definitely does and in our next couple pieces I'm going to showcase a couple you can see this by the way before I show those I wanted to show a really lovely piece I just love this piece notice we have a skin we have a cylinder VR that we can look around we've got controls that were able to roll over and move around and we have a map that we're able to check things out all this functionality is now pretty much drag and drop that's pretty impressive which goes to show that human beings are getting caught up with sooner and later I guess there's a new movie coming out of that's going to show us that the machines will rise to so I'm going to open up super fluid and we'll be talking more about this piece we're actually in a few moments going to start to look underneath the hood of things a little more detail what is involved in hardcore advanced and when I pop in here we have really many of the same things I've got a controller that I can move around I have a volume slider we have behaviors that allow you to create this kind of a slider without any scripting knowledge and if I click on one of these pieces the automatically loads in the ER and now is panning around this system is actually set up to pay attention to how much activity on doing notice when I clicked on this the immediate stop to now I can control it but the idea was that if the user is not doing the media gets progressively more psychedelic and that was the intention of band you know sometimes you want to just sit back and chill to what's going on and as you can imagine if I go full screen on this ah I put the wrong version on this one the a real full screen would actually go full screen but this will do since I have a very large monitor here notice that as I haven't done anything then the media is now getting more and more excited it's adjusting the fov or the field of view giving a pant and as I move around it gives me control a lot of what advanced interact quicktime interactivity is about without paying attention to the user if i switch over to the finder i happen to my movies shrunk itself down when I come back to the media poop it brings itself back to life he we were thinking about the doc and and the Expos Asia just along with ski so the same same type of control that you would expect from a quick time experience I can drag this around and play with it some things you might not expect from VR the ability to change its graphics mode so now I have a somewhat more psychedelic experience let's go see Hollywood friends we all have friends in Hollywood right and I can of course turn these things off assignment did I go to an x-rated one and was pretty sure I didn't foot let's go to monsoon because that's a little less controversial and the idea that the band really wanted to get across here was this kind of kaleidoscope between music and space and one of the ways that we were able to capture that was to use cubix in order to in case this notice it's now realized that hey myk's talking so it's going to go off and start to entertain you but we also realized that we could express some philosophical points on this media such as the ability to feel fenced in so you notice we've dropped a an overlay over the entire UI still working and once again I can be in control or the movie can be in control and just in case you want to know whether you can do to overlays at one yes indeed you can or i can reset you now overlays and all the rest of this media is great but if you have to download all of the media associated with superfluid in one very long push it's going to be very unpleasant so we've done a couple of things on this one those overlays in there are a number of them here are all dynamically loaded quicktime starting with version 6 introduced the ability to dynamically load sprite images in addition to all the other wonderful things that sprite images because sprites could already be getting their media from such as video tracks or flash tracks or even URLs that you've hard-coded now we can actually dynamically load those in so all the media associated with the overlays are loaded on user request only and then cashed so that if I ask for at once I don't have to go back and reload it a second time and think that's all I want to say about superfluid a very fun piece o one last thing I wanted to say now we hate this feature so I i will point that out right away but I happen to love it the idea is that when I am closing something I don't necessarily want as a content creator just to let if you'll excuse the expression let the user just vanish so in this case what we do is we fade out the music show a logo and once the music is all the way faded out poop the movie goes away all right now this this piece since I've been talking about what he doesn't like this is some of the stuff that key does like he was very involved in this piece I think this don't know it was obviously done for Acura but I don't know what company actually did this but you'll notice there's a number of hotspots around and as I move around i can select one of them i want to select on the dashboard I do a transition I pop up new media the Yankee robos music system in the TL type-s includes am/fm stereo I could see a tensioning still to the misery DJ user is able to move things around be the radio display but they'll know where they come from notice the lines that are indicating where this feature comes from select further points inside of my VR did I say this was all created with live stage pro by the way supposed to say that a certain number of times per half an hour and I can do all the types of adjustments that you would like to do right as they are relevant and there was a wonderful talk given here yesterday by Lori Schwartz and Mark sand oh yeah and you know Mark pointed out that each of these little details in and of themselves is not rocket science it's not incredible how did the attention to those details it makes the experience down here in the gut feel something immersive something unique something that you want to get involved with and as a antidotal evidence because I'm actually able to release the actual statistics we did a series of studies for retention on these things how much activity did did people do when they were actually using these environments and you would be staggered by the amount of time that people actually spend on these if they're actually able to interact with them and that includes straight out video just putting it in a skin already helped on user retention having all the branding be consistent help them keep on message then if they were able to look at background information other things relating to that media we could keep them for an hour plus that's pretty impressive all right now this next piece also shows off some new live stage pro functionality I mentioned that live stage pro now works with multi state VR does everybody know what multi-state VRS cure so much ahead of me John I didn't know what it was I looked at this thing I'm a multi-state dr that means what well let's take a look at what it means nice er object movie I can roll it back and forth I can tilt it that's nice ah another state aha a third state a wonderful piece of functionality all in the same space all in the same media container the ability to have the same object at different state not a big surprise I don't know why I didn't figure it out so how do we do that let's go out and take a look at what he has done I have over here a sprite track and notice as I pull this up some people in the back of the the roads are happy and some people who are worried that I'm going to pull out the old scripting monster start to lean back in their seats and indeed you're right so I've clicked on on this and I can see the different tracks that I've got this one here named sprite one with an untitled sample shame on you geek I'm going to open this up and I'm going to first change this to be a nice name state modifiers now does anyone know why I am well I should have not allowed to ask you because you have to go to microphone the reason i am so fastidious about naming these things with real names is because invariably some amount of time goes by and then the content owner either calls me up or sends me an email and says I want you to change or extend or fix something that has a bug and I look at it and if I haven't put in reasonable names then I have to hunt around for what I've done I don't like to do that and I'm betting you don't like to do that easy either so I'm encouraging you all to use names in order to make your projects easier to understand so what have we here we've got digits 1 digit 2 digit 3 very interestingly named and if i look at mouse click aha everybody knew i was going to pull out the old script now notice some of the nice functionality we've gotten for is the ability to get more screen space when you need it right over here he hasn't put in any comments and I can set the DS going to punch me several times after making fun of them so many times but I'm going to put a comment over here and that is if the state is not current and you'll notice that if I had all of this typing change the you want me to change the color i will certainly do that but let me show you this first if i had it in the original way i would not be able to see that content and i would get to get scrollbar happy now i don't like scrollbar happy so I close these things off as appropriate and then I'm able to not see it but I can because I can go over to my preferences just in like the last few months that I don't do the old OS 9 thing and come over here and I can come over here and say editor and I can change all these things so that is comments and notice it's color is gray and I can come over here and say well let's make it orange and kind of bright and notice Mike ah that's a bad choice because it happens to us to be similar to our constant but I could change the color of my constants as well so once I've done that what he's doing here is he's finding out the current view state and then he is setting the image index he's not doing it by name he's setting the image index by number and if this were me boy am I in trouble because he's bigger than me i would say view one on and what i would do is come right over here and put this dollar sign which indicates that is a part of a definition and i would save you won you won underscore on and now i would be using a symbolic reference to my image now there's two advantages to this the first advantage is the one I've already mentioned that projects are easier to work with the second advantage maybe a little less noticeable let's say that my graphic artist says you know I don't like that background i'm going to put in a new background and i want you to put it right here and i drop this in if I've hard-coded my index if these numbers change my project breaks if on the other hand I do them by name then no matter if i take this one and pull it all the way back here it still works I like things that work alright so we've taken a look at the our view states oh I should mention one other thing a common question that we get is are those actually variable at runtime those constants that we put out and as the word indicates constant no they're not what happens is we take a look at the name we find out what that number is and that's the actual value that goes out there I won't name any names but I did get a very amusing email from somebody in New Zealand a former quicktime engineer who couldn't understand why he was not able to change this variable and I was amused but I'm amused easily okay now I want to show the same person to give you some indication of who that might be a tool that I use lot with the Liberator excuse me with lot stage pro which is the Liberator and what I used the Liberator for is working with media that I'm going to actually deploy I'm going to take in original exported from live stage movie I'm going to drop it on deliberate ER and it opens up to windows the first window is the actual movie content this piece by the way was shot the BR was shot by janie Fitzgerald and the skin which ordinarily would be a skin accepted in this environment was done by Robert West and in here i am able to do a number of amazing things useful amazing things time-saving amazing things what I'm able to do is simulate what the different download rates would be like now right now we've got a hundred days internet intranet and things are good John Alper was downloading something and he said various expletives that I'm not allowed to repeat on this microphone but they were all happy exploitive but most people still today have this kind of experience remember this was the original output from live stage pro movie yes that is a very nice blue cube yup okay we're loading you'll notice it shows the percent of the movie how much K has been downloaded and the number of seconds this person has endured this experience ah i have a blurry be are very nice okay I've oh yeah I have a piece of good vr coming in here I'm 93 k into this and I'm seeing a lot of blur I'm not a very happy user this is not the kind of QuickTime interactive experience that we really want to have what we want to have is an experience in which the preview track comes in and that's what this book of its reason it's blurry it's not because of QuickTime it's that in order to get a fast download quicktime supports the ability to have a preview tracker uvr notice I'm 190 k into this thing and I'm still not seeing any of those beautiful controls that Robert West did for us where are they well that brings us to our second window this window over here is our media map it shows every every block of media out there so I can come over here stop my machine crash almost passed out I kicked my movie resource up here I see a whole lot of free space and some very fine quicktime engineer is going to explain to me why that free space is there and how I can get rid of it totally someday but that day is probably not right now i can see that i'm getting some VR samples out here and if I come all the way down here why look there are my control but they're at the very end of the file do I want them to be at the end of the file nope I want them to be coming in exactly when I want them to now flash supports the ability to say well you can have it any way you want as long as it's either back to front or front to back which way do you want not so in quick time in quick time I can decide exactly where I want that mediate to come in I like to call it choreographing the media arrival now there are a few things more dull than watching Mike dragged around blocks of media but i'm going to show you how i can do it yes there is a block of media moving and now i'm going to drop it right down over here and it wouldn't let me actually showed me on the little hand but i was not paying attention so the little hands saying yes i can drop it there and once i do it moves it for me now that piece of media will be loaded at that particular time excuse me at that particular position in the actual file rather than everybody want to see my address book I'm going to close that one out and I'm going to show what i did in order to deploy this media pop it back over to the deliberate ER again I have the media open I'm going to will leave it actually at a duel right now I'll put it back down onto 33 to be fair and now I'm going to simulate what that experience would be like having moved by media blocks around after just three point nine percent or so I get my preview track i have now my skin so I have my user only eight percent into the movie already has full context as to what's going on and those things already work that's pretty hot in terms of control over your deployment media The Liberator is an awesome tool so if you haven't checked into it and you have web-based delivery I highly recommend it and if one additional feature i want to mention but i was too much of a coward to demo is the ability to work with locked content across multiple people so for instance g and I have done projects together and he's in Vancouver and I'm in Los Angeles Los Angeles I'm in La Honda and if he wants to pass me media that is copy protected ordinarily that couldn't be done because once it's copy protected it's how the Liberator allows you to do a challenge in response so that you can actually work with that copy protected media across multiple people tremendous tool doing a lot of things if you use it please give John summers feedback on how to make it better it is a onward and upward tool all right does anyone like that deliberate oh I'm pretty damn impressed ok so right down here I've got applescript structure and what I want to show here is the fact that live stage pro in version four internalized the need for all of you to be able to create automated projects up in the boom days when all of us were making money in the boom days which will come back again someday I did what I called boutique where right I could spend all the time I wanted working on something because it was supposed to be a one of now when I actually need to make some money I need to be able to make something and use that template over and over again and we have the ability to do that if you create a project in live stage Pro you can record every step you do you can then go back in and do any editing that you want to do and then you can create if you would like and I'm sure you'll want to we create a droplet that will give you the ability first I need to locate this droplet I only really need to do this once and put my desktop 722 [Music] there is my template I choose that okay and now what I'm going to do is I'm going to take some media I'm going to do this from media where I know where it is I'm going to grab a couple of videos I'll grab three videos and drag it on to my droplet it goes off very dutifully notice it's doing all the adjustments for me it's processing that its output it it's doing the next piece ching ching we like that less caffeine more money okay and where did those things go well they're right over here all in a folder neatly output for me and ready to go back all right zooming right along one of perhaps what time am I / alexander 54 minutes I'm in deep quantum one of my favorite aspects of QuickTime is the fact that it supports third-party components and don't get me wrong the folks at Apple are some of the brightest and most enthusiastic that I've ever met however they don't have every idea out there and they don't have the ability to use every engineering dollar that Apple has and that means that third parties need a way of being able to extend quick time in a nice robust way Apple's done this they've created a component download program and this allows somebody to develop a component that does let's say 3d and allows them to deploy this actually on apple's servers so that when a user hits some of their content in a quicktime environment it will go out to the Apple server grab onto that component and download it and then the media can be used now I'd like to say that's a very easy thing to author and I would like to say that and it is pretty easy but it's not super easy and so I want to show actually how that can be done because I was scratching my head for a while and I figured maybe you folks are to the first thing that I do is I create a what I call a gate movie let me first go cripple my player so I need to quit out of this I'm going to remove the component that does axial 3d right here a truly amazing environment that I love my kids love they don't actually get to build anything in it but they love the little things that I build with it and I moved it I do the same thing every time you'd think that I would figure this out sooner or later but I'd be wrong so I'm going to pull this out of the folder and now since my quick time has not been launched when I go back into it it won't know anything about actual 3d and when I launch this gate movie it says hey the component is missing should i download it by all means please do it goes out there and after a moment or two thank goodness for networks chugga-chugga-chugga Dave singer pointed out the value of watching progress bars in a meditative way now being legalistic first they have to tell me about all the things that I must accept and you must accept them too and now because they want to scare the pants off me they put up a dialogue that says you have installed software that may not be available to currently open movies now that would scare me because if I'm a user I want to go right on through to my media I hate opening things up again but I'm going to say ok and notice my movie down here said hey don't worry no need to close it's all handled I click on this and in a moment I have my axle 3d content now i'll show how to do the gated movie in a moment but i want to show off a little bit of actual 3d because i don't know how many of you folks have seeing this stuff pretty pretty cool so i can spray paint particles in my world I'm spray-painting leaves very in Toulouse living in the woods myself that's cool i like that i can also change those leads on the fly spray paint some more in that that rendering change some more i can even see them in wireframe i'm going to grab this i'm going to give it some wind so now those particles are being affected by forces in the environment forces stronger than you or I and being blown away now imagine trying to create these with sprites even Matthew Peterson wood quail at such a prospect but wait there's more I can also dynamically change the color of thing and it's only because i'm lazy that you can only change the background we will actually we've already posted no no that's that's all we will be posting in tomorrow it's not only this project but we will also be posting another project which gives even more degrees of freedom you can control more things and both the axial project and the live stage project will both be available from stage door and stage or is a fantastic resource on the totally hip website where you can get check notes and sample projects and inspiration and mailing list archive so to show how nice that axle looks when it's larger notice that I've increased the size of my movie and everything still looks good now my bitmaps over here they don't look quite so good anymore because I did that intentionally but my axle content being vector-based looks great I believe we we have yeah we do justin is in the audience aww I would like you to give a hand if you would to Justin Justin created the media handler for this and the OS 10 version of the authoring environment and it is hot way hot that's remind avenue okay now I promised that I would show how the gate movie was done and true to my word I shall go in through live stage pro and pull out once again the script holism notice all of my tracks are named and so are my samples so when I open this up I've got one thing and it is the cover which is this track right here all the rest of this is just graphics to grab your attention and once I do that I look at the script and on frame loaded what do I do well the first thing I do is I go out and that was Steve Israel sin getting back at me true there are no comments but look how nicely formatted that code is anyways what it's doing here is it saying first go out and check whether I've got an importer for Axl now if you're wondering well how do I know these names blood sweat and tears no actually you can get this stuff out on stage door I would like to say there's a really easy way to find out this information but I can't Francesco's not even head there is an easy way oq script really styling I can show something else the Q script reference which I use a lot if i type in component if I would spell component correctly no silent are in there thank you and we have load component oh I probably have to go up to the index so if i come into here and I search down deep enough hence it's not easy I would be able to find it right in this handy-dandy window I use this a lot the ability to kind of look around let's see whether I can find axle no see if i can find video oh so indeed they are no those are them them are those okay if you're really interested to how to see this in the reference guide hit me after and i'll show you don't actually hit me though so that after I've determined whether or not the component is there I'm checking to see whether it has a version number that's greater than 0 if it does then I flip the image that says hey image is ready axel loaded and ready quick to continue if on the other hand I don't then what I do is I flip the image to need to load indeed need to load component missing please download okay then I do this down here set idle delay to 60 now what I'm doing there is I'm saying to the environment hey I'm going to want to check something periodically to see whether that download really happened so if I pop over to my idol handler I can see the counterpoint to this the idol handler once the second goes out there and says hey is that component there yet and once it is then it turns around excuse me if it's not there it invokes it directly and says load component go get the importer for Axl if you were to ask me about these two numbers I would have no really good answer so please don't it embarrasses me once I've done that that's going to actually pull up that dialogue that was doing the component download and then a way it goes once I've actually found it then it's clips I didn't actually show that part once it's actually found it then it is going to set the image to loaded and I've got my image in a way I would go into the movie itself that way the user is able to use third-party components without having to reload anything into their environment and close that up so all of that the component download stuff and the actual stuff will all be on stage door tomorrow zoom effect zoomify is another third-party component that we support directly in live stage pro you're able in zoomify to have a VR environment cubic environment much like qtvr but notice as I look around things are a little blurry once I let go boom things come into play now if this was all it would do well I'd rather have qtvr however what about if I wanted to zoom in to my control boom this media is being dynamically loaded so that I get a higher resolution as the user actually does it muy cool live stage pro is able to control I don't know why it's doing that it started doing that and and I just say okay live stage pro is able to control all these things just from actions including the ability to do some things that you couldn't actually do in qtv are like roll the camera right and roll left this is for the roller coaster fans in all of you and the reason it's able to do that is there is an actual Open GL space behind it so they're really knowing that there is a 3d space that they're working with very cool plugin my hat's off to what they've been able to do there so is that really hard stuff to code inside of live stage pro positively not those actions are very straightforward I have a sprite check that has two kinds of sprites in there has a monitor sprite which actually does all the updating of where things are in terms of pan and tilt and roll and whatnot and then I have an operator that just pays attention to which control was pressed and then it performs that action so here we can see the kind of actions the kind of actions that we have so say if we're zooming in zooming zooming in pretty straightforward stuff so if you've got VR that you want to get one of these kind of progressive environments zoomify is something to really take a look at and live stage bro is the environment for integrating all of your quick time you and I know I missed my calling and marketing okay now all those things were pretty cool and we liked it we had fun what you're saying come on Mike that's not truly advanced and I'll say well really it was pretty advanced to me but there's more in some original quick time which is eluding my brain at the moment five thank you quicktime introduced the ability to work with xml well actually we're introduced the wired ability to work with xml more correctly put and i gotta tell you when i when i heard about this well i started drooling and other things but i was pretty excited he saw me get going and what we're able to do with that is actually exchanged to the server a lot of information in a structured way so I've created a little skin here and over here you can see a cutie list notice it's structured data I've got a list I can drill down into this and over here I have the representation of that less i'm going to put in this is a little chat program that basically got written over a weekend and i'm going to put in a name i'm going to put in a little message and notice i put that little apostrophe in there now when i actually send that I'm pressed enter you can see the XML the yeah the XML that was sent up to the server and right over here you'll notice that we're putting in some I guess it's not really a tag for they call these things what he said what was that in entity well that's the nice generic word so I can put in entities that represent some of the characters that would confuse XML at we excuse me which would confuse HTTP GET which is the underlying mechanism that is being used to pass information back and forth then close that window up but there's more one of the things that everyone who's ever worked with quicktime in a serious way and in a browser environment has wanted to do is let me pass media let me pass data into the movie please you can do that now first let me show you what kind of stuff I'm talking about let's say I had a playlist that i want to play this kind of bad example in some ways but it's a good example for my purposes i wanted to pass in something that looked like this from the browser maybe spit out from a database dynamically into a web page and then pass into the movie beginning in quicktime six you have the ability to pass these in so I've got a little text file out here which is a example that I wanted to use and I'm going to use a freeware application done in France called page 0 as I mentioned it's free wonderful program and it allows me to build up all of the information that I would want to embed in a page so if I go over to cutie list I can say yes I want to pass a cutie list in there and I want to import a list there it is now it's in there and now i can say show code keep missing that grow and now i can see all of my object and embed tag and you can see that i have a parameter called movie cutie list that actually allows me to pass structured data volumes of it if you want structured data into your quicktime movie tremendously helpful and the last thing I wanted to show and then I'm done is a piece that myself Janey Fitzgerald and Robert West kid in it uses xml and q qi less quite extensively it does a complete tour of the los angeles metros red line you have flash track down in here that i'm able to zoom in on and move things around right now i'm in north hollywood going to drop that audio track down a bit i'll look around over here i have a hot spot as i can see and when you can see up at the top right up here it indicates what that hot spot is that's the flash track actually i click on that if you listen closely you can hear new audio being associated with this particular node now there's a hunter i think there's a bow hunting 26 or 128 nodes in this piece now if i had to represent all that hand-coded I'd be very old very frustrated and very bored three things that I don't want to be right now instead what we did was we created an external representation simple XML file and we read that in not only that so all the audio all these images down here even wear on the map IM is all represented in that xml file this also gives me the ability know if it's this trouble eastward so i click on this it reads in the other xml and now it's doing it in spanish notice it's going to adjust the map full it loaded in new images down here and adjusted that map from reading actually having already read and cashed the xml representation of where on the map i would be moving to this is a very cool piece i wish it was online and I could show it around it's not quite yet as soon as we're able to get it on line we certainly will but in case you're going to ask it's not notice it moved over here I can also click on a map and it will go instead of going from platform to platform it goes on to the street level so another thing that's represented in the XML is what's the street level and what is the platform level some of these stations have four nodes some of them have seven notes some of them have nine this run on 13 notes so you can imagine i need a very flexible way of representing data structured data is well represented in xml what a great match one last thing i would like to show about this is I've kind of moved around going to pop over to Hollywood and Western has turn off my hide spot hot spots is I'm actually doing a few things behind the users back first off I'm tracking everything you're doing every control you're pressing every station you go to every knows you're going to I'm tracking it all and I'm putting it all into a cutie list and no I'm not sending it to the CIA but I do have the ability to upload that and analyze it and that is very helpful information for designers but it also gives me the ability to say go back aha it's switched stations for me and put me at that note go back again yep now I went to that other station go back again it's back to universal city now and now it's going to go from node to node all the way back to where I started in definite go back because I'm representing it all as qg let's internally thank you [Applause]
