SlideShare uma empresa Scribd logo
1 de 58
Baixar para ler 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

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Semelhante a Interactive Content Authoring for A153 ATSC Mobile Digital Television Employing Open Source Tools

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
 

Semelhante a Interactive Content Authoring for A153 ATSC Mobile Digital Television Employing Open Source Tools (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
 

Último

Clutches and brkesSelect any 3 position random motion out of real world and d...
Clutches and brkesSelect any 3 position random motion out of real world and d...Clutches and brkesSelect any 3 position random motion out of real world and d...
Clutches and brkesSelect any 3 position random motion out of real world and d...sahb78428
 
Landsman converter for power factor improvement
Landsman converter for power factor improvementLandsman converter for power factor improvement
Landsman converter for power factor improvementVijayMuni2
 
Nodal seismic construction requirements.pptx
Nodal seismic construction requirements.pptxNodal seismic construction requirements.pptx
Nodal seismic construction requirements.pptxwendy cai
 
Phase noise transfer functions.pptx
Phase noise transfer      functions.pptxPhase noise transfer      functions.pptx
Phase noise transfer functions.pptxSaiGouthamSunkara
 
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...Amil baba
 
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdf
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdfsdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdf
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdfJulia Kaye
 
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdf
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdfRenewable Energy & Entrepreneurship Workshop_21Feb2024.pdf
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdfodunowoeminence2019
 
The relationship between iot and communication technology
The relationship between iot and communication technologyThe relationship between iot and communication technology
The relationship between iot and communication technologyabdulkadirmukarram03
 
How to Write a Good Scientific Paper.pdf
How to Write a Good Scientific Paper.pdfHow to Write a Good Scientific Paper.pdf
How to Write a Good Scientific Paper.pdfRedhwan Qasem Shaddad
 
nvidia AI-gtc 2024 partial slide deck.pptx
nvidia AI-gtc 2024 partial slide deck.pptxnvidia AI-gtc 2024 partial slide deck.pptx
nvidia AI-gtc 2024 partial slide deck.pptxjasonsedano2
 
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptx
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptxVertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptx
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptxLMW Machine Tool Division
 
UNIT4_ESD_wfffffggggggggggggith_ARM.pptx
UNIT4_ESD_wfffffggggggggggggith_ARM.pptxUNIT4_ESD_wfffffggggggggggggith_ARM.pptx
UNIT4_ESD_wfffffggggggggggggith_ARM.pptxrealme6igamerr
 
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...Amil baba
 
solar wireless electric vechicle charging system
solar wireless electric vechicle charging systemsolar wireless electric vechicle charging system
solar wireless electric vechicle charging systemgokuldongala
 
Design of Clutches and Brakes in Design of Machine Elements.pptx
Design of Clutches and Brakes in Design of Machine Elements.pptxDesign of Clutches and Brakes in Design of Machine Elements.pptx
Design of Clutches and Brakes in Design of Machine Elements.pptxYogeshKumarKJMIT
 

Último (20)

Clutches and brkesSelect any 3 position random motion out of real world and d...
Clutches and brkesSelect any 3 position random motion out of real world and d...Clutches and brkesSelect any 3 position random motion out of real world and d...
Clutches and brkesSelect any 3 position random motion out of real world and d...
 
計劃趕得上變化
計劃趕得上變化計劃趕得上變化
計劃趕得上變化
 
Landsman converter for power factor improvement
Landsman converter for power factor improvementLandsman converter for power factor improvement
Landsman converter for power factor improvement
 
Présentation IIRB 2024 Marine Cordonnier.pdf
Présentation IIRB 2024 Marine Cordonnier.pdfPrésentation IIRB 2024 Marine Cordonnier.pdf
Présentation IIRB 2024 Marine Cordonnier.pdf
 
Litature Review: Research Paper work for Engineering
Litature Review: Research Paper work for EngineeringLitature Review: Research Paper work for Engineering
Litature Review: Research Paper work for Engineering
 
Nodal seismic construction requirements.pptx
Nodal seismic construction requirements.pptxNodal seismic construction requirements.pptx
Nodal seismic construction requirements.pptx
 
Phase noise transfer functions.pptx
Phase noise transfer      functions.pptxPhase noise transfer      functions.pptx
Phase noise transfer functions.pptx
 
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...
Best-NO1 Best Rohani Amil In Lahore Kala Ilam In Lahore Kala Jadu Amil In Lah...
 
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdf
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdfsdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdf
sdfsadopkjpiosufoiasdoifjasldkjfl a asldkjflaskdjflkjsdsdf
 
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdf
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdfRenewable Energy & Entrepreneurship Workshop_21Feb2024.pdf
Renewable Energy & Entrepreneurship Workshop_21Feb2024.pdf
 
The relationship between iot and communication technology
The relationship between iot and communication technologyThe relationship between iot and communication technology
The relationship between iot and communication technology
 
How to Write a Good Scientific Paper.pdf
How to Write a Good Scientific Paper.pdfHow to Write a Good Scientific Paper.pdf
How to Write a Good Scientific Paper.pdf
 
Présentation IIRB 2024 Chloe Dufrane.pdf
Présentation IIRB 2024 Chloe Dufrane.pdfPrésentation IIRB 2024 Chloe Dufrane.pdf
Présentation IIRB 2024 Chloe Dufrane.pdf
 
nvidia AI-gtc 2024 partial slide deck.pptx
nvidia AI-gtc 2024 partial slide deck.pptxnvidia AI-gtc 2024 partial slide deck.pptx
nvidia AI-gtc 2024 partial slide deck.pptx
 
Lecture 4 .pdf
Lecture 4                              .pdfLecture 4                              .pdf
Lecture 4 .pdf
 
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptx
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptxVertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptx
Vertical- Machining - Center - VMC -LMW-Machine-Tool-Division.pptx
 
UNIT4_ESD_wfffffggggggggggggith_ARM.pptx
UNIT4_ESD_wfffffggggggggggggith_ARM.pptxUNIT4_ESD_wfffffggggggggggggith_ARM.pptx
UNIT4_ESD_wfffffggggggggggggith_ARM.pptx
 
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...
Popular-NO1 Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialis...
 
solar wireless electric vechicle charging system
solar wireless electric vechicle charging systemsolar wireless electric vechicle charging system
solar wireless electric vechicle charging system
 
Design of Clutches and Brakes in Design of Machine Elements.pptx
Design of Clutches and Brakes in Design of Machine Elements.pptxDesign of Clutches and Brakes in Design of Machine Elements.pptx
Design of Clutches and Brakes in Design of Machine Elements.pptx
 

Interactive Content Authoring for A153 ATSC Mobile Digital Television Employing Open Source Tools

  • 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