SlideShare a Scribd company logo
1 of 16
Implementing the Media
         Fragments URI
          Specification
Raphaël Troncy <raphael.troncy@eurecom.fr>,
Davy Van Deursen, Erik Mannens
Silvia Pfeiffer,
Yves Lafon
Use Case
 Aidem received on her Facebook
  wall a status message containing a
  Media Fragment URI
    Use a ‘#’ !
    Highlight a video
     sequence
    Highlight a region
     to pay attention to




    29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -2
Media Fragments URI

                                                                      Provide URI-based
                                                                      mechanisms for uniquely
                                                                      identifying fragments for
                                                                      media objects on the Web,
                                                                      such as video, audio, and
                                                                      images.


Photo credit: Robert Freund




     29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -3
Requirements
 r01: Temporal fragments:
    a clipping along the time dimension from a start to an end time that
     are within the duration of the media resource

 r02: Spatial fragments:
    a clipping of an image region, only consider rectangular regions

 r03: Track fragments:
    a track as exposed by a container format of the media resource

 r04: Named fragments:
    a media fragment - either a track, a time section, or a spatial region -
     that has been given a name through some sort of annotation
     mechanism



    29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -4
Side Conditions
 Restrict to what the container format (encapsulating the
  compressed media content) can express (and expose),
  thus no transcoding




 Protocol covered: HTTP(S), FILE, RTSP, RTMP
  http://www.w3.org/TR/media-frags-reqs/
    29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -5
Media Fragments processing

 General principle:
   Smart UA will strip out the fragment definition and
    encode it into custom http headers ...
   (Media) Servers will handle the request, slice the media
    content and serve just the fragment while old ones will
    serve the whole resource

 Four recipes proposed




   29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -6
Recipe 1: UA mapped byte ranges
 The User Agent knows how to map a custom unit into bytes and
  sends a normal Range request expressed in bytes




    29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -7
Recipe 1: UA mapped byte ranges




  29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -8
Recipe 2: Server mapped byte ranges
 The UA sends a Range request expressed in a custom unit (e.g.
  seconds), the server answers directly with a 206 Partial Content
  and indicates the mapping between bytes and the custom unit




     29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   -9
Recipe 2: Server mapped byte ranges




  29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 10
Recipe 3: Proxy cacheable variant
 The UA sends a Range request expressed in a custom unit (e.g.
  seconds), the server answers first with just a Head and the
  mapping between the custom unit and bytes so that the UA issues
  another normal
  Range request
  expressed this
  time in bytes
  making the
  answer
  cacheable.




     29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 11
Recipe 3: Proxy cacheable variant




  29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 12
Recipe 4: Serving playable resources
 The UA sends a Range request expressed in a custom unit (e.g.
  seconds), the server provides a multipart message body reply
  (multipart/byte-ranges) containing not only the bytes
  corresponding to requested media fragment but also the media
  header data making the resource playable.




     29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 13
Recipe 4: Serving playable resources




  29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 14
Implementation
 Media Fragment server (4 recipes supported):
    Ninsuna: http://ninsuna.elis.ugent.be/MediaFragmentsServer

 Media Fragment user agents:
    Ninsuna Flash player:
     http://ninsuna.elis.ugent.be/MediaFragmentsPlayer
         Supports recipe 1
    Silvia Pfeiffer's experiment with HTML5 + JS:
     http://annodex.net/~silvia/itext/mediafrag.html
         Supports recipe 1 (for .ogg files and time dimension)
    Firefox pluggin
     development in order to
     support all recipes
     (HTML5 +
     XMLHttpRequest)

    29/04/2010 -    Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 15
Issues
 Communicating with the media player
   HTML5 browser: patch submitted for Firefox
   Flash: need to build a custom player

 Media Fragments rendering
   Spatial dimension?

 Names/Tracks discovery
   Media Multitrack (JS) API:
    http://www.w3.org/WAI/PF/HTML/wiki/Media_MultitrackAPI

 Get involved?
  http://www.w3.org/TR/media-frags/
  http://lists.w3.org/Archives/Public/public-media-fragment/



    29/04/2010 -   Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA   - 16

More Related Content

Similar to Implementing the Media Fragments URI Specification

Deep-linking into Media Assets at the Fragment Level SMAM 2013
Deep-linking into Media Assets at the Fragment Level SMAM 2013Deep-linking into Media Assets at the Fragment Level SMAM 2013
Deep-linking into Media Assets at the Fragment Level SMAM 2013Raphael Troncy
 
M3.wp3.summary.of.meeting
M3.wp3.summary.of.meetingM3.wp3.summary.of.meeting
M3.wp3.summary.of.meetingMarin Nozhchev
 
SAMT09 - Web of Data Tutorial - Part 2
SAMT09 - Web of Data Tutorial - Part 2SAMT09 - Web of Data Tutorial - Part 2
SAMT09 - Web of Data Tutorial - Part 2Bernhard Haslhofer
 
Standards' Perspective - MPEG DASH overview and related efforts
Standards' Perspective - MPEG DASH overview and related effortsStandards' Perspective - MPEG DASH overview and related efforts
Standards' Perspective - MPEG DASH overview and related effortsIMTC
 
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11William Hall
 
D2.1. Specification of The Media Fragment URI Scheme
D2.1. Specification of The Media Fragment URI SchemeD2.1. Specification of The Media Fragment URI Scheme
D2.1. Specification of The Media Fragment URI SchemeLinkedTV
 
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEM
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEMSECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEM
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEMEditor IJMTER
 
Introduction to Internet Browsers
Introduction to Internet BrowsersIntroduction to Internet Browsers
Introduction to Internet BrowsersProf Ansari
 
Kurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCKurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCLuis Lopez
 
Enhancing Social Interactions at Conferences (Conferator System)
Enhancing Social Interactions at Conferences (Conferator System)Enhancing Social Interactions at Conferences (Conferator System)
Enhancing Social Interactions at Conferences (Conferator System)Fread Mzee
 
Media Fragments Indexing using Social Media
Media Fragments Indexing using Social MediaMedia Fragments Indexing using Social Media
Media Fragments Indexing using Social MediaLinkedTV
 
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & StreamingJAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & StreamingDr. Ranbijay Kumar
 
Empowerment Technologies Lecture 2 (Philippines SHS)
Empowerment Technologies Lecture 2 (Philippines SHS)Empowerment Technologies Lecture 2 (Philippines SHS)
Empowerment Technologies Lecture 2 (Philippines SHS)John Bosco Javellana, MAEd.
 
Understanding MPEG DASH
Understanding MPEG DASHUnderstanding MPEG DASH
Understanding MPEG DASHSeung-Bum Lee
 
Developing rich multimedia applications with FI-WARE.
Developing rich multimedia applications with FI-WARE.Developing rich multimedia applications with FI-WARE.
Developing rich multimedia applications with FI-WARE.Luis Lopez
 

Similar to Implementing the Media Fragments URI Specification (20)

Deep-linking into Media Assets at the Fragment Level SMAM 2013
Deep-linking into Media Assets at the Fragment Level SMAM 2013Deep-linking into Media Assets at the Fragment Level SMAM 2013
Deep-linking into Media Assets at the Fragment Level SMAM 2013
 
My Media at University of Toronto Libraries
My Media at University of Toronto LibrariesMy Media at University of Toronto Libraries
My Media at University of Toronto Libraries
 
M3.wp3.summary.of.meeting
M3.wp3.summary.of.meetingM3.wp3.summary.of.meeting
M3.wp3.summary.of.meeting
 
SAMT09 - Web of Data Tutorial - Part 2
SAMT09 - Web of Data Tutorial - Part 2SAMT09 - Web of Data Tutorial - Part 2
SAMT09 - Web of Data Tutorial - Part 2
 
Standards' Perspective - MPEG DASH overview and related efforts
Standards' Perspective - MPEG DASH overview and related effortsStandards' Perspective - MPEG DASH overview and related efforts
Standards' Perspective - MPEG DASH overview and related efforts
 
Intro cOMPUTERS
Intro cOMPUTERSIntro cOMPUTERS
Intro cOMPUTERS
 
Magnet links
Magnet linksMagnet links
Magnet links
 
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11
Episode 3(3): Birth & explosion of the World Wide Web - Meetup session11
 
D2.1. Specification of The Media Fragment URI Scheme
D2.1. Specification of The Media Fragment URI SchemeD2.1. Specification of The Media Fragment URI Scheme
D2.1. Specification of The Media Fragment URI Scheme
 
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEM
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEMSECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEM
SECURED SOCIAL TUBE TO AVOID REDUNDANT VIDEO SHARING IN OSN SYSTEM
 
Introduction to Internet Browsers
Introduction to Internet BrowsersIntroduction to Internet Browsers
Introduction to Internet Browsers
 
Kurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCKurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTC
 
On Linked Open Data (LOD)-based Semantic Video Annotation Systems
On Linked Open Data (LOD)-based  Semantic Video Annotation SystemsOn Linked Open Data (LOD)-based  Semantic Video Annotation Systems
On Linked Open Data (LOD)-based Semantic Video Annotation Systems
 
Enhancing Social Interactions at Conferences (Conferator System)
Enhancing Social Interactions at Conferences (Conferator System)Enhancing Social Interactions at Conferences (Conferator System)
Enhancing Social Interactions at Conferences (Conferator System)
 
Media Fragments Indexing using Social Media
Media Fragments Indexing using Social MediaMedia Fragments Indexing using Social Media
Media Fragments Indexing using Social Media
 
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & StreamingJAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
 
Empowerment Technologies Lecture 2 (Philippines SHS)
Empowerment Technologies Lecture 2 (Philippines SHS)Empowerment Technologies Lecture 2 (Philippines SHS)
Empowerment Technologies Lecture 2 (Philippines SHS)
 
Podcasting
PodcastingPodcasting
Podcasting
 
Understanding MPEG DASH
Understanding MPEG DASHUnderstanding MPEG DASH
Understanding MPEG DASH
 
Developing rich multimedia applications with FI-WARE.
Developing rich multimedia applications with FI-WARE.Developing rich multimedia applications with FI-WARE.
Developing rich multimedia applications with FI-WARE.
 

More from Raphael Troncy

K CAP 2019 Opening Ceremony
K CAP 2019 Opening CeremonyK CAP 2019 Opening Ceremony
K CAP 2019 Opening CeremonyRaphael Troncy
 
Semantic Technologies for Connected Vehicles in a Web of Things Environment
Semantic Technologies for Connected Vehicles in a Web of Things EnvironmentSemantic Technologies for Connected Vehicles in a Web of Things Environment
Semantic Technologies for Connected Vehicles in a Web of Things EnvironmentRaphael Troncy
 
HyperTED: exploring video lectures at the fragment levels for enhancing learning
HyperTED: exploring video lectures at the fragment levels for enhancing learningHyperTED: exploring video lectures at the fragment levels for enhancing learning
HyperTED: exploring video lectures at the fragment levels for enhancing learningRaphael Troncy
 
Location Embeddings for Next Trip Recommendation
Location Embeddings for Next Trip RecommendationLocation Embeddings for Next Trip Recommendation
Location Embeddings for Next Trip RecommendationRaphael Troncy
 
A replication study of the top performing systems in SemEval twitter sentimen...
A replication study of the top performing systems in SemEval twitter sentimen...A replication study of the top performing systems in SemEval twitter sentimen...
A replication study of the top performing systems in SemEval twitter sentimen...Raphael Troncy
 
Contextualizing Events in TV News Shows - SNOW 2014
Contextualizing Events in TV News Shows - SNOW 2014Contextualizing Events in TV News Shows - SNOW 2014
Contextualizing Events in TV News Shows - SNOW 2014Raphael Troncy
 
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014Modeling Geometry and Reference Systems on the Web of Data - LGD 2014
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014Raphael Troncy
 
NERD: an open source platform for extracting and disambiguating named entitie...
NERD: an open source platform for extracting and disambiguating named entitie...NERD: an open source platform for extracting and disambiguating named entitie...
NERD: an open source platform for extracting and disambiguating named entitie...Raphael Troncy
 
Semantics at the multimedia fragment level SSSW 2013
Semantics at the multimedia fragment level SSSW 2013Semantics at the multimedia fragment level SSSW 2013
Semantics at the multimedia fragment level SSSW 2013Raphael Troncy
 
Semantic structuring and linking of event-centric data in the social web
Semantic structuring and linking of event-centric data in the social webSemantic structuring and linking of event-centric data in the social web
Semantic structuring and linking of event-centric data in the social webRaphael Troncy
 
Live topic generation from event streams
Live topic generation from event streamsLive topic generation from event streams
Live topic generation from event streamsRaphael Troncy
 
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the Crowd
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the CrowdMediaFinder: Collect, Enrich and Visualize Media Memes Shared by the Crowd
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the CrowdRaphael Troncy
 
EventMedia Live: Exploring Events Connections in Real-Time to Enhance Content
EventMedia Live: Exploring Events Connections in Real-Time to Enhance ContentEventMedia Live: Exploring Events Connections in Real-Time to Enhance Content
EventMedia Live: Exploring Events Connections in Real-Time to Enhance ContentRaphael Troncy
 
Extracting Media Items from Multiple Social Networks
Extracting Media Items from Multiple Social NetworksExtracting Media Items from Multiple Social Networks
Extracting Media Items from Multiple Social NetworksRaphael Troncy
 
Semantics at the multimedia fragment level or how enabling the remixing of on...
Semantics at the multimedia fragment level or how enabling the remixing of on...Semantics at the multimedia fragment level or how enabling the remixing of on...
Semantics at the multimedia fragment level or how enabling the remixing of on...Raphael Troncy
 
MediaEval 2012 SED Opening
MediaEval 2012 SED OpeningMediaEval 2012 SED Opening
MediaEval 2012 SED OpeningRaphael Troncy
 
DeRiVE 2011 workshop opening
DeRiVE 2011 workshop openingDeRiVE 2011 workshop opening
DeRiVE 2011 workshop openingRaphael Troncy
 
MediaEval 2011 SED Opening
MediaEval 2011 SED OpeningMediaEval 2011 SED Opening
MediaEval 2011 SED OpeningRaphael Troncy
 
ShareIt: Mining SocialMedia Activities for Detecting Events
ShareIt: Mining SocialMedia Activities for Detecting EventsShareIt: Mining SocialMedia Activities for Detecting Events
ShareIt: Mining SocialMedia Activities for Detecting EventsRaphael Troncy
 
Finding media illustrating events
Finding media illustrating eventsFinding media illustrating events
Finding media illustrating eventsRaphael Troncy
 

More from Raphael Troncy (20)

K CAP 2019 Opening Ceremony
K CAP 2019 Opening CeremonyK CAP 2019 Opening Ceremony
K CAP 2019 Opening Ceremony
 
Semantic Technologies for Connected Vehicles in a Web of Things Environment
Semantic Technologies for Connected Vehicles in a Web of Things EnvironmentSemantic Technologies for Connected Vehicles in a Web of Things Environment
Semantic Technologies for Connected Vehicles in a Web of Things Environment
 
HyperTED: exploring video lectures at the fragment levels for enhancing learning
HyperTED: exploring video lectures at the fragment levels for enhancing learningHyperTED: exploring video lectures at the fragment levels for enhancing learning
HyperTED: exploring video lectures at the fragment levels for enhancing learning
 
Location Embeddings for Next Trip Recommendation
Location Embeddings for Next Trip RecommendationLocation Embeddings for Next Trip Recommendation
Location Embeddings for Next Trip Recommendation
 
A replication study of the top performing systems in SemEval twitter sentimen...
A replication study of the top performing systems in SemEval twitter sentimen...A replication study of the top performing systems in SemEval twitter sentimen...
A replication study of the top performing systems in SemEval twitter sentimen...
 
Contextualizing Events in TV News Shows - SNOW 2014
Contextualizing Events in TV News Shows - SNOW 2014Contextualizing Events in TV News Shows - SNOW 2014
Contextualizing Events in TV News Shows - SNOW 2014
 
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014Modeling Geometry and Reference Systems on the Web of Data - LGD 2014
Modeling Geometry and Reference Systems on the Web of Data - LGD 2014
 
NERD: an open source platform for extracting and disambiguating named entitie...
NERD: an open source platform for extracting and disambiguating named entitie...NERD: an open source platform for extracting and disambiguating named entitie...
NERD: an open source platform for extracting and disambiguating named entitie...
 
Semantics at the multimedia fragment level SSSW 2013
Semantics at the multimedia fragment level SSSW 2013Semantics at the multimedia fragment level SSSW 2013
Semantics at the multimedia fragment level SSSW 2013
 
Semantic structuring and linking of event-centric data in the social web
Semantic structuring and linking of event-centric data in the social webSemantic structuring and linking of event-centric data in the social web
Semantic structuring and linking of event-centric data in the social web
 
Live topic generation from event streams
Live topic generation from event streamsLive topic generation from event streams
Live topic generation from event streams
 
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the Crowd
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the CrowdMediaFinder: Collect, Enrich and Visualize Media Memes Shared by the Crowd
MediaFinder: Collect, Enrich and Visualize Media Memes Shared by the Crowd
 
EventMedia Live: Exploring Events Connections in Real-Time to Enhance Content
EventMedia Live: Exploring Events Connections in Real-Time to Enhance ContentEventMedia Live: Exploring Events Connections in Real-Time to Enhance Content
EventMedia Live: Exploring Events Connections in Real-Time to Enhance Content
 
Extracting Media Items from Multiple Social Networks
Extracting Media Items from Multiple Social NetworksExtracting Media Items from Multiple Social Networks
Extracting Media Items from Multiple Social Networks
 
Semantics at the multimedia fragment level or how enabling the remixing of on...
Semantics at the multimedia fragment level or how enabling the remixing of on...Semantics at the multimedia fragment level or how enabling the remixing of on...
Semantics at the multimedia fragment level or how enabling the remixing of on...
 
MediaEval 2012 SED Opening
MediaEval 2012 SED OpeningMediaEval 2012 SED Opening
MediaEval 2012 SED Opening
 
DeRiVE 2011 workshop opening
DeRiVE 2011 workshop openingDeRiVE 2011 workshop opening
DeRiVE 2011 workshop opening
 
MediaEval 2011 SED Opening
MediaEval 2011 SED OpeningMediaEval 2011 SED Opening
MediaEval 2011 SED Opening
 
ShareIt: Mining SocialMedia Activities for Detecting Events
ShareIt: Mining SocialMedia Activities for Detecting EventsShareIt: Mining SocialMedia Activities for Detecting Events
ShareIt: Mining SocialMedia Activities for Detecting Events
 
Finding media illustrating events
Finding media illustrating eventsFinding media illustrating events
Finding media illustrating events
 

Recently uploaded

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Implementing the Media Fragments URI Specification

  • 1. Implementing the Media Fragments URI Specification Raphaël Troncy <raphael.troncy@eurecom.fr>, Davy Van Deursen, Erik Mannens Silvia Pfeiffer, Yves Lafon
  • 2. Use Case  Aidem received on her Facebook wall a status message containing a Media Fragment URI  Use a ‘#’ !  Highlight a video sequence  Highlight a region to pay attention to 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -2
  • 3. Media Fragments URI Provide URI-based mechanisms for uniquely identifying fragments for media objects on the Web, such as video, audio, and images. Photo credit: Robert Freund 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -3
  • 4. Requirements  r01: Temporal fragments:  a clipping along the time dimension from a start to an end time that are within the duration of the media resource  r02: Spatial fragments:  a clipping of an image region, only consider rectangular regions  r03: Track fragments:  a track as exposed by a container format of the media resource  r04: Named fragments:  a media fragment - either a track, a time section, or a spatial region - that has been given a name through some sort of annotation mechanism 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -4
  • 5. Side Conditions  Restrict to what the container format (encapsulating the compressed media content) can express (and expose), thus no transcoding  Protocol covered: HTTP(S), FILE, RTSP, RTMP http://www.w3.org/TR/media-frags-reqs/ 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -5
  • 6. Media Fragments processing  General principle:  Smart UA will strip out the fragment definition and encode it into custom http headers ...  (Media) Servers will handle the request, slice the media content and serve just the fragment while old ones will serve the whole resource  Four recipes proposed 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -6
  • 7. Recipe 1: UA mapped byte ranges  The User Agent knows how to map a custom unit into bytes and sends a normal Range request expressed in bytes 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -7
  • 8. Recipe 1: UA mapped byte ranges 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -8
  • 9. Recipe 2: Server mapped byte ranges  The UA sends a Range request expressed in a custom unit (e.g. seconds), the server answers directly with a 206 Partial Content and indicates the mapping between bytes and the custom unit 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA -9
  • 10. Recipe 2: Server mapped byte ranges 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 10
  • 11. Recipe 3: Proxy cacheable variant  The UA sends a Range request expressed in a custom unit (e.g. seconds), the server answers first with just a Head and the mapping between the custom unit and bytes so that the UA issues another normal Range request expressed this time in bytes making the answer cacheable. 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 11
  • 12. Recipe 3: Proxy cacheable variant 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 12
  • 13. Recipe 4: Serving playable resources  The UA sends a Range request expressed in a custom unit (e.g. seconds), the server provides a multipart message body reply (multipart/byte-ranges) containing not only the bytes corresponding to requested media fragment but also the media header data making the resource playable. 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 13
  • 14. Recipe 4: Serving playable resources 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 14
  • 15. Implementation  Media Fragment server (4 recipes supported):  Ninsuna: http://ninsuna.elis.ugent.be/MediaFragmentsServer  Media Fragment user agents:  Ninsuna Flash player: http://ninsuna.elis.ugent.be/MediaFragmentsPlayer Supports recipe 1  Silvia Pfeiffer's experiment with HTML5 + JS: http://annodex.net/~silvia/itext/mediafrag.html Supports recipe 1 (for .ogg files and time dimension)  Firefox pluggin development in order to support all recipes (HTML5 + XMLHttpRequest) 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 15
  • 16. Issues  Communicating with the media player  HTML5 browser: patch submitted for Firefox  Flash: need to build a custom player  Media Fragments rendering  Spatial dimension?  Names/Tracks discovery  Media Multitrack (JS) API: http://www.w3.org/WAI/PF/HTML/wiki/Media_MultitrackAPI  Get involved? http://www.w3.org/TR/media-frags/ http://lists.w3.org/Archives/Public/public-media-fragment/ 29/04/2010 - Implementing the Media Fragments URI Specification - WWW 2010, Raleigh, USA - 16