PallyCon DRM 테스트

PallyCon DRM 연동을 빠르게 검증할 수 있는 테스트 엔드포인트를 제공합니다. 별도의 DRM 라이선스 발급 없이 Widevine, FairPlay, PlayReady를 즉시 테스트할 수 있습니다.

주의: 테스트 엔드포인트는 PallyCon DEMO 환경을 사용하며, 프로덕션 용도로 사용할 수 없습니다. DRM은 HTTPS 환경에서만 동작합니다.

테스트 엔드포인트

아래 API를 호출하면 Widevine, FairPlay, PlayReady DRM이 설정된 플레이어 옵션 JSON을 응답합니다.

GET https://vpe-api.sgrsoft.com/api/drmTestPallycon

응답 예시

{
    "playlist": [
        {
            "drm": {
                "com.apple.fps": {
                    "src": "https://contents.pallycon.com/bunny/hls/master.m3u8",
                    "certificateUri": "https://license-global.pallycon.com/ri/fpsKeyManager.do?siteId=DEMO",
                    "licenseUri": "https://license-global.pallycon.com/ri/licenseManager.do",
                    "licenseRequestHeader": { ... }
                },
                "com.widevine.alpha": {
                    "src": "https://contents.pallycon.com/bunny/stream.mpd",
                    "licenseUri": "https://license-global.pallycon.com/ri/licenseManager.do",
                    "licenseRequestHeader": { ... }
                },
                "com.microsoft.playready": {
                    "src": "https://contents.pallycon.com/bunny/stream.mpd",
                    "licenseUri": "https://license-global.pallycon.com/ri/licenseManager.do",
                    "licenseRequestHeader": { ... }
                }
            },
            "description": {
                "title": "Pallycon 테스트 영상",
                "created_at": "2024.07.13"
            }
        }
    ],
    "aspectRatio": "16/9",
    "autostart": true,
    "muted": true
}

API 연동으로 DRM 재생

엔드포인트에서 받은 응답을 그대로 플레이어 옵션으로 전달하면 DRM 재생이 시작됩니다. 브라우저에 따라 Widevine(Chrome, Firefox), FairPlay(Safari), PlayReady(Edge) 중 적절한 DRM이 자동으로 선택됩니다.

<div id="video1"></div>

<script>
var DRM_API = "https://vpe-api.sgrsoft.com/api/drmTestPallycon";

document.addEventListener("DOMContentLoaded", async function() {
    var res = await fetch(DRM_API);
    var options = await res.json();

    await ncplayerDRM("video1", options);
});
</script>

정적 옵션으로 직접 설정

API 호출 없이 DRM 옵션을 코드에 직접 작성할 수도 있습니다.

<div id="video1"></div>

<script>
document.addEventListener("DOMContentLoaded", async function() {
    await ncplayerDRM("video1", {
        playlist: [
            {
                drm: {
                    "com.apple.fps": {
                        src: "https://contents.pallycon.com/bunny/hls/master.m3u8",
                        certificateUri: "https://license-global.pallycon.com/ri/fpsKeyManager.do?siteId=DEMO",
                        licenseUri: "https://license-global.pallycon.com/ri/licenseManager.do",
                        licenseRequestHeader: {
                            "Content-type": "application/x-www-form-urlencoded",
                            "pallycon-customdata-v2": "{FairPlay Token}",
                        },
                    },
                    "com.widevine.alpha": {
                        src: "https://contents.pallycon.com/bunny/stream.mpd",
                        licenseUri: "https://license-global.pallycon.com/ri/licenseManager.do",
                        licenseRequestHeader: {
                            "pallycon-customdata-v2": "{Widevine Token}",
                        },
                    },
                    "com.microsoft.playready": {
                        src: "https://contents.pallycon.com/bunny/stream.mpd",
                        licenseUri: "https://license-global.pallycon.com/ri/licenseManager.do",
                        licenseRequestHeader: {
                            "pallycon-customdata-v2": "{PlayReady Token}",
                        },
                    },
                },
                description: {
                    title: "Pallycon 테스트 영상",
                    created_at: "2024.07.13",
                },
            },
        ],
        aspectRatio: "16/9",
        autostart: true,
        muted: true,
    });
});
</script>

DRM 유형별 브라우저 지원

DRM프로토콜지원 브라우저
com.widevine.alphaDASHChrome, Firefox, Edge, Android
com.apple.fpsHLSSafari (macOS, iOS)
com.microsoft.playreadyDASHEdge (Chromium)

전체 HTML 예제

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>VPE Player - PallyCon DRM 테스트</title>
    <script src="https://player.vpe.naverncp.com/v2/ncplayer.js?access_key=YOUR_ACCESS_KEY"></script>
</head>
<body>
    <div id="video1" style="max-width: 800px; margin: 0 auto;"></div>

    <script>
        document.addEventListener("DOMContentLoaded", async function() {
            var res = await fetch("https://vpe-api.sgrsoft.com/api/drmTestPallycon");
            var options = await res.json();
            await ncplayerDRM("video1", options);
        });
    </script>
</body>
</html>
UMD