SlideShare a Scribd company logo
1 of 58
Download to read offline
Interactive Content Authoring for A/153
ATSC Mobile Digital Television
Employing Open Source Tools
Brad Fortner – Ryerson University
bfortner@ryerson.ca
ATSC TechZone Pavilion
Booth # N4039
interactive content authoring?
Lack of books or
information on
subject that
provide
examples and
clarification.
evolution
ATSC M/H content group
Brad Fortner Tyler Pham Gregory Kon Steven James May
From Left To Right: Many Ayromlou, Victor Nguyen, Alireza
Tahmasbi, Raymond Padillo, Jeremy Littler
a decade later
a decade later- standards
A/153 part 5 set standards for the rich media environment for ATSC mobile dtv
a decade later- content
Steve Bratt W3C Technical Plenary 2003
"The Semantic Web: common framework that allows data to be shared and reused
across application, enterprise, and community boundaries."
a decade later- MPEG 4
MPEG-4 multimedia object based coding standard
Today: way more than a video compression format
H.264/MPEG-4 Part 10
a decade later- MPEG 4
MPEG-4 now 28 parts from which the principles of the
rich media environment for A/153 was derived
a decade later- learned?
=
Rich Media Application
Linked Data
Multimedia Objects
+
agenda
Could you
provide some
background?
• background
• the three parts to rich media delivery
• A/153’s rich media environment
• what and why multimedia object coding is important
• A/153’s “push in advance of consumption” content model
• multimedia scenes
• presentation format
• SVG Tiny 1.2
• ECMAScript
• packaging format
• DIMS and carousels
• open source software available for prototype development
• pitfalls and presentation takeaways
rich media delivery
Let’s do a
traffic app!
presentation
format
packaging
format
transportation
format
Rich Media
Content
Server(s)
Browser
with Rich
Media
Engine
Let’s do a
traffic app!
Browser
with Rich
Media
Engine
rich media environment
Let’s do a
traffic app!
presentation
format
packaging
format
transportation
format
Browser
with Rich
Media
Engine
SVG Tiny 1.2
ECMA Script
Dynamic
Interactive
Multimedia
Scenes (DIMS)
A/153
Let’s do a
traffic app!
Browser
with Rich
Media
Engine
Scene Stream Server
scenes in MPEG-4
Server A
Server B
How’s the Weather
App progressing?
Server C
primitive multimedia objects
How’s the
Weather App
progressing?
rendered scene on browser
Scene Stream Server
scenes in MPEG-4
Server A
Server B
How’s the Weather
App progressing?
Server C
primitive multimedia objects
How’s the
Weather App
progressing?
rendered scene on browserscene description
scene description MPEG-4
primitive multimedia objects
How’s the
Weather App
progressing?
rendered scene on browserscene description
Environmental
Objects
Office Desk Chair
Businessman
Objects
Businessman Speech Bubble
Fragment Fragment Fragment Fragment Fragment Fragment Fragment Fragment
Hierarchy
scene description MPEG-4
primitive multimedia objects
How’s the
Weather App
progressing?
rendered scene on browserscene description
• places (arranges) media objects on interface
• transforms media objects attributes to alter appearance
o scale, transparency, color, animation etc.
• provides timing between media objects and streamed data
• provides for user interactivity
• called (microDOM) uDOM in SVG Tiny 1.2
+ =
MPEG-4 object coding
primitive multimedia objects
How’s the
Weather App
progressing?
rendered scene on browserscene description
+ =
+ =
primitive multimedia objects rendered scene on browser
scene description
presentation
format
packaging
format
transportation
format
SVG Tiny 1.2
ECMA Script
Dynamic Interactive
Multimedia Scenes
(DIMS)
A/153
pushing multimedia objects
push content model
• return path not guaranteed in ATSC M/H
• return path
• device dependent
• network availability dependent
• forward, store, use content design model
• applications must be designed accordingly
“push content in advance of consumption model”
push content model
“push content in advance of consumption model”
• six “Multimedia Scenes” are used in the weather app
• they are transmitted all at one time
• a small number of SVG fragments can be reused over a number of scenes
• judicious use of SVG fragments reduce transmission requirements
push content model
“push content in advance of consumption model”
• ECMAScript is used to program the interactive buttons to switch between multimedia scenes
presentation format
So how does one
create these multimedia
objects?
SVG tiny 1.2
=
• XML-based file format used for describing two-dimensional vector graphics
• editable text
• human-readable, machine-readable
• can be searched, indexed, and scripted
raindrop object (fragment) markup in SVG Tiny 1.2
SVG tiny 1.2
But what about my
cute cat pictures?
JPEG and PNG
encoded to
base64
SVG tiny 1.2
3X size: above rendered at 1262 * 727 – originally designed for 416 * 240
• traffic object is originally a 293 * 220 bitmap
• does not scale with other SVG objects in scene
SVG tiny 1.2 scene creation
scene description
SVG simultaneously creates multimedia objects
and scene description as one authors content
SVG Link to raindrop
fragment
Raindrop fragment screen positioning and
sizing markup. This is used as
scene description.
SVG tiny 1.2 scene creation
SVG Tiny 1.2 rich
media application
displayed in Opera
browser
.svg
freely available software
Show Me
The Free!!!
• any text editor will edit SVG and XSLT
• integrated developer environment (IDE)
freely available software
Show Me
The Free!!!
• SVG vector graphics editors
“VISIO like” “Illustrator like”online
freely available software
Show Me
The Free!!!
• SVG vector graphics libraries
freely available software
SVG Tiny 1.2 rich media
application displayed in Opera
browser
inkscape svg object
text inside svg
markup
icon svg objects from
openclipart.org
objects chosen for display
on client using ECMA
script
weather from rss feed
inserted using XSLT
inkscape svg object
text inside svg
markup
event handler buttons are
ECMAScript functions
software used weather app
packaging format
Scene Stream
Server
scene
description
Server A
Server B
MPEG-4 Terminal
Server C
3GGP DIMS object packaging
Server A
Server B
Server C
Scene Stream
Server and
DIMS Packager
packaged
scene
description
and objects
highly constrained
network and
devices
open source DIMS software
What! Open
Source DIMS
software. WOW!
“as is”
open source DIMS software
Understood.
GPAC is useful
for prototypes.
• GPAC Project on Advanced Content
• implementation of the MPEG-4 systems standard
• written in ANSI C (cross platform)
• tools for media playback, vector graphics, MPEG-4 authoring and distribution
• consists of
o multimedia packager called MP4Box
o some server functions (experimental)
o multimedia player called Osmo4
• MP4Box
o generates 3GPP DIMS packaging from SVG files
• Osmo4
o displays SVG Tiny 1.2 scenes packaged in 3GPP DIMS files
3GGP DIMS carousel types
object
0
object
1
object
2
object
3
object
0
object
1
object
2
object
3
static carousel0
1
23
4
GPAC Experimental DIMS
Stream Server
• static carousel
• repeatedly sends scene description and objects
• repeats because devices tune in at different times
3GGP DIMS carousel types
• dynamic carousel
• sends updates to screen elements
0
1
23
4
GPAC Experimental DIMS
Stream Server
dynamic carousel (update)
object
0
object
1
object
2
object
3
object
4
object
0
object
1
object
2
object
3
object
4
object
5
object
5
changechangechange
GPAC DIMS static operation
object
0
object
1
object
2
object
3
object
0
object
1
object
2
object
3
static carousel0
1
23
4
GPAC Experimental DIMS
Stream Server
GPAC DIMS server command-line interface instructions are as follows
GPAC
Software
Packager
Destination
IP Address
Time
Between
Carousel
Sends
Initiates
DIMS
Packaging
Name Of File
To Be Packaged
And Sent
Streams
Scene
Live
GPAC OSMOS4 player
object
0
object
1
object
2
object
3
object
0
object
1
object
2
object
3
static carousel0
1
23
4
GPAC Experimental DIMS
Stream Server
GPAC OSMOS4 player command-line interface instructions are as follows
GPAC
OSMOS4
Player
Looks for Session
Description
Protocol from
DIMS server
GPAC dynamic updates
Primary Stream
GPAC Experimental DIMS
Stream Server
0
1
23
4
Primary Stream
GPAC Experimental DIMS
Stream Server
0
1
23
4
GPAC dynamic updates
Update Stream
Primary Stream
GPAC Experimental DIMS
Stream Server
0
1
23
4
GPAC dynamic updates
Update
Main Carousel0
1
23
4
GPAC Experimental DIMS
Stream Server
Linked Data ServerLinked Data Server
Update
GPAC dynamic updates
Update
Main Carousel0
1
23
4
GPAC Experimental DIMS
Stream Server
Linked Data ServerLinked Data Server
Update
GPAC dynamic updates
Linked Data Server
• Linux BASH shell script to collect linked data and write the update
file (doScript)
• BASH: wget --output-document=camera.jpg http://www.toronto.ca/trafficimages/loc9.jpg
• BASH/DIMS: a="<Replace ref="trafficImage" attributeName="xlink:href"
value="data:image/ jpeg;base64,"$(base64 camera.jpg)"" />"
• BASH: echo $a > updateFile.svg
Update Stream
Primary Stream
GPAC Experimental DIMS
Stream Server With BASH
Script, Update File, XSLT
Program and Traffic
Prototype SVG File
0
1
23
4
GPAC
Software
Packager
Destination
IP Address
Time
Between
Carousel
Sends
Initiates
DIMS
Packaging
Name Of File
To Be Packaged
And Sent
Name Of Update
File That GPAC
Watches
Streams
Scene
Live
GPAC dynamic operation
freely available software
Show Me
The Free!!!
Pitfalls – SVG tiny 1.2 viewer
GPAC OSMO4
Browser Render
(Packaged DIMS File)
OPERA
Browser Render
(SVG File)
Lack of a fully
implemented
freely available
SVG tiny 1.2
standard viewer
Update Stream
Primary Stream
GPAC Experimental DIMS
Stream Server With BASH
Script, Update File, XSLT
Program and Traffic
Prototype SVG File
0
1
23
4
GPAC – experimental nature
• dynamic carousel
• Prototype crashes when primary and update streams sent too
close together
takeaways - moving objects
presentation
format
packaging
format
transportation
format
SVG Tiny 1.2
ECMA Script
Dynamic Interactive
Multimedia Scenes
(DIMS)
A/153
takeaways - push
• return path not guaranteed in ATSC M/H
• return path
• device dependent
• network availability dependent
• forward, store, use content design model
• applications must be designed accordingly
“push content in advance of consumption model”
SVG simultaneously creates
multimedia objects and scene
description as one authors
content
Takeaways - SVG
takeaways - carousels
Primary Stream
GPAC Experimental DIMS
Stream Server
0
1
23
4
Update Stream
GPAC Experimental DIMS
Stream Server
0
1
23
4
free prototype software
more information
www.openmobiledtv.org
Brad Fortner – Ryerson University
bfortner@ryerson.ca
ATSC TechZone Pavilion
Booth # N4039
www.openmobiledtv.org
Ryerson University Booth
North Hall - #N524
International Research Park

More Related Content

What's hot

London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...Kieran Kunhya
 
Develop Smart Solutions with Raspberry Pi and EnableX Live Video API
Develop Smart Solutions with Raspberry Pi and EnableX Live Video APIDevelop Smart Solutions with Raspberry Pi and EnableX Live Video API
Develop Smart Solutions with Raspberry Pi and EnableX Live Video APIEnablex io
 
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Chris Adamson
 
Using IT Equipment in Live Broadcast
Using IT Equipment in Live BroadcastUsing IT Equipment in Live Broadcast
Using IT Equipment in Live BroadcastKieran Kunhya
 
Don't just go IP - Go IT
Don't just go IP - Go ITDon't just go IP - Go IT
Don't just go IP - Go ITKieran Kunhya
 
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...Kieran Kunhya
 
Digitizing and Delivering Audio and Video
Digitizing and Delivering Audio and VideoDigitizing and Delivering Audio and Video
Digitizing and Delivering Audio and VideoJenn Riley
 
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...Benoit Michel
 
Implementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfallsImplementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfallsKieran Kunhya
 
VoIP (Voice over Internet Protocol)
VoIP (Voice over Internet Protocol)VoIP (Voice over Internet Protocol)
VoIP (Voice over Internet Protocol)Abdullah Shah
 
Audio and Video streaming.ppt
Audio and Video streaming.pptAudio and Video streaming.ppt
Audio and Video streaming.pptVideoguy
 
VoIP - Technology To Business Models
VoIP - Technology To Business ModelsVoIP - Technology To Business Models
VoIP - Technology To Business Modelsguesta5f2fb
 
Delivering Great WebRTC on Mobile Devices
Delivering Great WebRTC on Mobile DevicesDelivering Great WebRTC on Mobile Devices
Delivering Great WebRTC on Mobile DevicesWeemo, Inc.
 
The Cocooning Project and the Familibrary Services - B Peigne
The Cocooning Project and the Familibrary Services - B PeigneThe Cocooning Project and the Familibrary Services - B Peigne
The Cocooning Project and the Familibrary Services - B Peignemfrancis
 

What's hot (20)

Network protocol
Network protocolNetwork protocol
Network protocol
 
London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...
 
FOSS in Broadcast
FOSS in BroadcastFOSS in Broadcast
FOSS in Broadcast
 
Voice video different_platforms_v1
Voice video different_platforms_v1Voice video different_platforms_v1
Voice video different_platforms_v1
 
Develop Smart Solutions with Raspberry Pi and EnableX Live Video API
Develop Smart Solutions with Raspberry Pi and EnableX Live Video APIDevelop Smart Solutions with Raspberry Pi and EnableX Live Video API
Develop Smart Solutions with Raspberry Pi and EnableX Live Video API
 
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
 
Using IT Equipment in Live Broadcast
Using IT Equipment in Live BroadcastUsing IT Equipment in Live Broadcast
Using IT Equipment in Live Broadcast
 
Don't just go IP - Go IT
Don't just go IP - Go ITDon't just go IP - Go IT
Don't just go IP - Go IT
 
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
Native IP Decoding MPEG-TS Video to Uncompressed IP (and Vice versa) on COTS ...
 
Digitizing and Delivering Audio and Video
Digitizing and Delivering Audio and VideoDigitizing and Delivering Audio and Video
Digitizing and Delivering Audio and Video
 
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...
iDiff 2008 conference #01 IP-Racine : Cinema production infrastructure on 10G...
 
Implementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfallsImplementing Uncompressed over IP in software and the pitfalls
Implementing Uncompressed over IP in software and the pitfalls
 
The Road to Ultra Low Latency
The Road to Ultra Low LatencyThe Road to Ultra Low Latency
The Road to Ultra Low Latency
 
VoIP (Voice over Internet Protocol)
VoIP (Voice over Internet Protocol)VoIP (Voice over Internet Protocol)
VoIP (Voice over Internet Protocol)
 
Iptv
IptvIptv
Iptv
 
Video Streaming
Video StreamingVideo Streaming
Video Streaming
 
Audio and Video streaming.ppt
Audio and Video streaming.pptAudio and Video streaming.ppt
Audio and Video streaming.ppt
 
VoIP - Technology To Business Models
VoIP - Technology To Business ModelsVoIP - Technology To Business Models
VoIP - Technology To Business Models
 
Delivering Great WebRTC on Mobile Devices
Delivering Great WebRTC on Mobile DevicesDelivering Great WebRTC on Mobile Devices
Delivering Great WebRTC on Mobile Devices
 
The Cocooning Project and the Familibrary Services - B Peigne
The Cocooning Project and the Familibrary Services - B PeigneThe Cocooning Project and the Familibrary Services - B Peigne
The Cocooning Project and the Familibrary Services - B Peigne
 

Similar to Interactive Content Authoring for ATSC Mobile Digital Television

Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...Ryerson University
 
Augmented Reality: Connecting physical and digital worlds
Augmented Reality: Connecting physical and digital worldsAugmented Reality: Connecting physical and digital worlds
Augmented Reality: Connecting physical and digital worldsMarius Preda PhD
 
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi  (Samsung) - Korea Lin...Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi  (Samsung) - Korea Lin...
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...Ryo Jin
 
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAmazon Web Services
 
CAVE/RC-to-street
CAVE/RC-to-street CAVE/RC-to-street
CAVE/RC-to-street Videoguy
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Pravasini Sahoo
 
Supporting Digital Media Workflows in the Cloud with Perforce Helix
Supporting Digital Media Workflows in the Cloud with Perforce HelixSupporting Digital Media Workflows in the Cloud with Perforce Helix
Supporting Digital Media Workflows in the Cloud with Perforce HelixPerforce
 
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...Gina Montgomery, V-TSP
 
Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014Marius Preda PhD
 
HTML5 Programming
HTML5 ProgrammingHTML5 Programming
HTML5 Programminghotrannam
 
Maya Pipeline Code Samples
Maya Pipeline Code SamplesMaya Pipeline Code Samples
Maya Pipeline Code SamplesArnon Marcus
 
AWS Summit 2013 | Auckland - Scalable Media Processing on the Cloud
AWS Summit 2013 | Auckland - Scalable Media Processing on the CloudAWS Summit 2013 | Auckland - Scalable Media Processing on the Cloud
AWS Summit 2013 | Auckland - Scalable Media Processing on the CloudAmazon Web Services
 
HTML5 Introduction
HTML5 IntroductionHTML5 Introduction
HTML5 Introductiondynamis
 
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...Anand Bhojan
 
Web Architecture and Technologies
Web Architecture and TechnologiesWeb Architecture and Technologies
Web Architecture and TechnologiesFulvio Corno
 

Similar to Interactive Content Authoring for ATSC Mobile Digital Television (20)

Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
 
Augmented Reality: Connecting physical and digital worlds
Augmented Reality: Connecting physical and digital worldsAugmented Reality: Connecting physical and digital worlds
Augmented Reality: Connecting physical and digital worlds
 
3DgraphicsAndAR
3DgraphicsAndAR3DgraphicsAndAR
3DgraphicsAndAR
 
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi  (Samsung) - Korea Lin...Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi  (Samsung) - Korea Lin...
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...
 
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
 
CAVE/RC-to-street
CAVE/RC-to-street CAVE/RC-to-street
CAVE/RC-to-street
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3
 
Supporting Digital Media Workflows in the Cloud with Perforce Helix
Supporting Digital Media Workflows in the Cloud with Perforce HelixSupporting Digital Media Workflows in the Cloud with Perforce Helix
Supporting Digital Media Workflows in the Cloud with Perforce Helix
 
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
 
Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014Mpeg ARAF tutorial @ ISMAR 2014
Mpeg ARAF tutorial @ ISMAR 2014
 
Html5
Html5Html5
Html5
 
HTML5
HTML5HTML5
HTML5
 
HTML5 Programming
HTML5 ProgrammingHTML5 Programming
HTML5 Programming
 
Web rtc 入門
Web rtc 入門Web rtc 入門
Web rtc 入門
 
Maya Pipeline Code Samples
Maya Pipeline Code SamplesMaya Pipeline Code Samples
Maya Pipeline Code Samples
 
AWS Summit 2013 | Auckland - Scalable Media Processing on the Cloud
AWS Summit 2013 | Auckland - Scalable Media Processing on the CloudAWS Summit 2013 | Auckland - Scalable Media Processing on the Cloud
AWS Summit 2013 | Auckland - Scalable Media Processing on the Cloud
 
20CS2008 Computer Networks
20CS2008 Computer Networks 20CS2008 Computer Networks
20CS2008 Computer Networks
 
HTML5 Introduction
HTML5 IntroductionHTML5 Introduction
HTML5 Introduction
 
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
 
Web Architecture and Technologies
Web Architecture and TechnologiesWeb Architecture and Technologies
Web Architecture and Technologies
 

Recently uploaded

Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Recently uploaded (20)

Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 

Interactive Content Authoring for ATSC Mobile Digital Television

  • 1. Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employing Open Source Tools Brad Fortner – Ryerson University bfortner@ryerson.ca ATSC TechZone Pavilion Booth # N4039
  • 2. interactive content authoring? Lack of books or information on subject that provide examples and clarification.
  • 4. ATSC M/H content group Brad Fortner Tyler Pham Gregory Kon Steven James May From Left To Right: Many Ayromlou, Victor Nguyen, Alireza Tahmasbi, Raymond Padillo, Jeremy Littler
  • 6. a decade later- standards A/153 part 5 set standards for the rich media environment for ATSC mobile dtv
  • 7. a decade later- content Steve Bratt W3C Technical Plenary 2003 "The Semantic Web: common framework that allows data to be shared and reused across application, enterprise, and community boundaries."
  • 8. a decade later- MPEG 4 MPEG-4 multimedia object based coding standard Today: way more than a video compression format H.264/MPEG-4 Part 10
  • 9. a decade later- MPEG 4 MPEG-4 now 28 parts from which the principles of the rich media environment for A/153 was derived
  • 10. a decade later- learned? = Rich Media Application Linked Data Multimedia Objects +
  • 11. agenda Could you provide some background? • background • the three parts to rich media delivery • A/153’s rich media environment • what and why multimedia object coding is important • A/153’s “push in advance of consumption” content model • multimedia scenes • presentation format • SVG Tiny 1.2 • ECMAScript • packaging format • DIMS and carousels • open source software available for prototype development • pitfalls and presentation takeaways
  • 12. rich media delivery Let’s do a traffic app! presentation format packaging format transportation format Rich Media Content Server(s) Browser with Rich Media Engine Let’s do a traffic app! Browser with Rich Media Engine
  • 13. rich media environment Let’s do a traffic app! presentation format packaging format transportation format Browser with Rich Media Engine SVG Tiny 1.2 ECMA Script Dynamic Interactive Multimedia Scenes (DIMS) A/153 Let’s do a traffic app! Browser with Rich Media Engine
  • 14. Scene Stream Server scenes in MPEG-4 Server A Server B How’s the Weather App progressing? Server C primitive multimedia objects How’s the Weather App progressing? rendered scene on browser
  • 15. Scene Stream Server scenes in MPEG-4 Server A Server B How’s the Weather App progressing? Server C primitive multimedia objects How’s the Weather App progressing? rendered scene on browserscene description
  • 16. scene description MPEG-4 primitive multimedia objects How’s the Weather App progressing? rendered scene on browserscene description Environmental Objects Office Desk Chair Businessman Objects Businessman Speech Bubble Fragment Fragment Fragment Fragment Fragment Fragment Fragment Fragment Hierarchy
  • 17. scene description MPEG-4 primitive multimedia objects How’s the Weather App progressing? rendered scene on browserscene description • places (arranges) media objects on interface • transforms media objects attributes to alter appearance o scale, transparency, color, animation etc. • provides timing between media objects and streamed data • provides for user interactivity • called (microDOM) uDOM in SVG Tiny 1.2 + =
  • 18. MPEG-4 object coding primitive multimedia objects How’s the Weather App progressing? rendered scene on browserscene description + = + = primitive multimedia objects rendered scene on browser scene description
  • 19. presentation format packaging format transportation format SVG Tiny 1.2 ECMA Script Dynamic Interactive Multimedia Scenes (DIMS) A/153 pushing multimedia objects
  • 20. push content model • return path not guaranteed in ATSC M/H • return path • device dependent • network availability dependent • forward, store, use content design model • applications must be designed accordingly “push content in advance of consumption model”
  • 21. push content model “push content in advance of consumption model” • six “Multimedia Scenes” are used in the weather app • they are transmitted all at one time • a small number of SVG fragments can be reused over a number of scenes • judicious use of SVG fragments reduce transmission requirements
  • 22. push content model “push content in advance of consumption model” • ECMAScript is used to program the interactive buttons to switch between multimedia scenes
  • 23. presentation format So how does one create these multimedia objects?
  • 24. SVG tiny 1.2 = • XML-based file format used for describing two-dimensional vector graphics • editable text • human-readable, machine-readable • can be searched, indexed, and scripted raindrop object (fragment) markup in SVG Tiny 1.2
  • 25. SVG tiny 1.2 But what about my cute cat pictures? JPEG and PNG encoded to base64
  • 26. SVG tiny 1.2 3X size: above rendered at 1262 * 727 – originally designed for 416 * 240 • traffic object is originally a 293 * 220 bitmap • does not scale with other SVG objects in scene
  • 27. SVG tiny 1.2 scene creation
  • 28. scene description SVG simultaneously creates multimedia objects and scene description as one authors content SVG Link to raindrop fragment Raindrop fragment screen positioning and sizing markup. This is used as scene description.
  • 29. SVG tiny 1.2 scene creation SVG Tiny 1.2 rich media application displayed in Opera browser .svg
  • 30. freely available software Show Me The Free!!! • any text editor will edit SVG and XSLT • integrated developer environment (IDE)
  • 31. freely available software Show Me The Free!!! • SVG vector graphics editors “VISIO like” “Illustrator like”online
  • 32. freely available software Show Me The Free!!! • SVG vector graphics libraries
  • 33. freely available software SVG Tiny 1.2 rich media application displayed in Opera browser inkscape svg object text inside svg markup icon svg objects from openclipart.org objects chosen for display on client using ECMA script weather from rss feed inserted using XSLT inkscape svg object text inside svg markup event handler buttons are ECMAScript functions
  • 36. 3GGP DIMS object packaging Server A Server B Server C Scene Stream Server and DIMS Packager packaged scene description and objects highly constrained network and devices
  • 37. open source DIMS software What! Open Source DIMS software. WOW! “as is”
  • 38. open source DIMS software Understood. GPAC is useful for prototypes. • GPAC Project on Advanced Content • implementation of the MPEG-4 systems standard • written in ANSI C (cross platform) • tools for media playback, vector graphics, MPEG-4 authoring and distribution • consists of o multimedia packager called MP4Box o some server functions (experimental) o multimedia player called Osmo4 • MP4Box o generates 3GPP DIMS packaging from SVG files • Osmo4 o displays SVG Tiny 1.2 scenes packaged in 3GPP DIMS files
  • 39. 3GGP DIMS carousel types object 0 object 1 object 2 object 3 object 0 object 1 object 2 object 3 static carousel0 1 23 4 GPAC Experimental DIMS Stream Server • static carousel • repeatedly sends scene description and objects • repeats because devices tune in at different times
  • 40. 3GGP DIMS carousel types • dynamic carousel • sends updates to screen elements 0 1 23 4 GPAC Experimental DIMS Stream Server dynamic carousel (update) object 0 object 1 object 2 object 3 object 4 object 0 object 1 object 2 object 3 object 4 object 5 object 5 changechangechange
  • 41. GPAC DIMS static operation object 0 object 1 object 2 object 3 object 0 object 1 object 2 object 3 static carousel0 1 23 4 GPAC Experimental DIMS Stream Server GPAC DIMS server command-line interface instructions are as follows GPAC Software Packager Destination IP Address Time Between Carousel Sends Initiates DIMS Packaging Name Of File To Be Packaged And Sent Streams Scene Live
  • 42. GPAC OSMOS4 player object 0 object 1 object 2 object 3 object 0 object 1 object 2 object 3 static carousel0 1 23 4 GPAC Experimental DIMS Stream Server GPAC OSMOS4 player command-line interface instructions are as follows GPAC OSMOS4 Player Looks for Session Description Protocol from DIMS server
  • 43. GPAC dynamic updates Primary Stream GPAC Experimental DIMS Stream Server 0 1 23 4
  • 44. Primary Stream GPAC Experimental DIMS Stream Server 0 1 23 4 GPAC dynamic updates Update Stream Primary Stream GPAC Experimental DIMS Stream Server 0 1 23 4
  • 45. GPAC dynamic updates Update Main Carousel0 1 23 4 GPAC Experimental DIMS Stream Server Linked Data ServerLinked Data Server Update
  • 46. GPAC dynamic updates Update Main Carousel0 1 23 4 GPAC Experimental DIMS Stream Server Linked Data ServerLinked Data Server Update
  • 47. GPAC dynamic updates Linked Data Server • Linux BASH shell script to collect linked data and write the update file (doScript) • BASH: wget --output-document=camera.jpg http://www.toronto.ca/trafficimages/loc9.jpg • BASH/DIMS: a="<Replace ref="trafficImage" attributeName="xlink:href" value="data:image/ jpeg;base64,"$(base64 camera.jpg)"" />" • BASH: echo $a > updateFile.svg
  • 48. Update Stream Primary Stream GPAC Experimental DIMS Stream Server With BASH Script, Update File, XSLT Program and Traffic Prototype SVG File 0 1 23 4 GPAC Software Packager Destination IP Address Time Between Carousel Sends Initiates DIMS Packaging Name Of File To Be Packaged And Sent Name Of Update File That GPAC Watches Streams Scene Live GPAC dynamic operation
  • 50. Pitfalls – SVG tiny 1.2 viewer GPAC OSMO4 Browser Render (Packaged DIMS File) OPERA Browser Render (SVG File) Lack of a fully implemented freely available SVG tiny 1.2 standard viewer
  • 51. Update Stream Primary Stream GPAC Experimental DIMS Stream Server With BASH Script, Update File, XSLT Program and Traffic Prototype SVG File 0 1 23 4 GPAC – experimental nature • dynamic carousel • Prototype crashes when primary and update streams sent too close together
  • 52. takeaways - moving objects presentation format packaging format transportation format SVG Tiny 1.2 ECMA Script Dynamic Interactive Multimedia Scenes (DIMS) A/153
  • 53. takeaways - push • return path not guaranteed in ATSC M/H • return path • device dependent • network availability dependent • forward, store, use content design model • applications must be designed accordingly “push content in advance of consumption model”
  • 54. SVG simultaneously creates multimedia objects and scene description as one authors content Takeaways - SVG
  • 55. takeaways - carousels Primary Stream GPAC Experimental DIMS Stream Server 0 1 23 4 Update Stream GPAC Experimental DIMS Stream Server 0 1 23 4
  • 58. Brad Fortner – Ryerson University bfortner@ryerson.ca ATSC TechZone Pavilion Booth # N4039 www.openmobiledtv.org Ryerson University Booth North Hall - #N524 International Research Park