Producing Participatory Media
Week 3 - February 4
Topics:
Embedded QuickTime
QuickTime players can be embedded in a webpage.
There are many advantages to doing this:
<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH="160"HEIGHT="144" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab"> <PARAM name="SRC" VALUE="sample.mov"> <PARAM name="AUTOPLAY" VALUE="true"> <PARAM name="CONTROLLER" VALUE="false"> <EMBED SRC="sample.mov" WIDTH="160" HEIGHT="144" AUTOPLAY="true" CONTROLLER="false" PLUGINSPAGE="http://www.apple.com/quicktime/download/"> </EMBED> </OBJECT>You will notice that there are really two things going on here. The first is the "Object" tag and associated "Param" tags. These are included to support Internet Explorer and other browsers that support ActiveX controls. The second is the "Embed" tag. This is included to support browsers that utilize the standard Netscape plugin architecture. In order for your embedded player support the range of browsers available you need to include both. Also, both tags should include the same set of information. For instance, if you are going to change the height of the plugin you should change it in both the "Object" tag and in the "Embed" tag.
<OBJECT ID=RVOCX CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" WIDTH=320 HEIGHT=240> <PARAM NAME="SRC" VALUE="embedded.rm"> <PARAM NAME="CONTROLS" VALUE="ImageWindow"> <PARAM NAME="CONSOLE" VALUE="one"> <EMBED SRC="embedded.rm" WIDTH=320 HEIGHT=240 NOJAVA=true CONTROLS=ImageWindow CONSOLE=one></EMBED </OBJECT>Also, as with QuickTime there are two sets of tags, the "Object" and "Param" tags for IE and the "Embed" tag for Netscape compatible browsers.
<OBJECT ID=RVOCX CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" WIDTH=375 HEIGHT=100> <PARAM NAME="SRC" VALUE="embedded.rm"> <PARAM NAME="CONTROLS" VALUE="All"> <PARAM NAME="CONSOLE" VALUE="one"> <EMBED SRC="plugin.rpm" WIDTH=375 HEIGHT=100 NOJAVA=true CONTROLS=All CONSOLE=one> </OBJECT>Here is what it looks like.
<smil> <head> <layout> <!-- layout tags --> </layout> </head> <body> <!-- body tags --> </body> </smil>
<smil xmlns:qt="http://www.apple.com/quicktime/resources/smilextensions" qt:autoplay="true">This Example
<!-- XML Namespace --> <!-- QT SML Extension: autoplay -->
<head>
<layout>
<root-layout width="600" height="240" background-color="black" />
<region id="video_region" left="0" top="0" width="320" height="240" z-index="1" />
<region id="image_region" left="300" top="0" width="300" height="240" z-index="2" />
</layout>
</head>
<body>
<par>
<seq>
<img src="http://stage.itp.nyu.edu/~sve204/ppm/osi.png" alt="An Image" region="image_region" dur="10s" />
<img src="http://stage.itp.nyu.edu/~sve204/ppm/cdn.png" alt="Another Image" region="image_region" dur="10s" />
</seq>
<video src="http://stage.itp.nyu.edu/~sve204/ppm/embedded.mp4" region="video_region" dur="20s">
<anchor show="new" href="http://stage.itp.nyu.edu/~sve204/ppm/syllabus.html" /> <!-- Shows in the Browser -->
</video>
</par>
</body>
</smil>
<smil xmlns="http://www.w3.org/2001/SMIL20/Language"
xmlns:rn="http://features.real.com/2001/SMIL20/Extensions">
Hi My Name is Shawn This Class is called Producing Participatory Media It is a **FUN** class!!! ;-)Download this example
{QTtext}{font:Geneva}{plain}{size:12}{textColor: 65535, 65535, 65535}{backColor: 0, 0, 0}{justify:center}{timeScale:600}{width:160}{height:48}{timeStamps:absolute}{language:0}{textEncoding:0} [00:00:00.000] {textBox: 0, 0, 50, 160}Hi My Name is Shawn [00:00:02.000] {textBox: 0, 0, 50, 160}This Class is called Producing Participatory Media [00:00:04.000] {textBox: 0, 0, 50, 160}It is a **FUN** class!!! ;-) [00:00:06.000]Download this example
{QTtext}{font:New York}{Bold}{size:14}{textColor: 0, 65535, 65535}{backColor: 0, 65535, 0}{justify:center}{timeScale:600}{width:300}{height:120}{timeStamps:absolute}{language:0}{textEncoding:0}[00:00:00.000]{textBox: 0, 0, 50, 160}Hi My Name is Shawn[00:00:01.000] {textBox: 0, 0, 50, 160}This Class is called Producing Participatory Media [00:00:02.000] {textBox: 0, 0, 50, 160}It is a **FUN** class!!! ;-) [00:00:03.000]
Download this example
Putting it all together
As illustrated in the above diagram, SMIL which contains pointers to media
(audio, video, text, images) should be uploaded to your webserver along with
your images and video and further more can be embedded just like a QuickTime
movie or a RealMedia document into a webpage. You use the same embedded player
HTML code as described above for putting a movie in your page. Instead of creating
a link directly to a movie (possibly using a QTML or RAM file) you create a
link to your SMIL document (also possibly using a QTML or RAM file for compatibility
purposes).
For more information:
SMIL 1.0 Spec
QuickTime and
SMIL
QT
Text Track Descriptors
QuickTime
and SMIL (in depth)
QuickTime
Text Tracks Tutorial
SMIL
Authoring (notes from a course at Michigan State, very good)
Captioning for
QuickTime
The SMIL Tutorial
RealNetworks
Production Guide: SMIL Basics
SMIL:
Multimedia for the Masses
Layouts
in SMIL
s o u n d s c r e e n Great information concerning many aspects of QuickTime delivery
Extra Credit: Skins
Both QuickTime and Real allow the skinning of their players. While we aren't
going to go over how to do it in class it might be something that you are interested
in.
QuickTime Media Skins:
QuickTime Media Skins are in actuality part of a movie. They automatically download
and play along with a presentation and can be used to enhance the functionality
or information display of a piece of media.
QuickTime
Media Skins
How
to create QuickTime Media Skins
Using eZediaQTI
with QuickTime Media Skins
Mastering
QuickTime Media Skins
QuickTime Media Skins Examples: (open in QuickTime Player)
An Example
Another Example
A
third example
RealOne Skins
RealOne Skins are more for the hobbyest and aren't automatically instantiated
as a presentation. In this way they are more decoratative and less about adding
functionality to a player's interface.
RealOne
Skins Toolkit
Creating Custom
Skins For RealOne
RealOne Skins Examples
Skins