1page.title=Building TV Channels 2page.tags=tv, tif 3helpoutsWidget=true 4startpage=true 5 6@jd:body 7 8<div id="tb-wrapper"> 9<div id="tb"> 10 <h2>Dependencies and Prerequisites</h2> 11 <ul> 12 <li>Android 5.0 (API level 21) or higher</li> 13 </ul> 14 <h2>You should also read</h2> 15 <ul> 16 <li><a href="{@docRoot}reference/android/media/tv/package-summary.html"> 17 android.media.tv</a></li> 18 </ul> 19 <h2>Try It Out</h2> 20 <ul> 21 <li><a class="external-link" href="https://github.com/googlesamples/androidtv-sample-inputs"> 22 TV Input Service sample app</a></li> 23 </ul> 24</div> 25</div> 26 27<p> 28Watching live TV shows and other continuous, channel-based content is a big part of the TV 29experience. Users are accustomed to selecting and watching shows on TV by channel browsing. 30To provide your users a similar experience, use the TV Input Framework to create channels for 31publishing video or music content so that your media appears alongside traditional TV channels in 32the programming guide. 33</p> 34<p> 35Android supports receiving and playback of live video content through the TV Input Framework in 36Android 5.0 (API level 21). This framework provides a unified method for receiving audio and video 37channel content from hardware sources, such as HDMI ports and built-in-tuners, and software 38sources, such as video streamed over the internet. 39</p> 40<p> 41 The framework enables developers to define live TV input sources by implementing a TV input 42 service. This service publishes a list of channels and programs to the TV Provider. The live TV 43 app on a TV device gets the list of available channels and programs from the TV Provider and 44 displays them to a user. When a user selects a specific channel, the live TV app creates a 45 session for the associated TV input service through the TV Input Manager, and tells the TV input 46 service to tune to the requested channel and play the content to a display surface provided by 47 the TV app. 48</p> 49 50<img src="{@docRoot}images/tv/tv-tif-overview.png" id="figure1"> 51<p class="img-caption"> 52 <strong>Figure 1.</strong> Functional diagram of the TV Input Framework 53</p> 54 55<p> 56 The TV Input Framework is designed to provide access to a wide variety of live TV input sources 57 and bring them together in a single user interface for users to browse, view, and enjoy content. 58 Building a TV input service for your content can help make it more accessible on TV devices. 59</p> 60 61<h2>Topics</h2> 62 63<dl> 64 <dt><b><a href="tvinput.html">Developing a TV Input Service</a></b></dt> 65 <dd>Learn how to develop a TV input service, which works with the system TV app.</dd> 66 67 <dt><b><a href="channel.html">Working with Channel Data</a></b></dt> 68 <dd>Learn how to describe channel and program data for the system.</dd> 69 70 <dt><b><a href="ui.html">Managing User Interaction</a></b></dt> 71 <dd>Learn how to present overlays, manage content availability, and handle content selection.</dd> 72</dl> 73 74 75