Producing Participatory Media
Week 6 - February 20
Class Stream
Topics:
Streaming with Flash
Flash follows it's own rules and doesn't abide by many of the standards we have talked about. In some cases this is good, in others not so great. It is good that it is very easy to get going but doesn't offer some of the delivery flexibility offered by more standard based streaming systems (such as streaming to consumer electronics devices like set-top-boxes or mobile phones (although mobile phones are in the plans for Flash Lite 3)). It also is easy to do server side programming with but that is a topic for another day.
Here are the steps to follow to quickly start streaming with Flash:
<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 file) you create a link to your SMIL document (also possibly using a QTML file for compatibility purposes).
For more information:
SMIL 1.0 Spec
QT Text Track Descriptors
QuickTime and SMIL (in depth)
QuickTime Text Tracks Tutorial
SMIL Authoring (notes from a course at Michigan State, very good)
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