This wiki has been archived and is now read-only.


From Web and Broadcasting Business Group
Jump to: navigation, search

Media Presentation Extensions



  • Yosuke Funahashi, Tomo-Digi Coporation


There are fundamental differences in the way broadcasters and web developers manage web apps and media content. The current workflow for media content in the broadcasting industry requires broadcasters to attach web apps to the media content, not media content to the web app as is common among web developers. Ideally, while users watch media content with web apps attached, the presentation of media content should remain on the screen without dropping a frame when a user or a broadcaster changes the front-most web app. This use case can be generalised by changing the actor, here a broadcaster, into any media content service provider who manages their web apps in this media-content-centric way.

Broadcasters and CE manufactures have already implemented this feature within regional DTV standards by extending HTML4.01 or XHTML2.0/2.1. One drawback of the regional DTV standards is the sheer diversity of syntax despite their semantics (use cases) being identical. It is therefore important to define this feature not in regional standards but in a global standard. However, the current W3C web platform standards, including HTML5, don’t have a simple mechanism to satisfy this use case. So we would like to propose developing a new mechanism to enable this.

Use Cases

UC-1: View uninterrupted video while switching between web apps


  • Viewer (primary)

Primary Scenario

  • Viewer starts watching a TV program on a TV set, selecting ‘channel one’ with a remote.
  • A web app associated with the TV channel is downloaded from the net and shares the TV screen with the TV program.
  • Viewer follows links in the web app to other apps. The presentation (both video and audio) of the TV program is not interrupted while the viewer is switching web apps.
  • Viewer switches to ‘channel eight’ with the remote. The web app being shown is terminated immediately before the TV set tunes to the new channel. Then the new app associated with ‘channel eight’ is downloaded and displayed.

UC-2: Manage web apps in a media-content-centric way


  • Broadcaster (primary)
  • Web Developer

Primary Scenario

These days, broadcasters provide over the air and/or through the Net many web applications related to their programs. This can lead to video interruptions when a broadcaster is changing programs accompanying web apps and/or users are changing web apps while watching a program.

If two apps are created by the same web developer, it is relatively easy to achieve uninterrupted video play during the switch at a realistic cost. However, real world situation is different and broadcasters most often rely on multiple developers. When the app developers are different, achieving uninterrupted video play requires impossible overheads in time, effort and cost in the development process. Add to this, the fact that broadcasters determine the order of programs to be aired after web apps have been developed, at times at the very moment of broadcast, the severity of the problem is obvious. For some broadcasters this problem may seem minor as they provide only one or two applications per year. However, some broadcasters provide as many applications as their programs require and this can total around one hundred per week.

So we need a new mechanism that enables web browsers to play video uninterruptedly while switching from any app to any other app.

Some people say we can solve this problem with JS libraries or application frameworks without having a new mechanism in the standards. But these solutions cause testing problems. The functions and UIs of these applications vary broadly, e.g. one application may provide detailed information about the Olympic Games while another application enables viewer voting. Broadcasters need to test whether the variety of apps will switch well for all the possible permutations of application order before they air programs with attached web apps. So solving this problem by a standard for user agents or web browsers is the only realistic solution.

Functional Requirements

  • No interruptions in the presentation of video and audio while switching web apps
    • As long as tuning is maintained, video and audio must be presented uninterruptedly even during a web-app transition
      • To enable the continuation of such audio-visual presentation while switching the front-most HTML5 web app that existing DTV standards have already implemented by extending HTML4.01 or XHTML2.0/2.1 with regional APIs
      • To enable the continuation of video and audio streams while switching web apps only if some well-defined conditions are satisfied such as media tags having the same URL as their media source in both web apps.
  • Automatic change of web applications in response to channel switching
    • Auto-start when tuned in and auto-terminate when tuned out
    • Web-app urls are determined and notified by the broadcaster on each channel

Solution Ideas

  • SI-1: Layered Tab with Alpha Channel
    • All major web browsers already have a tab feature: they can run multiple browsing contexts with window objects simultaneously. We can create a new mechanism that satisfies the use cases by adding two new features to the tab. One is a tab containing an alpha channel that displays other tabs behind it. The other is a function and a set of rules that bind tabs to each other and set how they communicate. This function and set of rules should be designed with security getting careful consideration.
  • SI-2: A Device API
    • Defining a new interface for a navigator object. App developers can set information through the interface to tell a browser which media tag should continue playing content. The browser may notify lower layer components of information to continuously play the content, in which case, most of the work will be done outside the browser.
  • SI-3: New Attributes for Video and Audio Tags
    • A variant of SI-2. Adding new attributes to video and audio tags to notify a browser which media tag should continue playing the content.