시작하기

Video Player Enhancement TV SDK는 Android TV / Apple TV(tvOS) / Fire TV 전용 React Native 비디오 플레이어 SDK입니다.

Android TVtvOSFire TV

TV 전용 컴포넌트

@sgrsoft/vpe-reactnative-tv-sdk는 react-native-tvos 기반의 TV 전용 비디오 플레이어 SDK입니다. 웹 SDK(vpe-react-sdk)와 동일한 API를 제공하여 플랫폼 간 일관된 개발 경험을 지원합니다.

주요 기능

  • HLS / DASH / MP4 네이티브 재생 (ExoPlayer / AVPlayer)
  • DRM 지원 (Widevine + FairPlay)
  • IMA 광고 (Google Interactive Media Ads)
  • 플레이리스트 (자동 다음 재생)
  • 자막 (VTT / SMI, EUC-KR 자동 디코딩)
  • 선언적 레이아웃 커스터마이징
  • 라이브 스트림 + LL-HLS 저지연 모드
  • 다국어 (ko / en / ja)
  • 이어보기 (onExit + initialPosition)
  • D-pad / 리모컨 네비게이션
  • 캡처 방지

웹 SDK와의 차이점

항목웹 SDKTV SDK
플랫폼브라우저 (React/Next.js)Android TV / tvOS / Fire TV
스트리밍 엔진브라우저 MSE 기반네이티브 엔진 (ExoPlayer / AVPlayer)
전체화면requestFullscreen()항상 전체화면 (no-op)
PiPrequestPictureInPicture()미지원 (no-op)
볼륨슬라이더 UI시스템 볼륨 (MuteBtn = 뮤트 토글)
입력마우스/키보드리모컨 D-pad
광고IMA + NAMIMA만 지원
TV 전용 props-onBack, onExit, initialPosition

언어 지원

디바이스 언어 설정을 감지하여 아래 언어를 지원합니다.

KOENJA

버전 호환성

항목최소권장
react-native-tvos0.83.1-10.84.0-0
React19.x19.2.x
Node.js22.11+22.x LTS
tvOS15.1+16.0+
Android API24 (7.0)28+
TypeScript5.0+5.8.x

빠른 시작

import React, { useRef } from 'react';
import { View, StyleSheet } from 'react-native';
import { VpePlayer } from '@sgrsoft/vpe-reactnative-tv-sdk';
import type { PlayerHandle } from '@sgrsoft/vpe-reactnative-tv-sdk';

export default function PlayerScreen() {
    const playerRef = useRef<PlayerHandle>(null);

    return (
        <View style={styles.container}>
            <VpePlayer
                ref={playerRef}
                accessKey="YOUR_ACCESS_KEY"
                options={{
                    playlist: [{
                        file: 'https://example.com/video.m3u8',
                        description: { title: '영상 제목' },
                    }],
                    autostart: true,
                }}
                onBack={() => {
                    // 뒤로가기 처리
                }}
                onEvent={(event) => {
                    if (event.type === 'ready') {
                        console.log('Player ready');
                    }
                }}
            />
        </View>
    );
}

const styles = StyleSheet.create({
    container: { flex: 1, backgroundColor: '#000' },
});
TV SDK
이전설치