{"id":13612553,"url":"https://github.com/googlesamples/androidtv-sample-inputs","last_synced_at":"2025-10-06T11:52:33.772Z","repository":{"id":23566887,"uuid":"26934626","full_name":"googlesamples/androidtv-sample-inputs","owner":"googlesamples","description":"Sample Channel App (TV Input Service) on Android TV using TIF","archived":false,"fork":false,"pushed_at":"2024-01-01T13:20:20.000Z","size":24208,"stargazers_count":501,"open_issues_count":45,"forks_count":243,"subscribers_count":70,"default_branch":"master","last_synced_at":"2025-04-13T00:49:31.074Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://developer.android.com/training/tv/tif","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/googlesamples.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-11-20T22:18:21.000Z","updated_at":"2025-04-10T04:55:44.000Z","dependencies_parsed_at":"2024-11-07T20:43:51.733Z","dependency_job_id":null,"html_url":"https://github.com/googlesamples/androidtv-sample-inputs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googlesamples%2Fandroidtv-sample-inputs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googlesamples%2Fandroidtv-sample-inputs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googlesamples%2Fandroidtv-sample-inputs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googlesamples%2Fandroidtv-sample-inputs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/googlesamples","download_url":"https://codeload.github.com/googlesamples/androidtv-sample-inputs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248650436,"owners_count":21139672,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T20:00:31.514Z","updated_at":"2025-10-06T11:52:28.731Z","avatar_url":"https://github.com/googlesamples.png","language":"Java","funding_links":[],"categories":["HarmonyOS","Java"],"sub_categories":["Windows Manager"],"readme":"# Sample Android TV Channel App (TV Input) using TIF\n\nThis app is designed to show how to build live TV channel apps for\nAndroid TV using the TV Input Framework (TIF). The sample is a service\nthat once installed, is recognized and run by the default TV app\n(e.g. Live Channels app).\n\n## Introduction\n\nThe sample app consists of a single TV input: 4 channels consisting of\nMP4 videos, HLS stream and MPEG-DASH stream, organized into various\ngenres. The video files are served from Google Cloud Storage.\n\nReferences and Developer Guides\n\n- [Building Live TV Apps](http://developer.android.com/training/tv/tif/index.html)\n- [Android TV: TV Input Framework reference](https://developer.android.com/reference/android/media/tv/package-summary.html)\n\n## TIF Companion Library\n\nThis app uses the [TIF Companion Library](https://developer.android.com/training/tv/tif/tvinput.html#TIFCompanion).\nThe source code for the library is in the `library` directory. To use this library in your project,\ncopy the directory over or use the following Gradle dependency:\n\n    compile 'com.google.android.libraries.tv:companionlibrary:0.4.1'\n\n## Pre-requisites\n\n- ExoPlayer with HLS support: http://developer.android.com/guide/topics/media/exoplayer.html\n- Android SDK v7 appcompat library\n- Android SDK v17 leanback support library\n- Android SDK v7 recyclerview library\n\n## Getting Started\n\n- Get code: git clone the project from https://github.com/googlesamples/androidtv-sample-inputs.git\n- Compile the project and install the app to your Android TV device.\n- Start the pre-installed system app Live Channels to configure TV\ninput sources.\n\nNote that the Live Channels app does not show up in Apps on Home screen\nunless there is at least one TV input service or a physical input like\nHDMI1.\n\nTo set up the TV input:\n- Start Live Channels app\n- Click Search to search for and add channels\n- Alternatively within Live Channels app,\n  + Click ENTER to bring out Recent Channels\n  + Click DOWN to enter TV options\n  + Click RIGHT to Channel sources and select it\n  + Click DOWN to select Rich Input and click ENTER to select it\n  + Click ADD CHANNELS NOW to add channels of MP4 videos, HLS stream and MPEG-DASH stream\n- To watch sample channels, simply toggle UP and DOWN to switch channels\n- Visit Channel Sources -\u003e Rich Input -\u003e Settings to see mock options for input settings.\n\n## Screenshots\n\n![TV program guide](screenshots/guide.png)\n![TV options](screenshots/options.png)\n![TV options:channel sources](screenshots/sources.png)\n![Add Rich TV Input](screenshots/adding.png)\n\n## Support\n\n- Android TV Google+ Community: [https://g.co/androidtvdev](https://g.co/androidtvdev)\n- Stack Overflow: http://stackoverflow.com/questions/tagged/android-tv\n\n## License\n\nLicense under the Apache 2.0 license. See the LICENSE file for details.\n\n## How to make contributions?\n\nPlease read and follow the steps in the CONTRIBUTING.md\n\n## Notice\n\nImages/videos used in this sample are courtesy of the Blender\nFoundation, shared under copyright or Creative Commons license.\n\n- Elephant's Dream: (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org\n- Sintel: (c) copyright Blender Foundation | www.sintel.org\n- Tears of Steel: (CC) Blender Foundation | mango.blender.org\n- Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgooglesamples%2Fandroidtv-sample-inputs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgooglesamples%2Fandroidtv-sample-inputs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgooglesamples%2Fandroidtv-sample-inputs/lists"}