Configure player

Close

WWDC Index does not host video files

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

URL pattern

preview

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

$id
ID of session: wwdc2006-513
$eventId
ID of event: wwdc2006
$eventContentId
ID of session without event part: 513
$eventShortId
Shortened ID of event: wwdc06
$year
Year of session: 2006
$extension
Extension of original filename: mov
$filenameAlmostEvery
Filename from "(Almost) Every..." gist: ...

WWDC06 • Session 513

Integrating iTunes U into Higher Education

Information Technologies • 32:26

Dive deep into the entire iTunes U workflow, from integration with authentication and authorization to media workflows. Get an overview of the iTunes U architecture and learn how iTunes U can be integrated into other web services, like C/LMSs and digital asset management systems. Then learn how iTunes U media service workflows are created and how to support publishing for iTunes U within your applications. This session is geared towards Higher Education IT and web service developers and provides a comprehensive overview for iTunes U development support and on-campus management.

Speakers: Eric Bailey, Jason Ediger

Unlisted on Apple Developer site

Transcript

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

Hi. Excited to be here today to talk to you about iTunes U. This is a new service from Apple that we just began making available this summer. So I've divided this session into three parts. First, I'm going to talk about an overview of iTunes U, give you a sense of what it is, what it can do, and how and why you might want to use it.

And then we'll move on and talk about integrating your authentication, authorization, and your online learning environment into iTunes U, what steps are required on your part as an institution. And then last, we'll talk about content. So just curious, how many people here are already a part of iTunes U and are working on their implementation? Great. That's great. Thanks.

So let's get into talking about exactly what is iTunes U for those of you who are here to learn about it. iTunes U really got its start from the iTunes Music Store. This graphic I put up here is just to display the fact that the iTunes Music Store, iPod, and iTunes were really designed to work together as a unit. One without the other doesn't make the entire system as complete. The iPod, a great device for portability. The iTunes, the great desktop software.

And the iTunes Music Store is the place to get content was the goal. And as we started hearing back from the education community about what was needed, we realized we needed a way to get content into iPod and iTunes in higher education. So we created iTunes U. Now iTunes U, as I said, we just made available this summer. has been in development for a little over a year, and we've been piloting this with some institutions that had a great interest in iPod and iTunes.

So we feel today what we have to offer is the best way to distribute content for iPod and iTunes in Higher Education. I mentioned this is a service that we're hosting. We're making it available to Higher Education institutions in the U.S. and Canada, not for profit at this time.

It provides a really simple and powerful way to manage content and it's not just simply about distribution, it does a lot of collaboration as well. So if you're thinking about podcasts and already doing podcasting, you can use iTunes U not only to distribute content but allow your students and instructors to collaborate, to share the content that they're authoring.

We'll talk about how to control access to iTunes U because iTunes U is also about allowing you to control who's authorized to use different sections of your site and really be able to put very fine-grained or broad control on what type of content you want it to deliver to your audience.

I mentioned it's a service. We're making this a service right now. We feel comfortable in doing this because we really want to be able to deliver features to you quickly and turn those around and give you new features as fast as we can deliver them. We have over 2.9 million songs in the iTunes Music Store. We're delivering a million videos per week and 3 million songs per day. And we have the infrastructure to do this and we feel very confident in delivering that to you.

This is an example of an iTunes U site. We'll get into a demo shortly. I just want to show you a few screenshots. Duke University was one of the first to use iTunes U. I'm showing this page to also show you that you can protect access to content or make content public. Duke University has chosen to make some of the content they're distributing open for free access. So the content on this site and all the sites within iTunes U, there's no DRM on it.

Anybody can access and download these files, and they play back on an iPod and iTunes. They also play back on other players. So with this site, Duke University has chosen to put up content that they feel is not just accessible to their students and faculty, but to the entire community and is important for them to be able to access. So you can get to this site through their web browser. UC Berkeley is doing the same thing. This is their welcome page and they have content up here in several different categories.

They have computer science content, biological sciences, engineering. As you click on individual icons on this page, you drill down into other levels where you'll see course pages. Here's Stanford's welcome page. They're also distributing content. To the public, all three of these cases are. And as we get down onto an individual page, you see this is what we call a course page, which should look familiar if you've used the iTunes Music Store. This is very similar to an album page within the Music Store. And we took a few other concepts from the Music Store that I want to point out to make what we call a course page within iTunes U.

We've taken tabs, which are an element that iTunes Music Store uses for essentials to organize content into different areas. So you don't leave the page, but organize content into different sections. So they have this faculty lectures section that's been broken down into several different categories. Audio, best of philosophy talk, and titled opinions, video, micro documentaries, and travel and study.

They have a links box that they control the content of. They can link to other content that's related to this audio/video material that's on their website or on other websites that they want to point you to. And then there's a way to download all the tracks in each tab or subscribe to the content in this tab as a podcast so that you can be, as a user, updated with all the latest content when they choose to add content to these categories, these tabs.

So those are a few areas I want to point out. We're going to do a demo, and I'm going to ask Jason Ediger, who's the product manager for iTunes U, to come up here and help me with that. And we'll take you through more of a real example that we've created called the Apple Digital Campus. Great. Thank you, Eric.

So Eric showed you some of the screenshots of some of the iTunes U sites that are out there, primarily some public sites. And what I want to do is kind of show you the infrastructure, how they built out those sites, and how they were able to manage some of the courses. So we're going to log in from a web-based environment.

And I'm going to log in actually as a person with two different credentials, one for a site administrator, as well as somebody who has course management roles or an instructor role. So when we go in and we're on the front page, you'll notice that this front page looks different than UC Berkeley. It looks different than Stanford.

This front page is yours that you can customize. You'll notice that you have edit page, edit appearance tools here on the right-hand side. You can put your top-level graphic, your messaging, your background colors, your links. So that way you can match the look and feel of your university.

So as you pass a user into iTunes U, it very much feels as if you're providing a service that's part of your university. You can link out to things outside of iTunes U. So if you want to link back to your web-based services, online resources, course management systems, you can link back to the web using link boxes. In this case, our service.

So if you want to link back to your school calendar, it's the Apple Store schedule at the Palo Alto store. And you're able to link over into the music store if you wanted to do that, or anywhere else that is URL addressable. Jumping down into a course, this is set up as English 350. Going down inside of that, you're seeing that we're able to divide a course into sections. This is love and despair and poetry.

So there's love, there's despair. If you heard my joke, there's more despair than love. And so you're able to go in and actually manage this content. You're able to get individual songs. You're able to get tracks. And one of the nice things that we've been able to do is, be able to do collaboration. And so you notice there's a Dropbox tab in here as well.

So I, as a course manager, have an edit tool up here to edit the page. And you'll notice that the UI changes just very slightly. So when I click edit page, I get these editing tools in line inside of the page. So for Dropbox, I'm able to go in and say that the student access for this tab is a Dropbox. As students create audio and video content for this course, they can drop it back into that tab and hand it back to a professor.

You can also set it for it to be a shared tab. It can be a no access tab or a way of just having straight download. So I, as a course manager, might have a no access tab so I can build out content inside of the environment before I make it available to the students. I can also manage content to upload it into this environment.

So if I click on upload files, I'll get a tabbed environment inside of a web browser that allows me to go to the tab that I'm going to associate content with and then add the track in line and then I'll upload it and refresh it inside of iTunes. Thank you.

I can also edit the links box. Hang on, it would help if I saved my changes. Let's edit the page again. I can add a links box up here. So if I wanted to add a link or a URL, again, out to those other web-based resources, you can do that. It's also important to note that everything inside of iTunes U has its own unique URL.

So if I wanted students to come and grab the Raven, I can grab that URL, paste it inside of my course management system, and then a student can click on it, link into iTunes, and with a single click, sync it to their iPod so they can listen to it.

It's important to note that iTunes U is not a course management system. This is a content distribution system. We look at it being a complementary service to a service like Blackboard or WebCT or Sakai or Moodle, where this course management or the learning management system provides the context for the content or where the communication and the collaboration would occur. But when you want to give students access to audio and video content, it's one click away inside of a browser. And then they can easily sync it to their iPods.

Inside of these as well, you're able to go in, and as Eric pointed out, you can add subscribe buttons, standard RSS 2 feeds coming out of the iTunes U environment. We support everything that the iTunes Music Store itself supports. You'll notice here that we have video icons next to these assets here, so these are MPEG-4 or H.264 videos.

When a course instructor adds new content to this particular tab, it'll automatically be podcast to whoever has hit the subscribe button. And again, each one of these elements up here is URL addressable as well, So if you want to drive somebody to an individual tab versus an asset, you can do that.

And then I think the other asset type that we have in here is a PDF. So again, you can distribute audio, enhance AAC, MP3, enhance audio, video, and PDF, anything that the music store can distribute. The way that we build out the front page is if we go to edit page and we wanted to add more courses, you'll be able to see that we have the tools for being able to add new sections.

So if I wanted to add new sections called Heard on Campus, I can do that. Heard on Campus. "I could add a new section and then I could go and add a new course to that and then build that out." Okay, so that's kind of the quick top overview of how you're going to build out a page. These are the tools that enable you to build out an environment like what you saw with the screenshots.

And with that, we'll turn it back over to Eric so he can talk through how you can authenticate into the environment and tie it into your infrastructure. Okay, thanks Jason. Okay, so you have a sense now for what iTunes U can do. What do you have to do as an institution? So now I'm going to switch gears and we're going to talk about what it takes to integrate your institution's online identity management into iTunes U.

I'll talk a little bit about the design approach, why we've chosen to design it this way, and then we'll get into The actual steps of authorization and passing information to iTunes U, talk about the structure, how you build that out, and then tie access controls to that structure.

So one of the things that we did with this design was to make sure that you as an institution would be able to control everything you need to control about access to these courses. Students and faculty and other members of your community have an online identity, hopefully with the institution that you're with, and that should be the way that they enter our system.

We also realized we wouldn't be able to have complete access to all the data we need to. So we need a way for some server on your site to authorize users to the content that is residing within iTunes U. So all the decisions about access control should be made by business logic that you encode or write code to produce.

So one of the philosophies we took away from that was early on working with some of the universities we were working with that a lot of people were interested in SHIBLA, Federated Identity Management, and allowing for the sharing of resources across institutions and things like this. This is similar to what we have done in Spirit. We're a content provider, a service provider in this case, and your institution is an identity provider, and we want to make sure that we allow you to secure the content.

So let's get into what gets passed from your institution into iTunes U. You have a message here that we've crafted an example of that sends an identity, a time stamp, and a set of credentials. And we'll talk about how the credentials are used in a moment. Identity, I want to point out, is an optional piece of information you can send to iTunes U. We realize that there are privacy concerns and you may not need to identify users by name.

What does this get you in iTunes U? If you want to identify users and put in things such as a full name or email address or username, this allows you to track the user information more closely in reports. It allows you to identify in the Dropbox and shared tabs who uploaded the content.

If you want to use opaque identifiers in order to obscure this and meet your own privacy policies, then you may want to do that. Keep in mind that it does preclude some of those features from being as user-friendly in terms of being able to display who did something.

The time stamp guarantees that our servers are on the same wavelength, that the message is coming at the time that we expect it to come. And then the credentials are really, we have two here, two different student credentials as an example. What defines the user's access within the system? In this case, the example is somebody transferring in as a student enrolled in two courses.

You add the shared secret that we gave you when you created your iTunes U site, and you produce a signature of that message, and then you post all that data over secure HTTP to Apple. And that's how you transfer information to us about what type of a user is entering the system.

So let's take that through step by step. One of the first things you need to do is figure out where the user is going to enter iTunes U from. Probably a web page. Probably should be a web page. That's what we've worked with in all the cases we've done so far.

So I've got the Safari icon up here just to indicate we start off in a web page. And it could be, as Jason said, a course management system, learning management system. Could be some other gateway that you create. There's a request to access a resource within iTunes U. That resource needs to go to your campus web auth.

You need to make an authentication and then an authorization decision. What is this user authorized to see? Where can I go and get information about what affiliation? So this is a way to get information about what affiliation this user has with things that are stored in iTunes U. So course enrollment data or other group-based information that you have.

Then you construct that message we just saw, and you send that server to server to iTunes U. iTunes U validates that, and if it validates, it sends back a URL that will contain a session ID that will establish a new session for this user within iTunes U with those credentials. So that gets forwarded on back to the browser. The browser launches iTunes. There it goes. iTunes, and iTunes accesses iTunes U. So that's how you get a user into iTunes U.

Jason mentioned bookmarkability, having the URLs to individual assets within iTunes U. In order to make that work, you also need to consider that your web auth server is going to need to understand a destination parameter that we expect. So it's a form value that if you want to make bookmarkable URLs work, needs to get passed through your campus web auth onto iTunes U so that we can generate a URL that's going to take the user to that specific track or asset.

OK, so I'm going to go through an example of building out a course structure. And this is the structure I want to have. And we'll talk about courses. I have a Courses section. I have an Events section. And I have a Campus Community section. So my Courses section, I've created three courses just to go through as an example. You could create many more.

And my Events and Campus Community section, I have a few sections of content that I've organized into different course pages. With this, I want to create unique identifiers and establish credentials for each of those three courses and think about the different roles I want to give to those.

I want to have a student role, and I want to have an instructor role for each course. Now for Events and Campus Community, I want to have a credential that allows anyone I choose-- in this case, I'm going to choose students as a large group, any student enrolled in my institution-- to have access to content within that site.

And we're going to block everybody else. There's going to be no public access to this site. So underneath, we have this type of a structure. We have the welcome page, three sections, and course pages underneath. Now let's consider the roles. When you got your welcome email for iTunes U, you were given site administrator credentials. So that was the first one that you had that allowed you to go in and do the things that Jason was showing to create courses and sections and such. The two other rules to think about in this case are instructor and student that I mentioned.

Further, when you get further with your implementation, you want to consider two more roles. Authorized member, which I'll use in my example here, which is somebody who, as I said, is a large group of people, anybody who's a student in this case. Or it could be anybody who you just authenticate. If they're a part of your community, you're going to allow them to see the content within your site. And then a visitor role is the public, anybody who comes to your site unauthenticated.

So we have four levels of access. Blocking access altogether. Enabling download access, which enables podcast access at the same time if you've turned that feature on. Upload access to be able to put content back into a specific page or tab. And then edit access, which allows you to either edit the entire site or just the section that you've been given edit access to.

So let's combine these with the roles that I have and define what the rules are and policies are for my example. Site administrator is going to have edit access to the entire site. We're going to have instructors edit access at a course page level. We're going to give students download access at a course page level. We want to give the authorized member role download to those other sections that I showed you. And we're going to block visitor access by not-- visitor access is blocked by default. So we're not even going to do anything with that.

iTunes U won't let anybody in unless you specifically create a credential for that. So back to my structure, I want to protect these three courses with unique credentials. And I want to protect this section with unique credentials. So I would do something like this as an example. You would create a student credential that has a unique identifier that identifies that course and section.

If you have multiple sections, you can choose to create new course pages for each section. Or you could create a credential that will work for all sections of that course to have access to the same course page. And then we have an instructor credential here. So we would do this for each of these three courses. And then we would create this type of credential for the events and campus community page.

So as an example, here's somebody who logs in with two instructor credentials. They're going to only see those sections they have access to. So the events in Campus Community would disappear. They wouldn't have access to those and only the two course sections that, two course pages that they have access to would appear. As another example, you have a student. The student comes in, you pass two credentials. One, the authorized member credential that gives them access to the entire events in Campus Community site, part of the site, and then the one course that they're enrolled in.

Notice that this hierarchy is pretty flat. You could have hundreds of courses, and we would recommend still keeping them all in that same section called Courses, because many of your users are not going to have access to all of them. They're going to have access only to a few of them, and it keeps the page nice and tight, small, easy to find things.

So, a couple of additional topics about getting this working with your iTunes U site. You get all this set up. We have some sample code that's on our site, which I'll point you to a little bit later. But you get all this set up and you're passing credentials to iTunes U and things aren't working, what do you do? We just recently added some additional debugging information to a page. What you do is you take the suffix that we gave you when you signed up, you add that suffix onto the URL that you post credentials to, and you get a page like this.

This tells, instead of jumping into iTunes, the browser's going to display what iTunes you received. It's going to tell you exactly, we received these credentials in this format. They either match or they don't match anything that you've put into the system already. And if they don't match, that's a pretty easy clue that we have a formatting error between the two credentials.

So use that to help you figure out what is iTunes U think I'm sending and determine that you have the right structure and the transfer of those authorization tokens. A couple of other topics, people ask about what to do at the end of the semester or quarter with the transition of courses. What are we going to do at that point? Well, because the authorization logic is in your hands, you have a lot of power to make some of those decisions yourself, and you saw that you have templates to create.

So you have a couple of choices. You could create a new course page for each course every semester, or you could reuse those. Reusing those would be taking out the old credentials, updating them with the current ones that your business logic is going to pick up when they look for the affiliation of a user within your student information data or other information systems, and passing that on and changing that so that they have access to the, everyone in the new section or the new course for that semester has access to that same course. So you can reuse courses if you want, or you can provision new ones.

So let's just recap this section of how to integrate iTunes U with your site. First, determine the entry point. How are users going to gain access to iTunes U, and where do you want them to do that on your website? And how are you going to do the authorization logic? That's step one. Second is to implement some of the transfer logic and test these credentials. I mentioned the sample code.

Use that. We have some sample code today in Java and Perl, and we hope to be adding to that in the future. Implement handling of destination parameter and test bookmarks. I mentioned this earlier. If you want bookmarks to work, please make sure that your gateway to iTunes U supports that and test that.

And then fourth, the shared secret is really the only thing that keeps this information trusted between your authorization server and iTunes U. So secure that. Put that on a server and make sure it's logically and physically secure. And then last, go through the exercise we just did and figure out how you want to create a structure and build out with the iTunes U admin tools and assign credentials to those.

Okay, so with that we've covered the integration steps for authentication and authorization, and now I want to talk about content. Without content, we don't have much to talk about. It's all about distributing content. So we're going to talk about file formats that work with iTunes U and iTunes and the iPod, and talk about the importance of metadata and uploading content.

So we highly recommend MP3 or AAC because of the compression and size of the files that it produces and the metadata. And we'll go into metadata in a moment. For video, if you want this video to work at all with the iPod, there are some pretty particular formats you have to use. MPEG-4 with H.264 compression.

All of Apple's tools now of iLife06 and QuickTime now support export to iPod, which takes the guesswork out of, "Is this going to work when I get the content into iTunes U and have others download it and play it back on iTunes and iPod?" Another format is enhanced podcasting, which in the last year has gained a lot of popularity due to podcasting. This is an audio track with images.

And if you're considering doing any kind of capture of lectures or just presentations that other people are doing, like this one, this is a great way to just have an audio track with images instead of full motion video, which saves a lot of space. And it's still a very rich experience for your users on an iPod or an iTunes. Jason also mentioned we support PDF. And if you want more details about this, we have a document I'll point you to at the end of the session about creating content for iPod and iTunes and all of the things you should think about.

So, I mentioned enhanced audio. If you think about these different file sizes for 60 minutes of content. If you're going to distribute 60 minutes of content compressed at 128 kilobits per second audio, you'll probably end up with a file roughly around 56 megabytes. You add 30 images to that. I have 30 or 40 images in this presentation. You size those for the iPod screen and you've got a file that's about 58 megabytes.

It's a lot smaller than if you do 60 minutes of 15 frames per second video for the iPod. That's going to come out to be about 280 megabytes. And you have to think about what you want to recommend to your users as they're both uploading and downloading this content potentially. And there's time associated with that and bandwidth.

So metadata. This is a important subject for iTunes U and iTunes and iPod is as all systems rely on, metadata to a great extent. So iTunes currently displays name, album, artist, and genre in many places. In columns, in the info panel, these same labels are used on the iPod as you navigate the content that's stored on the iPod.

And these are the common uses of these fields that we found in the work we've done so far in iTunes U. Take the name of the track, and that translates pretty straight. But use the album as the course name. Use the artist as the instructor or student, whoever really is the author of the track. And replace the genre with the institution name. Now explain.

This works well when you've got content on iPod and people are looking for that content. If it's mixed in with other genres, you may find that it makes it hard for them to find all the content related to Stanford or Berkeley or Duke or whatever. If they have all the content tagged familiarly, they'll be able to find it easily on the iPod.

So one of the site administrative features that we created was a track preferences. In track preferences, this gives you as a site administrator the power to control and make sure that your users have consistent metadata. So let's take a look at one example. On that page, you have the ability to manage album artist, genre, artwork.

This is an example of album. So if you want to make sure that your users are always getting consistent album metadata, you have a couple of options. Because a lot of people forget to put in metadata for these tracks. We give you a couple of options here. If it's empty-- I think that's going to be a real common case for most people-- if it's empty, you want to make sure that it gets filled in with something. So we have an option of Page Name and Tab Name or Page Name.

And we offer these because the page name is taken from the course name. When you've provisioned a course, the course is going to get that page name. Your instructors may put other information into the tab about what type of content is stored in that tab. Take those two, combine them into a string, and that will become the album metadata for that track. And all tracks downloaded from your site. That makes it easy to find later.

You can override that. You can select Override, and that will make sure that the content always uses that. But if your users are providing metadata in the album-- metadata, then it's going to get overridden by that. And of course, if you want to turn all these controls off, select Use Original.

[Transcript missing]

File Formats. Looks like I'm missing a slide here on upload options. So you saw the upload options for a file at a time for an instructor and student. Jason showed you how it transitions from iTunes into a browser. You have the interface with the tabs. This makes it very easy for a user to upload a few tracks at a time.

We've had a lot of people ask for another way to upload content in an automated fashion. So we've been working on that. And we have a web service which allows you to upload many tracks using any HTTP-based file upload code that you have laying around. Or you could use a utility like Curl in Unix to upload a file. And this allows you to upload several files, write a script. It allows for a lot of flexibility.

Some situations this is useful is if you're trying to automate the workflow of getting content into iTunes U. If you have a lecture capture system that's recording audio or video, you can let that do its work. Compress the file down to the format you want to distribute. And then send that file to iTunes U.

[Transcript missing]

transfer logic. You can find those at this URL. We also have documentation posted there which I mentioned about creating content for iPod. In iTunes, we have documentation on the whole process that I just described. If you haven't, if now you're interested in iTunes U and you want to apply, you can go to itunesu.com.

That's the URL that's easiest to remember. That'll take you to our site and give you information about what it takes to become an iTunes U site. If you're a developer interested in working with us in some way that would allow your product or service to automatically get content into iTunes U, for example, or other possibilities and you need a developer contact in Worldwide Developer Relations, your contact is Michael McMillian.