Home Network Content API

Unofficial Draft 10 March 2011

Editor:
Giuseppe Pascale, Opera Software
Authors:
Bob Lund, CableLabs
Clarke Stevens, CableLabs
Giuseppe Pascale, Opera Software

Abstract

There is an increasing amount of personal content on devices connected to the home network that users would like to be able to access from any device in the home (personal computers, tablets, mobile phones, TVs and others).

This document lists the design goals and requirements that specifications would have to follow in order to enable web applications to discover this content on the home network and present a user interface to the user to facilitate discovery and playback of this content.

Status of This Document

This document is merely a public working draft of a potential specification. It has no official standing of any kind and does not represent the support or consensus of any standards organisation.

Table of Contents

1. Introduction

This section is non-normative.

There is an increasing amount of personal content on devices connected to the home network that users would like to be able to access from any device in the home (personal computers, tablets, mobile phones, TVs and others).

Many commercial video providers (CVP) currently provide the ability for a user to access CVP content stored on a home network device, for example a digital video recorder (DVR), from another home network device, for example a set-top-box (STB). A home network content discovery and control protocol is used by the DVR and STB to provide this access, through a native interface on the device.

The dominant scenario today is for the user to discover home network content and play it back from the same device such as a personal computer or a connected television. This is called the 2-Box A/V model in [UPNP11arch]. An emerging scenario is for the content discovery and control to take place on a handheld device, such as a smartphone or tablet computer, and for the handheld device to instruct a content player, a connected television for instance, to playback content from a content server such as a DVR. This is called the 3-Box A/V model in [UPNP11arch].

In all use cases, security mechanisms are in place to protect user privacy and content owners’ rights.

There is currently no formally standardized way to build a web application that is able to use content discovery and control protocols to get access to the content available on different devices in the home network. This document lists the design goals and requirements that specifications need to address in order to cover such gap. This would enable content providers to deliver web applications to any conforming device in order to enhance and harmonize the user experience

2. Conformance

As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.

The key words must, must not, required, should, should not, recommended, may, and optional in this specification are to be interpreted as described in [RFC2119].

This specification only applies to one class of product: W3C Technical Reports. A number of specifications may be created to address the requirements enumerated in this document. In some cases the union of multiple parts of different specifications may be needed to address a single requirement. Nevertheless, this document speaks only of a conforming specification.

A conforming specification is one that addresses one or more requirements listed in this document. A conforming specification should attempt to address requirements marked with the keywords "should" or "may" unless there is a technically valid reason not to do so.

3. Design Goals

Compatibility with widely deployed standards

Two home network protocols, UPnP and M-DNS/DNS-SD, are in popular use today for sharing content in a home network.
@@@ Would be good to privide some numbers to make the use cases even stronger @@@

This specification sets out the requirements for an API that would enable interaction with those protocols.

@@@ TODO: add more design goals @@@

4. Requirements

In order to enable a web application to discover devices, services and content in the home network the following requirements are identified:

4.1 2-Box A/V Model

  1. User agents should provide a JavaScript API for discovering home network web-servers that host applications which advertise content and other services.
  2. User agents should support means to negotiate a supported content type format with the server.
  3. User agents should provide a means to control the rendering of content advertised by the home network web-server.
  4. User agents should support the content protection mechanism for a content item used by the server in order to playback that content item. User agents must provide a graceful failure model for when DRM is not supported.

4.2 3-Box A/V Model

  1. User agents should provide a means for discovery of home network content servers and content accessible from those servers as well as home network content players.
  2. User agents should provide a means for controlling the playback of content from content servers to content players.
  3. User agents should provide a means for discovering rendering devices on the home network capable of rendering the selected content.

A. Acknowledgements

...

B. References

B.1 Normative references

[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Internet RFC 2119. URL: http://www.ietf.org/rfc/rfc2119.txt

B.2 Informative references

[UPNP11arch]
UPnP Forum. UPnP Device Architecture version 1.1 October 15, 2008. URL: http://upnp.org/specs/arch/UPnP-arch-DeviceArchitecture-v1.1.pdf