---
title: WWDC2004 Session 708
framework: wwdc
role: article
path: wwdc/wwdc2004-708
---

# WWDC2004 Session 708

## Transcript

Kind: captions Language: en good morning everybody and welcome to session 708 introduction of QuickTime streaming my name is Steven Tona I work on the QuickTime product marketing team and this session is going to give you an overview of how a streaming server works and basically how to get your content up on the streaming server in order to deploy it you know across the internet and actually other mediums including wireless cell phones and in addition it's going to Victor's going to go through a little bit about how to set up a live broadcast so with that we have Victor Alexander who works on the Mac alistun server software engineering team as a seed engineer and he's also setup to actually in his former life he did a technical training class on quicktime streaming so he knows just about everything there is about you know how to get up and running with QuickTime streaming service all without further ado I'll let him take over thank you thank you my encoder design Thanks so introduction QuickTime straining server this is a introductory session so if you've done streaming before in any monitor large-capacity I would encourage you to check out one of our advanced streaming sessions later on today and tomorrow or check out another session timely in this time block so this definitely is just an intro to get you up and running with some real world steps as Steven said I'm Victor Alexander software seed engineer I finished focus on enterprise software so Mac OS 10 server which QuickTime streaming server is part of that package definitely love QuickTime students we've been doing it for several several years so let's get an introduction out of the way we're going to talk about the topic the real-time streaming I'm going to give you just a basic intro of what it is so we have a basis to have a discussion do some setup and configuration information shorten your learning curve hopefully so when you go home to try this you'll be you'll be ready to go my focus will be on QuickTime streaming server QuickTime broadcaster and QuickTime publisher so those are the three tools there are other streaming tools they're available commercial third-party applications in a lot of cases but I'll focus on those so those are freely available and you can check them out and work with and it's a good basis to start with I'll cover some new features added in QuickTime streaming server that's included with Tiger server and I'll try to give you some real-world steps since best I can so you can go back to your organization and I get this running quickly and easily so the good old what you will learn slide will do an introduction QT SS + QT be QuickTime broadcaster I'll show you how to do it a quick session request to see if your servers running properly all important we'll talk about preparing media from streaming server working with playlist TT SS publisher will do a quick live streaming demo if all goes well and we'll do some Q&A at the end if there's any questions you have so first off what is real-time streaming we need a basis of discussion here so real-time streaming is basically moving media from a server to a client over a network for playback in real time and that's that's fundamentally different from opening up your web browser say for example going to the QuickTime movie trailers website and watching a movie trailer that experience is not quite as time-sensitive you some people call that experience stream but in true underlying terms it's really not the files are just progressively downloading to your machine and you'll start playing them back when enough of that content is downloaded what we're talking about here today is actually a streaming server with protocols to support the riff that real-time exchange it's a very very time-sensitive process the main fundamental protocols are RTP which is real-time transport protocol and RTSP real-time streaming protocol these are really brother and sister protocols that work together to get a stream from the server to the client RTP is really the meat and potatoes on the stream it carries the actual stream content it's the video and audio that you watch on screen RTS key is the control so it doesn't stop you know the pause that close the window to destruct the stream it's really the control language so they work in concert with each other to negotiate with the client server get that content down to so really RTP does a lot of the heavy lifting in terms of pushing actual media across the network another thing to note about real-time streaming is that no files are written to the clients computer and for people who have a considerable copyright and where their files get distributed that's a big deal they want to make sure they maintain control their content they want to broadcast a concert they want to broadcast a a CEO address they want to broadcast their earnings they want to make sure their information stays on their servers and all the client viewers all the people who are watching it all they're left with is a good memory and not left with a copy of the actual presentation see the presentation so that's useful to know there's three main methods of presentation in using the QuickTime streaming server the first one is video on-demand if you've ever missed a macro keynote by Steve Jobs and then gone to our Apple website a few days later to watch it you're watching a video on demand you go to the website you demand it it plays it back the the second kind is a simulated live which is more like a radio station the third is a live stream and in fact that's the thing that most people it tends to attract them to QuickTime streaming server and it's related tools because the live is so compelling it's timely information that your viewers want to watch so here's a really really basic architecture right you got your your media really sitting on the server and you're sending it over our network typically a tcp/ip network and you're saying it's your client all right really easy just keep that model in mind whenever you're you're working with the streaming server it's just these these pieces are in play in reality it's really these these players right you've got some quick sound content you've got of course everyone has a rack of exurbs right you just string this stuff off and you've got a client on the on the left hand side so some basics about the streaming server which I think will be helpful just like a lot of what Apple does the QuickTime streaming servers based on open standards there are ratified RFC standards behind the protocols of the string server uses the goal is for us to work well with other players in the same space right so RTP RTSP our open standards anyone can write players or servers or our pieces that we're working system a single server literally a QuickTime stinks or literally can handle thousands of connections right in the last couple versions of string server we've added support for mpeg-4 streaming which is which is excellent you have also a feature in recent versions of QuickTime which is instant on if you've ever watched a stream you've probably gone to watch and you have to wait a few seconds for the string to to start playing while the stream buffers with if you have a broadband connection that that time duration will be very very short if not nil so the movie will the stream lon start to playback almost immediately there's remote based web a web-based administration built-in as well as a tool provider with Mac os10 streaming server which is very useful so if you're on a platform other than other than the Macintosh you just open up a browser and manage your streaming server and the design key TSS is really similar to Apache so if you have any experience with Apache the the design mechanisms or implements are very similar so there is an open-source version of this quicktime streaming server called the darwin streaming server really all that means is you get all the same kind of capabilities in the core server except the darwin streaming server is distributed for platforms other than Mac os10 server so there's a short list there at Mac os10 the in downloaded version of dart streaming server for Mac OS 10 linux solaris windows of course the source code is available if you're you're very gung-ho and you have other UNIX operating system you want to compile the source code that'll work just just fine and press a list of places the server can run so server admin this is a new tool as of Mac OS 10 server version 10.3 so last year's presentation it was brand new it continues on the still continues on in the tiger server version it's basically a general configuration tool for a number of services in Mac OS and server but of course now they have a QT SS module as of the last version of server there's some QT SS configuration monitoring tools built into that tools makes it valuable for us you can do IP binding you happen to know what that means you can check out the throughput graphs and how many connected users you have of course you can do remote administration with this tool as well you can copy the server admin to another machine maybe your admin machine run that and monitor your server from there so demo okay so let me show you switch the computer one so I have Mac OS 10 server installed versions Tiger the same version you have picked up of course from our registration tab and all I'm going to do is I'm going to give you a quick tour of server admin so I'm going to launch server admin and take you into the QuickTime screen so related pieces so in the upper left we have our machine that we're interacting with I'm actually admitting the machine I'm sitting in front of it doesn't have to be that way can run server admin as I said remotely I'll turn down the left hand disclosure button and we'll see that QuickTime streaming is available option so this is present in tiger server and Mac OS 10 server version ten point three we have a general status here of course you can check out your logs I should know here that the server is currently stopped so we'll turn on in a moment you can check out your logs see if there's any errors or issues you also expect the access logs to use been watching movies check your number of connections these are current number of connections with people watching streams that list can get very long depending on how popular your content is you got some pretty graphs of how many people are connecting and settings so in order to start the server before I go through the upper tabs in order to start the server it's a very complex process I'll show you how to do it I click on the start button and I wait 2 or 3 seconds and the server is enabled that's pretty much it all the defaults are a good starting point especially for testing you might want to go and configure things as time goes by before you do a rollout but turn the server on is that easy quickly just to take you through a brief tour of the settings options that are available you can control where the directory on the server where your movies you want to serve are located using this disconnect this dialog this sex yield you can also control how many connections you want to do at simultaneously your maximum throughput obviously so you should set those to relative to what your can actually be for your server if you're serving the Internet you'd probably set it appropriate to your external connection in the Internet just serving to your enterprise or to your school or organization 100 megabits if that's what you have going outside the server is probably suitable you can also set some passwords and access for doing livestream and mp3 broadcasts IP bindings I won't get into this but it's very useful if you have multiple Ethernet cards you want to assign the key TSS service to one or the other or both relays a little more advanced topic but you now have a UI for configuring relays which is very very helpful and of course you can control with the log ins so that's pretty much a rundown of what's in server admin for quick time strings or it's pretty straightforward as you can tell it's just one click to turn the service on so now how do I know this is running right I know it says it's running how do I check so the easy way to do it if we switch to computer - I've got a client here and I will launch by QuickTime Player so normally the streaming experience is for most end-users once you have a polished system is the launch web browser that goes some event page where there's either a live stream happening or there's a pre-recorded one and video-on-demand and they'll click on a link and they'll go to a they'll be sent to QuickTime Player in most cases now watch the stream but for us since we're the IT admins for the streaming server we just need a quick test to make sure the stringing server is working so it's a very handy little menu option which is open URL and new player and that's just a quick and dirty way to that's a quick and dirty way to make the oh can we switch to computer - there we go thank you let me let me step back in QuickTime Player there's a menu option called open URL in new player which is a quick and dirty way to let you just quickly check and see if a stream is functioning normally most users won't access streams this way but for us it's perfect you just want to do a quick test to make sure the stream server is working there are sample files included with the server we've got one noted right here their various bit rates this one is a perfectly suitable one to test here and we can go and see in fact success our streaming server is working this contents coming from the server we just turned on how do I know that the information box reports in the source that coming from a location called RTSP remember me saying that a clear pattern of a few minutes ago right real-time streaming protocol so this file is not playing back on the local machine it's streaming over the network that's perfect our streaming server is running can we switch back to slides so we turn server on we did test stream everything's working great time for coffee breaks right the next thing is you need to do is need to get the content to deliver now this session focuses on IT administrators who are like working with the server from a server deployment standpoint of course you have a crack team of people who are developing content for you there's a whole other topic area where people can shoot edit use tools like Final Cut Pro and compression tools to compress that video down to a suitable size and format that's beyond the scope of this session but essentially what I want to point out is that you'll need to find some content somewhere that's compelling for you to post on your stringing server the one key thing to remember is that you need to perform an additional step just beyond taking that good quality video you may have shot of some event and reducing it down through encoding you also needed to parse perform a step called hinting it's a really simple step it just simply adds a couple of additional tracks to your movies which gives the streaming server a tip on how to deliver the content via a stream that's it very very simple so you simply export the movie using QuickTime Pro you can add these hint tracks be a couple of clicks and that's all you need to do if you don't want to use QuickTime Pro there's other tools out there discreet has cleaner which has several several options for encoding but they also offer options to add in tracks there's numerous other tools that do it as well usually want to look for a streaming tab is a good place to head for when you're compressing your contact the important thing to note about this step although simple it should be the very last thing you do you can't make any other changes to that media at all it just you need to make the last change and then hit the file and then place it on the streaming server for consumption simple alright let me do a quick demo we'll just take you through that I just need to push some content on to my machine excellent so we I had my crack team of videographers go and film some content for me we're going to bring it over to we're going to bring it over in just a moment excuse me to bring it over from my power book now this content was just filmed with a DD camera you know in this case I use iMovie to use Final Cut Pro there's some basic editing applied to basic editing applied to the video content it was compressed even cleaner I just pick one of the presets that's available in that in that tool we'll just bring that content over I'll show you an hit media very very simple there we go so for the discs you picked up from your from the registration desk clicked on Pro is enabled by default normally under you know non pre-release situations non non beta issue QuickTime Pro 2995 us so that will get you the export options which among other things will let you hint your content so just grab them so we have our sample here right pretty mundane stuff I don't know that guy is but so we've got mp4 content now and what I want to do is just a file and export and I'm going to do movie to impact for even though it's already an mpeg-4 I'm going to go movie to mpeg-4 and what I'm going to do is since this contents already been processed edited and compressed for me someone else did all that hard work I'm simply going to say for the audio and video tracks just pass them through don't do any changes to them don't try and code them just pass them through and typically if you're you're admitting a string server you typically just want to do that you want to let them pass them through or if you can get your people who are creating your content to add the hint track themselves you don't even have to do this step the console will be ready but I don't want to do pass-through for audio and video and I want to enable streaming and those two or three options just leave them as is unless you have a very very high volume server in terms of number of people connecting you might want to select offline server but these defaults are absolutely correct so turn on enable streaming click OK I'm gonna save it to my desktop I want to call it hint at the end because it's hinted and click Save hinting is not a computational intensive process it's simply just looking at the median adding those extra simple tracks which are just a recipe on how to break up the media so as you can see we've got we've got a hinted movie here if I bring up my properties I can't bring up my properties I want to go I want to go I want to go to yes I may not be able to show you unfortunately but I'll try and just put this in the stream folder file and just do this so I'll try and stream this file so to see if it works so we'll go by very quick time streaming as you saw in the interface the movies are located in the library QuickTime streaming movies folder so I'm going to drop this movie in there and I'm just going to go to this local machine I'm just going to play this back from the local machine so RTSP clone flash - TSS just using a little quick bit of rendezvous here to access that my local machine so there's my stream right playing back maybe not the so the file plays back properly I added the hinting that makes it viable for the streaming server to play back works as expected no problems at all okay so printing is a simple simple process we switch back to slides so let's talk briefly about viewing locations typically streaming when you think about watching streams just who thinks about watching on a computer screen how many people think that's like the default way to watch it there any other locations you can imagine watching streams on television anywhere else through cell phones yes the generic term you might hear for clients viewing content especially with streaming you might hear the term terminal just like a viewing terminal and it's not only computers right of course it's handsets if someone said you know 3G phones so we have a brief demo Steve is going to come up and if our our GSM network is good enough quality in this room we can get a fairly decent stream but we're going to use a a 2.5 g phone using GPRS to stream a sample so previous to this session I simply did an extra export of the content you just viewed but I did it as a 3G 3gp file if you've been to previous sessions like stated a unique QuickTime you saw that process happen it's literally two clicks and you can export the file we have a content on a public server that we can stream over this cellular network so Steven you want to give us a demo you want to switch to demo 2 so see little demo and I'll just briefly walk you through what's happening we have a video camera hooked up to the second computer here it's just showing us the screen of the cell phone we're using a player that can perform streaming capabilities on the cell phone its requesting the content from a streaming server that's back at Apple it's just literally sitting on a wired network just like we have under the desk here except the cell phone has data capable services called GPRS they layer on top of the voice services that you're normally used to by making phone calls and the content will play back over that GPRS data system and we can watch the content on a cell phone so you saw the clip playback on a computer you see the big flip playback on a cell phone amazing this particular clip is using a technology just simply GPRS that's a fairly vanilla at this point of vanilla speeds for data services we're using 18 T Network to do this demo they have GPR services they've had them for quite a while with their gsm phones they have a next-generation series of phone called edge edge is an enhanced version of the GPRS system you're seeing being used here that essentially will give you better quality video right higher data rates better quality video will playback this day rate is 35 kilobits per second actually sorry 30 kilobits per second I didn't want to push it through her experience on a concrete building but we had to I we had to do some juggling this morning to make sure to play back so it's 30 kill dips this is not the new codec this is simply using a standard 3gp file that you could export using a standard version of QuickTime QuickTime Pro that you get on necklace 10 version 10.3 I'm using h.263 codec and something called a morning robe and for the audio pretty vanilla it's kind of the default presets no real magic I just needed to pick a speed for the content it was slow enough to to support the GPRS system so why does this matter I think it was important to show this in the intro sessions I want you to think about content just beyond playback on your computer right we've got Wireless we got wired clients but using the the data services provided by cellular carriers we can actually play this content back and you couldn't hear the audio not but what that was is a simple dental that I just cooked up a few days ago with content there will be something that a sales force for a company would find timely so if you had a sales force of 50 or 100 or 200 people or remote schools or you know people in the service industry they're doing remote service and repair they can literally get up-to-date information off their cell phone without having to be near hotspot without having to go plug in anywhere they can get updates you know some the information in that video is you know please note that there's a new firmware for the hardware we just shipped know that there's a announcement at 2 o'clock please you know check that information on the corporate website timely information that they need to pick up every day so I produced this video in about 20 or 30 minutes and it's literally something an organization could pump out on a daily or weekly timeframe and distribute that to a very wide range of people geographically widespread all you need is cellphone with with with the signal essentially so can we switch back to slides so we talked about the three ways to to playback content you've already seen the video on demand when I think the file just a few minutes ago we went and played it back on the computer that's a video on demand stream if that's the most common way to stream content people go to the web page they click on it they ask for it they demand the video and it plays back for them at place place start to finish and it is it's done that's it playlists which is the second type of presentation is more like radio stations where you simply jump into the stream and just like turning on your radio in your car you turn on the stream and wherever that content is in its set playlist it will just start playing so that's vastly different than the video on-demand experience you have two types of playlists I should note there's movie QuickTime / mpeg-4 playlists and mp3 I won't talk about the mp3 so that's using a format called ice caste you may have heard of it but I'll leave you to explore that after the session is done or we really want to work with is the playlist for quicktime / mpeg-4 in the playlist is configured via via QT SS publisher or web-based administrator I think what I might do is I might leave that demo for John or at the end of the session so I'm going to skip over this demo just was a time where study a little time crunched the playlist basically you set the order of media you can say I want these ten items to play in this order or you can set a random and say I want this you know ten audio files is to play randomly and you can set it to loop or play start to finish and literally that content will just go off on the strings here and just play it in the order you dean and if people jump into the stream those jump in wherever the content is played to at that point so GTFS publisher this is a tool that ships with Mac OS 10 server it was brand-new as a Mac OS 10 server version 10.3 it is included with tiger server of course but this version sports a highly revamped UI much improved very very nice very elegant it gives you remote media file management so instead of doing the process that you just saw me do on the server on the server way open to me if I I hinted it and I copied it to the machine and if I'm not on the server if I want to add my machine I have to find a way to like FTP or you know set up an AFP server on that quick time students or a copy the file over quick time the publisher tool circumvents that you can launch that on the admin machine take your files drop them on the server and it's much more seamless integration with the server as automatic in seeing a webpage preparation you can string playlist control playlist management as I mentioned you can edit the annotations which is some of the copyright and details that go along with a movie like the title you know copyright who authored it things like that and of course includes some UNIX tools so I'd like to introduce John Anderson who is an engineer from Makela 10:13 who worked on publisher and I like to have them deuced a quick demo of publisher there's John hopefully this is on so I'm here to demo QuickTime streaming server publisher as Victor said and a little bit more into what's going to be in the version to a publisher one of the major things that we're adding as well is Apple script support so you can be able to control this via Apple script if you already have workflows and theoretically from from automatic as well so that'll be great so what I've done is launched publisher and of course since I've already logged in all of my information is filled in for me from my keychain so I'm just going to go ahead and click connect now of course I'm connecting to a local machine here but I can connect from any machine that's accessible from the network and what I'm going to do is I'm going to take Victor's piece of content here now this is not hinted at this point so I'm just going to drag it up to the library and that will upload the movie put it in the proper streaming folder and it will hint the movie as well automatically now if you look at here I have some settings that are new to QuickTime streaming server publisher - and this is something that allows you to choose if you're binding the streaming server to multiple IP addresses in the server admin tool then you can actually choose which IP address that you want this to serve from same thing for web server so if you have multiple virtual host sites you can choose which site you want your web pages to go onto so what I'm going to do here is I'm going to click on this movie and I'm going to say I want to publish this movie to the QuickTime streaming server I'll hit apply so this movie is now available for streaming and it will automatically grab the poster image which the first frame is black so that's why it's stuck - but I could also choose a custom image if I wanted to making playlists is also very easy with a publisher all you have to do is click the little plus sign down here and take your files and drag them right to the playlist so this is this interface is very similar to iTunes then you can choose you know whether you want this to be looped or not whether you have to be weighted random and weighted random means that if you have more than one file you can give files different weight and it will play them more often or less often according to that way the other thing that we can do here is if I go back to the library and click on the file you can see I can edit the annotations right from here and the kind of neat thing is that as Victor said you need to do the hinting last after you make any changes so if you change these annotations from here it will actually rehan the movie when it's done so it saves you the trouble of downloading the movie making the changes and uploading them again and if you scroll down here you can see some settings for how you want to embed the movie in the page and for example you can have a click on that you can have the user click on the movie and have it open in the QuickTime Player you can have it embedded in the page itself and depending on those settings it will actually give you HTML so you can copy and paste or drag and drop into BBEdit or Dreamweaver or whatever your favorite HTML editor is and the other thing that we can do is we can make web pages so I can create a page just like a creative playlist and drag files to it and we'll actually use an XSLT web template on the server to take that HTML that we saw in the field earlier and insert it into a page so that you can automatically create web pages of content without having to ever enter an HTML editor at all so that's publisher excellent publishers amazing tool definitely is extremely helpful thank you John so onto the third type of method for presentation on the streaming server like I said the start of this session it's really at what often drives people to inquire about streaming server in the first place live streams the only way to get an event or a happening or a press conference or you know earnings announcement delivered to your intended viewers as it happens is using live streaming you can't do this using the mechanism I mentioned previously which is progressive download watching those movie trailers that's pre stored contents it's been already authored and mastered in place there it's content that happened and was filmed in the past this is absolutely live there is a few seconds delay of course to film this the footage transcoded and bring it to the server but it's effectively live for your users it requires a use of live encoding software for us that means QuickTime broadcaster there's other choices out there I would encourage you to check out Apple comm toward slash QuickTime go and check out the tools area there are there is a streaming and live encoding area where you can check out some excellent third price tools let you do things like multiple cameras add text you know wipes effects broadcaster is a free from Apple just baseline good live encoder get you going one camera get you started with low cost you can connect any easy equipment you want and of course your computer has to support those connectors using cards or whatnot the most common way we tend to see even with more professional setups is what I've got here on stage which is a DV camera with a fire are jacked on it and that's connected to a firewall port on on the on the live encoder machine and that's how the source gets gets done I've seen large-scale strainings where they have five $10,000 firing out video camera with fire on and they've still got the same type of setup as I have it just got better lenses and optics and equipment and much better camera operator - so same kind of system exists on large-scale events you want to typically dedicate an individual machine to do the live encoding so you're going to have a live encoder box this shuttling data to a server then that's shuttling data to your clients right it's a little bit different than the original diagram for the live stream mpeg-4 audio and video streaming required g4 or greater because of the computational expense of those codecs in order to do that that type of encoding on the fly' in real time you need a bit of horsepower so pickup up power mac g5 if you want to do any kind of any kind of mpeg-4 based AC based streams the last thing I should note is Apple uses this stuff for our live events now we do at a larger scale of course because we have 50,000 100,000 people show up for for some mackerel keynotes but we use this stuff if you you're not already where we do quarterly announcements for financials and that system uses many of the tools that I'm showing you today I certainly QuickTime streaming server so the setup is is quite simple we've got a video camera in this case I'm going to say that we're going to do a large-scale event because I have a separate machine as you can see that power book up top which is my live encoder box it's a dedicated g4 or greater box it's doing taking the video in its coding it it's hinting it and it's sending it to in this case the g5x serve so that live encoders can be quite busy right very very busy and the xix er g5 of course is going to be sending the content to the client so keep that in mind let's do a demo and I'll kind of talk through some of the different areas to do with a live set up home use Maya nicely set up camera here it's going to turn my camera on my front row guys will be my unvoluntary talent so in the applications folder we have Quicktime broadcaster again it's included with the stringing server excuse me it's conclude with Mac os10 server we launched it very simple tool one window you've got your preview I will plug in my camera and we'll have a preview there are a couple controls down below and you have to relaunch it's out there we go so you just have a preview up top of a broadcast button recorded disc some settings and that's it so if you wanted to just plug and go you can easily just use this interface of course showing details will expand to give you more options you can see there's an audio video and network tab right in order to perform broadcast there is a little bit of pre-work we need to do before the session started I actually went into server admin which I showed you at the start and I went into an area where you can configure passwords and because I want to control access to who can broadcast content to my streaming server I want any Joe Schmo and my company to be able to do that I set a password that will control the inputs I just don't want any live encoder to be able to send content through my stream sir so I had a control points all into that in just a moment the defaults here you have some presets available they are based on the connection speed that your users are going to be on so if you're on modems I select modem presets will use a land setting since we're in a wired LAN here you can select the source where the audio is coming from I think I'm going to pick the DD audio first two channels I believe we set the gain for the appropriate options there's some codec options here that are available these are very much the same that you see when you're exporting any QuickTime movie there is pac session information but generally you don't have to make any changes that especially if you're just getting started with streaming these defaults are perfectly suitable you also note that you can enable and disable the video and/or audio so you can have an audio only streams or videos only stream or both right of course if you're doing an earnings announcement for your company likely going to be audio only so just disable the videos tab all your going to broadcast is audio so switching to video tab I'm going to select I'm going to select land low motion that's kind of suitable for this situation is one of the presets it notes the source so I have a fire our camera the Sony VCR PC 100 just pretty simple camera pulls that information from from the firewire frameworks we can set the size of the video three can explai by 240 is a good starting point especially because I'm going to be streaming on my wired LAN here if you're streaming to a modem you want to set that size down to something like 176 by 144 or something in that in that range we can pick the codec mpeg-4 is a good choice you can set the quality you want I like medium set the frames per second I'll leave that as default since you have a fairly generous network here when we get to the network tab so if you're just starting with streaming you literally could just pick one of the presets for audio on the presets for video skip right to the network tab is really the only place you have to do any real work to get your strangers at least into testing mode you can save preset here there are none creative because of course each network is different and all we want to do is determine how we want to transmit how we want to announce the details of this broadcast I should point this out QuickTime broadcaster does something very very useful call it use the announce protocol and what that means is when you fire up a brand new stream a small text file is created it's just a description of the stream that's called an SDP file it's one of those standards that we talked about - the open standard along with RTP RTS be that file using the announce protocol will automatically be sent to the streaming server so in this case I'm using the same machine to do encoding and the streaming but if it was a separate set up like I showed on the diagram just a moment ago quits on broadcaster will automatically push that FTP file to the server extremely helpful I can't tell you because again you using the slightly older format which is a manual manual unicast you end up having copy files to the streaming server using FTP or AFP you have to use some sort of file protocol or sneakernet to like run that FTP file over to the streaming server and drop in the right folder announced will automatically push that required file there let me use I'm use the announced feature here I've got the host name just using that I'm going to call it you know intro to queue TSS Oh actually I'll answer that question at the at the Q&A has that sound just we can get it on the on the mics now username and password remember I did some pre-work I said I went into the server admin I went to the passwords area and I set the username and password I'm going to answer that here so that not just any Joe Schmo and can use my string server as a live feed I just I just crashed out so we'll just restart that step when you just go back and get us back to where we were we're going to use music video so we had our camera trough sorry about that I'm just going to fax where we were my apologies when camera turns off after a few minutes I want music excuse me I want music I want my motion when you use custom unique ask you just a slow call call this intro to cube TFS occult my username is admin my password is super secret I can set a buffer delay you can set that to any value if you're streaming to your corporate network which is all wired Ethernet you can set that value a little lower there is a built-in default of two to three seconds even though if you set this to zero it will still be 250 seconds so typically 4 to 5 seconds of a little bit of buffer let your clients queue up the content on the other other end if you have if you're broadcasting something like a concert or a remote event and you have your live encoder at that remote event because of course the camera has to be there as well you can use a brush you can use broadcast over tcp/ip that just means it will do a better job of guaranteeing that the live encoder will send the content in its complete form to the sir will not will not choose that here it's not we have a wire LAN and key TSS of course I'm the author all right I'll just save that as a preset just in case mm-hmm call it Q TSS click okay and if all goes well I should be able to just take the broadcast button and you notice that in the preview window it said starting broadcast and now it's broadcasting and it gives you some status underneath that preview area it's a little bit small just hide these details and literally your live encoder all it has to have is just that small window up that's enough to perform the live encoding duties now I've got a Power Mac g5 dual two gigahertz here so it's got lots of horsepower so I'm running the strings around the same box so now watch that content like that normally your viewers would go to a web page that you've created with a link to the screen but if we switch over to computer - I'll hide our demo I'll bring up the QuickTime Player now I'll go again open URL and new player remember this is our kind of IT admin quick way to see if our stream is working if you remember I named the stream I named the string into intro to cue TSS so to pick up a live stream it's quite simple when you use the same address of my string server now notice what's missing in that URL an extension so you don't need to enter an extension for a request for a live stream it's just understood that dot SDP that real small file that we that's created by broadcaster and automatically pushed to the server it's understood that that is what you're requesting when you type in just the filename phone's extension so if I hit OK we now have a live stream playing back from our client off our server using this everyone automatically starts dealing stuff around the camera there's roughly a five to eight second delay probably but you can see that we're watching a live stream now just like broadcast radio they have a six second delay like I said at the start of the presentation live broadcasts there's a bit of a delay right it depends on what's happened there might be under traffic and I think I've set the buffer at five seconds so you get eight seconds of delay so the optimal situation is to run a live encoder on a separate machine because this box is running a couple services and strings are and live encoding so it's doing a bit of hard work so keep in mind your viewers at the other end won't won't see this delay they won't know because they're not acts you know people don't sit in the radio broadcast booth and listen to the answer right they're out in their cars or driving they don't know there's six seconds of delay effectively it will be live to them right so that's a live lots of live stream and literally within five ten minutes you can set one up turn your shooting server on open up broadcaster plug-in any consumer camera certainly with fire wire on it you ready to go okay can we switch back to slides so for more information there's an excellent PDF guide you can pick up it's the down stream server administrator guide with QuickTime streaming server you get the QuickTime streaming server administrator guide excellent PDF which documents several features how to set up the server in more detail you also go to apple.com forward slash quick times for slash products for /q TSS there's all the list information and links to downloads for Darwin updates for the Qt SS of course if you're on more on the development side because of course the source code for the streaming service available if you do more development we will gratefully accept source code suggestions and changes you can submit back to Apple after you download the source code you can check out the two developer links there at the bottom of the screen for more information on that reference library I'll loose up forearm owner to the the training group used to offer a QuickTime streaming server course it was the one that I wrote that Steven mentioned at the start of the session it no longer is in current circulation if you contact the fine folks at the technical training group at trained calm or training.com and request it it would be a nice way to see a revival of that course it's a three-day classroom taught course with examples and exercises you need to work through and there's theory about bandwidth calculations and saturation and live event planning you know you can receive a manual that's 200 250 to 300 pages of content you can take with you an excellent class but like I said it's currently not in circulation so I encourage you to contact the the technical training folks at a trained dot-com and ask for it so I'd love to see it come back especially in light of the the cellphone stream we demonstrated earlier fabulous book by Steven gully called quick time for the web excellent book which is a general reference on quick time including streaming we've got a stream media Bible and the engineering task force which is the standards that which describe how RTP RTSP are supposed to function I'll jump I'll jump back this in a moment there's a couple of knowledgebase articles which are extremely helpful if you forget your password for your strings for how to reset it there's a description of log access format the streaming server logs over 40 parameters for every per time stream is requested you know how many bits they watched how many bits they lost what they watched when they watched it all those details and several more parameters are captured and the binding on how to bind the key TSS server to a particularly Ethernet interface one or the other or both is described in the last article so through the contact game royalties Stephen tone introduced at the start of the session of course we're going to do a QA in a few moments can ask questions about the information I just presented
