Abstract
The Web is a natural platform for multimedia, with universal reach, powerful backend services, and a rich selection of components for capture, interactivity, and presentation. In addition, with a strong commitment to modularity, composition, and interoperability, the Web should allow advanced media experiences to be constructed by harnessing the combined power of simpler components. Unfortunately, with timed media this may be complicated, as media components require synchronization to provide a consistent experience. This is particularly the case for distributed media experiences. In this chapter we focus on temporal interoperability on the Web, how to allow heterogeneous media components to operate consistently together, synchronized to a common timeline and subject to shared media control. A programming model based on external timing is presented, enabling modularity, interoperability, and precise timing among media components, in single-device as well as multi-device media experiences. The model has been proposed within the W3C Multi-device Timing Community Group as a new standard, and this could establish temporal interoperability as one of the foundations of the Web platform.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Motion as in motion pictures. Moving through media still remains a good way to conceptualize media experiences, not least as media experiences become virtual and immersive.
- 2.
Media component: anything from a simple DOM element with text, to a highly sophisticated media player or multimedia framework.
- 3.
Mediated by timing objects.
- 4.
In this chapter, the Web is seen through the eyes of an end user browsing the Web with his/her favorite user agent in 2017.
- 5.
There may be more than one event loop, more than one queue of tasks per event loop, and event loops also have a micro-task queue that helps prioritizing some of the tasks added by HTML algorithms, but this does not change the gist of the comments contained in this section.
- 6.
In the future, it may be possible to re-create a seekable stream out of a MediaStream, thanks to the MediaRecorder interface defined in the MediaStream Recording specification [25]. This specification is not yet stable when this book is written.
- 7.
Some animation frameworks support acceleration. Acceleration broadens the utility of motions, yet will likely be ignored in common use cases in classical media (see Sect. 17.7.2).
References
Adobe: Adobe Flash. https://www.adobe.com/products/flashruntimes.html
Arntzen, I.M., Borch, N.T.: Composite Media, a new paradigm for online media. In: 2013 NEM Summit (Networked Electronic Media), NEM Summit ’13, pp. 105–110. Eurescom (2013). http://nem-initiative.org/wp-content/uploads/2015/06/2013-NEM-Summit_Proceedings.pdf
Arntzen, I.M., Borch, N.T.: Timingsrc: A programming model for timed Web applications, based on the Timing Object. In: Precise Timing, Synchronization and Control Enabled for Single-Device and Multi-device Web Applications (2015). http://webtiming.github.io/timingsrc/
Arntzen, I.M., Borch, N.T.: Data-independent sequencing with the timing Object: a JavaScript sequencer for single-device and Multi-device Web Media. In: Proceedings of the 7th International Conference on Multimedia Systems, MMSys’16, pp. 24:1–24:10. ACM, New York, NY, USA (2016). https://doi.org/10.1145/2910017.2910614
Arntzen, I.M., Borch, N.T., Daoust, F., Hazael-Massieux, D.: Multi-device Linear Composition on the Web; enabling multi-device linear Media with HTMLTimingobject and shared motion. In: Media Synchronization Workshop (MediaSync) in conjunction with ACM TVX 2015. ACM (2015). https://sites.google.com/site/mediasynchronization/Paper4_Arntzen_webComposition_CR.pdf
Arntzen, I.M., Borch, N.T., Needham, C.P.: The media state vector: a unifying concept for multi-device media navigation. In: Proceedings of the 5th Workshop on Mobile Video, MoVid’13, pp. 61–66. ACM, New York, NY, USA (2013). https://doi.org/10.1145/2457413.2457427
Arntzen, I.M., Daoust, F., Borch, N.T.: Timing Object; Draft community group report. http://webtiming.github.io/timingobject/ (2015)
Borch, N.T., Arntzen, I.M.: Distributed Synchronization of HTML5 Media. Technical report 15, Norut Northern Research Institute (2014)
Borch, N.T., Arntzen, I.M.: Mediasync Report 2015: Evaluating timed playback of HTML5 Media. Technical report 28, Norut Northern Research Institute (2015)
Document Object Model (DOM) Level-1 (1998). https://www.w3.org/TR/REC-DOM-Level-1/
Document Object Model (DOM) Level-2 (2000). https://www.w3.org/TR/DOM-Level-2/
Document Object Model (DOM) Level-2 Events (2000). https://www.w3.org/TR/DOM-Level-2-Events/
Eidson, J., Lee, K.: IEEE 1588 standard for a precision clock synchronization protocol for networked measurement and control systems. In: Sensors for Industry Conference, 2002. 2nd ISA/IEEE, pp. 98–105. IEEE (2002)
Google (2017). https://www.google.com
High Resolution Time (2012). https://www.w3.org/TR/hr-time-1/
High Resolution Time Level 2 (2016). https://www.w3.org/TR/hr-time-2/
HTML 3.2 Reference Specification (1997). https://www.w3.org/TR/REC-html32
HTML5 (2014). https://www.w3.org/TR/html5/
HTML5 Media Elements (2012). http://dev.w3.org/html5/spec-preview/media-elements.html
HTML5.1 (2016). https://www.w3.org/TR/html51/
HTML5 Media Controller (2014). https://dev.w3.org/html5/spec-preview/media-elements.html
HTML5 Text Track (2012). http://dev.w3.org/html5/spec-preview/media-elements.html#text-track
Media Capture and Streams (2016). https://www.w3.org/TR/mediacapture-streams/
Media Source Extensions (2016). https://www.w3.org/TR/media-source/
MediaStream Recording (2017). https://www.w3.org/TR/mediastream-recording/
Microsoft (2017). https://www.microsoft.com/
Mills, D.L.: Internet time synchronization: the network time protocol. IEEE Trans. Commun. 39(10), 1482–1493 (1991). https://doi.org/10.1109/26.103043
Motion Corporation. http://motioncorporation.com
Mozilla (2017). https://www.mozilla.org
MPEG-4 Systems (2005). http://mpeg.chiariglione.org/standards/mpeg-4/systems
Multi-device Timing Community Group (2015). https://www.w3.org/community/webtiming/
RealPlayer (2017). http://www.real.com/
Scalable Vector Graphics (SVG) 1.1 (2011). https://www.w3.org/TR/SVG/
Synchronized Multimedia Integration Language (SMIL) 1.0 Specification (1998). https://www.w3.org/TR/1998/REC-smil-19980615/
SMIL 3.0 Synchronized Multimedia Integration Language (2008). http://www.w3.org/TR/REC-smil/
Smil Animation (2001). https://www.w3.org/TR/smil-animation/
Twitter (2017). https://twitter.com/
The Web Socket Protocol (2011). https://tools.ietf.org/html/rfc6455
Video synchronization by Motion Corporation (2015). https://youtu.be/lfoUstnusIE
W3C DOM4 (2015). https://www.w3.org/TR/dom/
Web Animations (2016). http://www.w3.org/TR/web-animations/
Web Audio API (2015). https://www.w3.org/TR/webaudio/
Web Workers (2015). https://www.w3.org/TR/workers/
WebGL (2017). https://www.khronos.org/webgl/
WebRTC Real-time Communication Between Browsers (2017). https://www.w3.org/TR/webrtc/
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this chapter
Cite this chapter
Arntzen, I.M., Borch, N.T., Daoust, F. (2018). Media Synchronization on the Web. In: Montagud, M., Cesar, P., Boronat, F., Jansen, J. (eds) MediaSync. Springer, Cham. https://doi.org/10.1007/978-3-319-65840-7_17
Download citation
DOI: https://doi.org/10.1007/978-3-319-65840-7_17
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-65839-1
Online ISBN: 978-3-319-65840-7
eBook Packages: Computer ScienceComputer Science (R0)