SlideShare a Scribd company logo
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

PDF
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
PDF
SMPTE Toronto Presentation - IPTV and Social Media On The TV Industry
PDF
SMPTE Toronto Presentation - Multi Camera High Definition TV Studio and Roger...
PDF
Helix Universal Server v15
PPT
Internetix Video Kills
PDF
Cvaa webinar 20120612
PPT
SIP2SIP - Direcciones SIP gratuitas para las masas
PDF
Video Digitization
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
SMPTE Toronto Presentation - IPTV and Social Media On The TV Industry
SMPTE Toronto Presentation - Multi Camera High Definition TV Studio and Roger...
Helix Universal Server v15
Internetix Video Kills
Cvaa webinar 20120612
SIP2SIP - Direcciones SIP gratuitas para las masas
Video Digitization

What's hot (20)

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

Similar to Interactive Content Authoring for A153 ATSC Mobile Digital Television Employing Open Source Tools (20)

PDF
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
PPTX
Augmented Reality: Connecting physical and digital worlds
PPTX
3DgraphicsAndAR
PDF
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...
PPT
CAVE/RC-to-street
PPTX
Introduction to HTML5 & CSS3
PPTX
Supporting Digital Media Workflows in the Cloud with Perforce Helix
PDF
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
PPTX
Mpeg ARAF tutorial @ ISMAR 2014
PPTX
Html5
PPTX
HTML5 Programming
PPTX
Web rtc 入門
PDF
Maya Pipeline Code Samples
PDF
Programming WebRTC Build Real Time Streaming Applications for the Web 1st Edi...
PDF
20CS2008 Computer Networks
PDF
HTML5 Introduction
PDF
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
PDF
Web Architecture and Technologies
PDF
Streaming Sensor Data Slides_Virender
Interactive Content Authoring for A/153 ATSC Mobile Digital Television Employ...
Augmented Reality: Connecting physical and digital worlds
3DgraphicsAndAR
Introduction to the Tizen SDK 2.0.0 Alpha - Taiho Choi (Samsung) - Korea Lin...
CAVE/RC-to-street
Introduction to HTML5 & CSS3
Supporting Digital Media Workflows in the Cloud with Perforce Helix
Unleash the Power of Video Communication - Office 365 Video vs. Azure Media S...
Mpeg ARAF tutorial @ ISMAR 2014
Html5
HTML5 Programming
Web rtc 入門
Maya Pipeline Code Samples
Programming WebRTC Build Real Time Streaming Applications for the Web 1st Edi...
20CS2008 Computer Networks
HTML5 Introduction
ShowNTell: An easy-to-use tool for answering students’ questions with voice-o...
Web Architecture and Technologies
Streaming Sensor Data Slides_Virender
Ad

Recently uploaded (20)

PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPT
Project quality management in manufacturing
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
Lecture Notes Electrical Wiring System Components
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Welding lecture in detail for understanding
PPTX
Sustainable Sites - Green Building Construction
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PPTX
web development for engineering and engineering
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
UNIT 4 Total Quality Management .pptx
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
DOCX
573137875-Attendance-Management-System-original
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Digital Logic Computer Design lecture notes
PPTX
Geodesy 1.pptx...............................................
PPT
Mechanical Engineering MATERIALS Selection
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
bas. eng. economics group 4 presentation 1.pptx
Project quality management in manufacturing
Operating System & Kernel Study Guide-1 - converted.pdf
Lecture Notes Electrical Wiring System Components
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Welding lecture in detail for understanding
Sustainable Sites - Green Building Construction
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
web development for engineering and engineering
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
UNIT 4 Total Quality Management .pptx
Automation-in-Manufacturing-Chapter-Introduction.pdf
573137875-Attendance-Management-System-original
R24 SURVEYING LAB MANUAL for civil enggi
Foundation to blockchain - A guide to Blockchain Tech
Digital Logic Computer Design lecture notes
Geodesy 1.pptx...............................................
Mechanical Engineering MATERIALS Selection

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