--- title: "TV SDK prerequisites" slug: "vpe-v2-tv-sdk-spec" updated: 2026-09-17T09:22:36Z published: 2026-09-17T09:22:36Z canonical: "guide.ncloud-docs.com/vpe-v2-tv-sdk-spec" stale: true --- > ## Documentation Index > Fetch the complete documentation index at: https://guide.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # TV SDK prerequisites Available in Classic and VPC This guide explains how to install the VPE TV SDK, configure your project, and generate code with an LLM (Large Language Model). ## Installation To use the VPE TV SDK, you need the following packages and prerequisites: ### Install packages ``` yarn add @sgrsoft/vpe-reactnative-tv-sdk ``` ### Install peerDependencies ``` yarn add react @sgrsoft/react-native-video @sgrsoft/vpe-core-sdk \ @sgrsoft/vpe-react-native-ui @react-native-async-storage/async-storage ``` ### Configure react-native-tvos `react-native` must be aliased to `react-native-tvos`. You cannot use it together with the standard react-native package. Configure at `package.json` as follows: ``` { "react-native": "npm:react-native-tvos@0.83.0-0" } ``` ### Optional dependencies To use screen capture prevention, you need to install an additional package. ``` yarn add react-native-capture-protection ``` ### Configure tvOS in advance Install the CocoaPods dependencies for tvOS builds. ``` cd ios && pod install ``` ### Configure Android TV in advance If you use IMA ads, add the following configuration to `android/gradle.properties`. ``` RNVideo_useExoplayerIMA=true ``` ## Configure public and government cloud Set the `platform` prop according to your NAVER Cloud Platform. | Environment | Platform value | Description | | --- | --- | --- | | Public cloud | `"pub"` | NAVER Cloud Platform public environment (default) | | Government cloud | `"gov"` | NAVER Cloud Platform government environment | ``` // Public cloud (default) // Government cloud ``` ## Resolution by platform The reported and actual resolutions for each platform are as follows: Android TV reports a resolution of 960×540 dp, and the SDK automatically applies internal scale correction. | Platform | Reported resolution | Scale | Actual resolution | | --- | --- | --- | --- | | Apple TV | 1920 x 1080 | 1x | 1920 x 1080 | | Android TV | 960 x 540 | 2x | 1920 x 1080 | ## LLM code generation This section explains how to quickly generate TV SDK player code with an LLM. Providing tv-sdk-llms.txt as a prompt allows the AI to generate React Native TV-based code examples. ### Concepts tv-sdk-llms.txt is a summary document containing the core usage rules of the VPE TV SDK. Having the LLM read this document beforehand ensures that the generated code accurately reflects the unique constraints of the TV, such as native engine utilization, remote control inputs, and the lack of support for Full screen/Picture-in-Picture (PiP) modes. The TV SDK uses the **Native video engine (ExoPlayer/AVPlayer)** to play HLS (HTTP Live Streaming) and DASH (Dynamic Adaptive Streaming over HTTP) streams directly. llms.txt includes this rule, allowing the LLM to generate accurate TV SDK code patterns. ### Prompt Copy and paste the prompt below into the LLM you are using (e.g., ChatGPT, Claude, Copilot, Cursor, etc.): ``` Read https://developer.vpe.naverncp.com/tv-sdk-llms.txt and generate a React Native TV SDK example code. ``` ### Core rules known by the LLM tv-sdk-llms.txt contains the following TV SDK-specific rules: | Rules | Description | | --- | --- | | Playlist only | Pass playback sources exclusively as an `options.playlist` array. | | Native engines | ExoPlayer (Android TV)/AVPlayer (tvOS) plays HLS/DASH directly. | | react-native-tvos | react-native-tvos required instead of standard React Native. | | Unsupported TV features | FullscreenBtn, PipBtn, ShareBtn removed, fullscreen()·pip() no-op. | | Follow the required code patterns | Use the exact prop names and structures specified in the documentation. | ### Guide - Replace the accessKey and playlist URL in the response code to match your project environment. - Do not include separate streaming library code because the TV SDK uses the native video engine (ExoPlayer/AVPlayer) to handle streaming directly. - Always perform DRM testing on an actual device (not supported on emulators). - If the results are too long, request "Summarize only the necessary parts." ### Direct link to llms.txt You can review the full guide at the link below: [tv-sdk-llms.txt full guide](https://developer.vpe.naverncp.com/tv-sdk-llms.txt)