Transcript Annodex2
Architecture of a Video Web Experience with Annodex
W3C Video Workshop
Silvia Pfeiffer
Dec 2007
Annodex Association, Xiph.Org, Vquence
(originally: CSIRO)
Aim
Make video an integral part of the Web
Everyone can author
Everyone can implement tools
Existing Web developers can apply their
knowledge to video (e.g. URI, HTTP,
CSS, Javascript) - not re-invent existing
Web functionality
Imagine a Web consisting only of video
Requirements
Deep Linking: timed URIs
Metadata: Time-aligned annotations & tags
Searchability: Searching media using text
Dynamic composition of video mashups
Discoverability: Hyperlinking from inside media to other Web
resources
Share-ability: Integrated handling of metadata with the
content
Personalisation: Dynamic composition of media web content
The Technical Components
CMML: Continuous Media Markup-Language,
the HTML of time-continuous data, which
allows to markup media
Annodex: Annotated and Indexed TimeContinuous Data Container, which allows
synchronised and interleaved exchange of
CMML and multi-track binary data over
networks
Hyperlinks into Annodex/CMML: temporal
offsets & named clips, which allows direct
addressing of information inside media using
URLs
The Technical Components
Search Engine
CMML
Web
Server
URI
CMML
Annodex
URI
URI
Browser
Annodex
Annodex
Annodex
URI
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
Future IP-based Consumer Media
CMML example
<cmml>
<stream basetime=“0” utc=“20040114T153500.00Z”>
<import src=“galaxies.ogg” contenttype=“video/ogg"
start=“npt:0"/>
</stream>
<head>
<title>Hidden Galaxies</title>
<meta name="author" content="CSIRO"/>
</head>
<clip id=“findingGalaxies” start=“15”>
<a href=“http://www.aao.gov.au/galaxies.anx?id=radio”>Related
video on Detection of Galaxies</a>
<img src=“galaxy.jpg”/>
<desc>What’s out there? </desc>
<meta name=“KEYWORDS" content=“Radio Telescope, Galaxies"/>
</clip>
</cmml>
Authoring Annodex from
CMML and media
continuous media file
CMML file
Merger
Annodex file
Conceptual Annodex File
active
head
anchor
Annodexed media
galaxies.ogg
head
<head>
<title>
Hidden Galaxies
</title>
<meta name="author"
content="CSIRO"/>
</head>
media
anchor
<clip id=“findingGalaxies">
<a
href=“http://www.aao.gov.au/>
Related video on Detection of
Galaxies"</a>
<img src=”galaxy.jpg”/>
<desc>What’s out there?
</desc>
<meta name=“KEYWORDS"
content=“Astronomy,Radio
Telescope, Galaxies"/>
</a>
timebase=0
start=15
media
CMML: i18n
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE cmml SYSTEM "cmml.dtd">
<cmml lang="pl">
<head lang="en">
<title>Types of fish</title>
<meta name="Producer" content="Joe Ordinary"/>
<meta name="DC.Author" content="Joe's friend"/>
</head>
<clip lang="de" id="intro" start="npt:0">
<a href="http://www.blah.au/fish.html">Lesen Sie mehr über Fische.</a>
<desc lang="en">This is the introduction to the film Joe made about fish.</desc>
</clip>
<clip lang="en" id="goldfish" start="npt:5:5.9">
<a href="http://www.blah.au/morefish.anx?id=goldfish">More video clips on goldfish.</a>
<img src="http://www.blah.au/goldfish.jpg"/>
<desc>Joe has a fishtank at home with many colourful fish.</desc>
<meta name="Subject" content="goldfish"/>
<meta lang="fr" name="sujet" content="poisson d'or"/>
</clip>
</cmml>
CMML: multiple annotation tracks
“track” attribute of clips allows grouping
into
multiple annotation tracks:
<clip track="authors" start="npt:0">
<a href="http://www.blah.au/joe.html">Go to Joe’s home page.</a>
<desc>Joe recorded and edited this part of the film.</desc>
</clip>
<clip track="default" start="npt:0">
<a href="http://www.blah.au/fish.html">Read more about fish.</a>
<desc>This is the introduction to the film Joe made about fish.</desc>
</clip>
<clip track=”authors" start="npt:3.5">
<a href=”http://www.blah.au/claudine.html”>Got to Claudine’s home page.</a>
<desc>Claudine recorded this bit of the film.</desc>
<meta name="Author" content="Claudine"/>
A multi-track Annodex file
continuous media files
CMML file
Theora
...
Merger
(anxenc)
Vorbis
Annodex file
Theora
Vorbis
Surfing Video
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
A Firefox Web Browser
extension allows
streaming of
videos. The
components are:
•
A clip table to
allow direct access
to the sections of
the video.
•
Free text
annotation per
video clip.
•
A hyperlink per
video clip.
•
A data display
section (for the
video itself).
Searching video
Using keyword search.
Direct access to the offset
point of interest.
The search engine uses
metadata and free text
annotations to index
the files and retrieve
the result list.
Mashup Video
- show video demo -
Summary
CMML is simple, but extensible
CMML, timed URIs & Annodex enable a Video Web
with CSS for styling and javascript interfaces
More work necessary to meet all requirements, e.g.
CSS for video transitions, Web caching, dynamic
track composition on the server
All work are open specifications and open source
implementations
Standardisation through IETF envisioned, but could
turn into a W3C work group and recommendation
www.annodex.net
www.annodex.org