Main Page/Cloud Browser TF/Specs/TVControlAPI

From Web and TV IG
Jump to: navigation, search

TV Control API Specification

This specification provides an API to web-based applications and enables them to

  • control and switch the TV sourcing based on channel identifiers
  • provide EPG type of information, including the list of TV programs and related information
  • interact with TV platform for presenting the TV program appropriately
  • interact with TV platform for presenting other supplemental content appropriately
  • overlay the channels and supplemental information in a hybrid broadcast/broadband environment

More info can be found here

Addressed Use-Cases

This API addresses the following Use-Cases that are also relevant to the Cloud Browser TF, see also Use-Cases.

Tuner

  • Tune to a broadcast channel
  • Retrieve meta info of tuner
    • Number of tuners currently installed
    • Broadcasting type of each tuner (terrestrial, cable, satellite, ...)
    • Broadcasting protocol of each tuner (DVB, ATSC, ISDB, ...)
    • Streaming signal strength of the the tuner(s)
  • Notify on tuner changes (hot-plug detection)

Tuner Channel Scan

  • User can initiate a scan for available channels on the tuner
  • Notify about found channels during scan, tell also the signal strength
  • Provide indication of progress during scan
  • User can abort in-progress scan
  • Notify on completion

Channel

  • Retrieve meta info of channel
    • Number of channels that have already been scanned
    • Broadcasting type of each channel (TV, radio)
    • Logical Channel Number(LCN) of each channel
    • Name of each channel ("BBC", "CCN")
  • Switch channel
  • Switch video/audio/text tracks of the channel that is currently displaying
  • List available channels (sorted/unsorted, parental control, start time, ..)
  • Channel up or down based on current channel

Program

  • Retrieve meta info of program
    • Number of programs
    • Title, start time, duration, description, language, rating, classification, ... of each program
    • Languages, subtitles, codecs, quality of video and audio

EPG

  • Retrieve EPG info for a given channel or time period
  • Let the user navigate through the EPG and directly select a program to watch
  • Let the user browse through the list of other programs while (s)he is watching a program

Accessibility

  • Enable/disable display of subtitles
  • Enable/disable playback of supplementary audio streams (audio description)

Recording

  • Record program by programs unique identifier
  • Record series-linked programs
  • Provide info / Playback / delete / apply parental control

Time Shifting

  • Pause a live program and resume playback later

Emergency Broadcasting

  • Notify on emergency broadcasting

Parental Control

  • Provide info whether channel is locked or not
  • Let the user unlock protected channels by entering a password

Media element

  • List / select track(s), subtitle(s), audio

Notes

  • Most API results are enclosed in a JavaScript Promise which can help in implementation, like getTuners().

Gaps?