HNTF/Home Network TF Discussions/HomeNetworkUA MediaPlayer
Use Case: Home Network Enabled User-Agent - Network Media Player
Submitter(s): Samsung Electronics (Russell Berkoff)
Description:
- Enable a User-Agent to act as a Home Network Media Player
Need/justification:
- Existing Home Network interfaces do not (by scope/tradition) standardize user interface control. However, the combination of HTML markup and Javascript allow both access to Home Network devices functions and access to very capable user interface resources.
Scenarios
- The User-Agent acts as a Home Network Media Player device. For example:
- List available Home Network Media Server devices. Steps
- List available content on a Home Network Media Server. Steps
- List available content on a Home Network Media Server matching specified metadata criteria. Steps
- Determine capabilities of User-Agent playback facilities provided to Home Network Media Player.
Ex: supported content formats, # of streams, supported resolution(s). - Play content from a Home Network Media Server. Steps
- View EPG data from a Home Network Media Server. Steps
- Tune and play live programs from a Home Network Media Server capable of streaming live content.
- Select and play recorded content from a Home Network Recording device.
- Why were you not able to use only existing standards to accomplish this?
- HTML User-Agents do not provided the abstractions necessary for Javascript to issue discover and issue commands to home network devices.
- Basic access methods to home network devices need to be standardized so that developers can implement pages to control Home Network devices using Javascript/HTML.
- What might you suggest could be standardized?
- Provide generic access methods to enable a User-Agent to discover and command home network devices.
- Provide extensions to HTML5 <video>, <audio> elements to allow HTML5 to comply with Home Network Media Transport Requirements (mainly transport protocol specific headers). Also, provide backward-compatible extensions to previous HTML versions to support similar functionality (presumably as browser-plugins).
- Provide access and privacy controls for untrusted pages accessing home network devices.
- Allow pages to control future Home Network device classes where the comand sets are not currently known.
- Allow pages to discover functional differences (optional functionality) that may be implemented in some but not all Home Network ecosystem devices.
Steps:
- The User-Agent acts as a Home Network Media Player device.
- List available Home Network Media Server devices.
- Web page issues a method to discover home network devices
- User-Agent gets an event indicating the list is ready.
- User-Agent retrieves a list of handles representing the discovered devices
- Web page issues a method to get information about each discovered device
- Web page retains handles for devices of the appropriate type.
- Web page displays available devices to end-user.
- End-User selects one of the displayed devices.
- Web page issues method to access the device.
- User-Agent responds that a password is required.
- Web page obtains the password from the end-user (or secure password store) and issues method to provide the password to the User-Agent
- Web page can now access the device.
- List available content on a Home Network Media Server.
- Web page formats an action request to browse the Home Network device metadata store.
- Web page issues method to send action request to selected Home Network device
- User-Agent sends request to Home Network Media Server device.
- User-Agent generates event when Home Network device responds (or times-out)
- Web page gets response (XML document) from Home Network Media Server device.
- Web page displays containers and items as indicated in XML document
This depends on the data representation of Home Network Media Server content metadata. - Web page displays the information in the Home Media Server response.
- List available content on a Home Network Media Server matching specified metadata criteria.
- Web page formats an action request to determine searchable metadata on the selected Home Network device metadata store.
- Web page issues method to send action request to selected Home Network device.
- Web page formats an action request to search the Home Network device metadata store.
- Web page issues method to send action request to selected Home Network device
- User-Agent sends request to Home Network Media Server device.
- User-Agent generates event when Home Network device responds (or times-out)
- Web page gets response (XML document) from Home Network Media Server device.
- Web page displays containers and items as indicated in XML document
- Play content from a Home Network Media Server.
- End-user select displayed Home Network Media Server item for playback.
- Web page formats an action request to browse metadata for selected item.
- User-Agent sends request to Home Network Media Server device.
- User-Agent generates event when Home Network device responds (or times-out)
- Web page gets response (XML document) from Home Network Media Server device.
- Web page selects media binary format that is compatible with User-Agent.
- Web page displays Media Player using HTML5 <video> element.
- Web page transfers item URL to <video> element @src (or creates <source> element as child-element)
- View EPG data from a Home Network Media Server.
- Web page formats an action request to determine root container(s) for EPG data on the selected Home Network device metadata store.
- Web page issues method to send action request to selected Home Network device.
- Web page formats an action request to search the Home Network device metadata store.
- Web page issues method to send action request to selected Home Network device
- User-Agent sends request to Home Network Media Server device.
- User-Agent generates event when Home Network device responds (or times-out)
- Web page gets response (XML document) from Home Network Media Server device.
- Web page displays EPG containers and EPG items as indicated in XML document
- Tune and play live programs from a Home Network Media Server capable of streaming live content.
- Select and play recorded content from a Home Network Recording device.
- List available Home Network Media Server devices.
Dependencies:
- This use-case provides the basic framework for generic access to home network devices. It is "agnostic" towards the underlying functionality of the devices being controlled.