# Samsung Tizen SDK および TV の評価
Samsung TV 評価プレーヤーをインストールし、その WGT を構成して署名し、Widevine VOD を Tizen Universal Player SDK と統合します。
**Samsung TV は、Tizen Web アプリケーションを使用します。** このガイドでは、Widevine DASH VOD と Samsung AVPlay をカバーします。パブリック評価キットを使用してプレーヤーを試すか、Professional/Enterprise SDK を使用して独自のバックエンドに接続します。
## 1. 公開されている TV 評価キットをダウンロードします[#](#try-tv-app)
[ダウンロード Samsung 評価キット ZIP](https://docs.drm-x.com/downloads/tizen/20260918.3/drmx-tizen-evaluation-20260918.3.zip)
ZIP には、`DRMXEvaluation.wgt`、Python ローカル補助サービス、および設定スクリプトが含まれています。 [すでにキットをお持ちの場合は、署名されていないWGTを別途](https://docs.drm-x.com/downloads/tizen/20260918.3/DRMXEvaluation.wgt)ダウンロードしてください。 ** WGT は、TV 用に構成され、再署名される必要があります。** これは開発者によるインストールであり、Samsung ストア アプリやユニバーサル ワンクリック インストーラーではありません。
- 互換性のある物理 Samsung TV と、同じ信頼できるプライベート LAN 上のコンピューター。
- Python 3.12+、Tizen Studio、Samsung TV 拡張機能、および Samsung Certificate Extension 2.0.73 以降。
- デバイスの DUID を含む Samsung TV 証明書プロファイル。この公開デモには有料の DRM-X プランは必要ありません。
Samsung の公式 [TV SDK インストール](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/installing-tv-sdk.html) および [TV 証明書ガイド](https://developer.samsung.com/smarttv/develop/getting-started/setting-up-sdk/creating-certificates.html) に従ってください。ツール画面はバージョンによって異なります。
パブリックダウンロードを確認する
評価キット SHA-256:
```
379f72d32c80612c64cb235599661edf6862badf718500ac04f9d7e44ae22388
```
未署名 WGT SHA-256:
```
1682fb3b8615bf68acd74a2ac17ef793a6cc30ff682bdd917bb3a3035b0c084b
```
PowerShell: `Get-FileHash .\DRMXEvaluation.wgt -Algorithm SHA256`。構成済みまたは署名済みのウィジェットには異なるハッシュがあります。
## 2. TV をペアリングし、証明書を作成します[#](#prepare-tv)
- **TV で Developer Mode を有効にします。**対応する TV で Apps を開き、12345 を入力して Developer Mode を表示します。有効にしたらコンピューターの LAN IP を入力し、指示に従って TV を再起動します。モデルによって手順が異なる場合は、Samsung の [TV デバイスガイド](https://developer.samsung.com/smarttv/develop/getting-started/using-sdk/tv-device.html)を参照してください。
- **TVを接続します。**Tizen Studio Device Manager / Remote Device Managerを開きます。 TVのLAN IPを追加して接続します。コンピューターはその TV からアクセス可能でなければなりません。信頼できるプライベート ネットワーク上でのみローカル補助サービスを許可します。
- **Samsung TV 証明書を作成します。**Certificate Manager を開く → 追加 → Samsung → TV作成者証明書と、TV の DUID を含む配布者証明書を使用してください。作成者の秘密鍵を自分の安全な署名ストレージに保管してください。
- **インストールを許可します。**Device Managerで、接続されているTVを選択し、利用可能な場合は**Permit to install applications**を選択します。次のコマンドのために証明書プロファイル名を保存しておいてください。
## 3. 設定、構築、インストール[#](#install-evaluation)
評価ZIPをスペースを含まない短いパスに抽出します。そこでターミナルを開きます。 2 つのプレースホルダーを実際のプライベート LAN アドレスに置き換えます。
```
python configure-evaluation.py --computer-ip YOUR_COMPUTER_IP --tv-ip YOUR_TV_IP
```
**このターミナルを動作させたままにしてください。**スクリプトは `app` フォルダーを作成し、TV の IP と新しい一時アクセス権限に限定したローカル補助サービスを起動します。顧客の認証情報を使わずに HTTPS で公開デモへ接続します。補助サービスは4時間後に期限切れになります。設定済みウィジェットを公開したり、ポートをインターネットに公開したりしないでください。
同じフォルダー内の 2 番目の端末を開きます。 Tizen Studio インストールからの CLI 実行可能ファイルを使用し、証明書プロファイルと TV アドレスを置き換えます。
```
tizen build-web -out .build -- app
tizen package -t wgt -s YOUR_SAMSUNG_PROFILE -- app/.build
sdb connect YOUR_TV_IP:26101
tizen install -n DRMXEvaluation.wgt -s YOUR_TV_IP:26101 -- app/.build
tizen run -p DrmXEval01.Player -s YOUR_TV_IP:26101
```
Windows では、ツールは通常、Tizen Studio の中にある `tools\ide\bin\tizen.bat` と `tools\sdb.exe` です。コマンドが見つからない場合は、そのフルパスを使用するか、そのフォルダーをターミナル PATH に追加します。
4時間が経過したら、古いローカル補助サービスを停止します。新しい `--output app-new` フォルダーで設定スクリプトを再実行し、そのフォルダーをビルドして再署名してください。一時的なアクセス権限が変わるため、有効期限の切れたインストール済み設定は再利用できません。
## 4. VOD とリモコンを試してください[#](#test-playback)
再生イメージの合成図です。プレーヤー画面に提供された動画の静止画とサンプル字幕を追加しています。
- VOD 上/下でタイトルを選択し、OK を押します。物理的なTVで動く映像と聞こえる音を確認します。
- 右のコントロールに移動します。一時停止/再開、前/次、±10 秒シーク、タイムラインを試してください。
- 全画面表示をお試しください。 Back は、再生を停止する前にメニューを閉じるか、全画面表示を終了します。音量は TV の通常のリモコンのままです。
- プレイリスト、次の動画、シャッフル、リピートを確認します。音声と字幕の選択肢は、実際のメディアに含まれるトラックによって異なります。
- ローカル補助サービスを閉じる前に再生を停止してください。別途認定されない限り、ライブ エントリは利用できません。このキットでは放送が開始されることはありません。
デモ ローカル補助サービスは、メディアの復号化やトランスコードを行わずに、テスト対象の Samsung Smart TV の Full HD レンディション セットを選択します。この公開キットには、著作権で保護されたメディアや外部の曲のキャプションは含まれていません。物理的な字幕切り替えの結果には、別途提供されたライセンス付きキャプションが使用されました。コンテンツをテストするときに、互換性のある独自のトラックを追加します。
## 5. SDK を使用して独自のアプリを構築する[#](#quick-start)
- **Tizen SDK ZIP をダウンロードします。**有効な Professional または Enterprise サブスクリプションの組織で [Console → Integrations](https://6.drm-x.com/console/integrations) を開き、`README.md` を読んでください。
- **完全なプレーヤー サンプルを使用します。**`universal-player/`をTV Web アプリケーションにコピーします。編集 `runtime-config.js`: HTTPS 再生セッション エンドポイント、公開された Content IDs およびビューア認証コールバックを設定します。
- **バックエンドに接続します。**視聴者を認証し、視聴権限を確認して、`widevine`、`dash`、`vod`、`streaming` を含む [Universal Playback Session Contract v1](https://docs.drm-x.com/ja/api-reference/playback-sessions) を返します。セッション解放用エンドポイントにも対応してください。クライアントは直接トークン認証とトークンプロキシ認証の両方に対応します。
- **ネットワーク アクセスを構成します。**実際のバックエンド、メディア、およびライセンスの発行元を `config.xml` に追加します。必要に応じて、サービスの CORS を TV オリジンに対して構成します。 Site Key と Access Key はバックエンドのみに保持します。
- **自分の ID で署名します。**`universal-player` を入力として、`DRMXPlayer.wgt` を出力ファイル名として、`DrmXSdk001.Player` をサンプルアプリ ID として同じTizen ビルド/パッケージ手順を使用します。アプリを配布する前に独自の識別子を使用してください。
サンプルはデフォルトで最大 1080p を要求します。バックエンドは、TV がデコードできるコーデックとレンディション セットを返す必要があります。この機能リクエストは、UHD マニフェストを書き換えません。 DRM ライセンスとポリシーは引き続き権威を持ちます。
### 独自のインターフェースを維持する
Samsungの`$WEBAPIS/webapis/webapis.js`をロードし、次に`drmx-tizen.js`をロードします。ネイティブ ビデオ オブジェクトを含めて、画面用に 1 つのプレーヤーを保持します。
```
```
```
const player = new DrmXTizen.Player({
endpoint: 'https://app.example.com/api/playback-session',
authentication: () => ({Authorization: 'Bearer ' + viewerToken}),
maximumHeight: 1080,
rect: {x:0, y:0, width:1920, height:1080},
onState: state => { statusLabel.textContent = state; }
});
await player.play('YOUR_PUBLISHED_CONTENT_ID');
player.pause();
player.resume();
player.seekTo(30000);
await player.stop();
await player.dispose(); // final dismissal or sign out
```
SDK は、Widevine チャレンジとライセンスバイトをそのまま保持します。古い再生作業をキャンセルし、停止、交換、または廃棄時にセッションを解放します。外部 WebVTT の場合は、カタログ トラック メタデータと `UniversalPlayerService` への承認された `subtitle(contentId, trackId)` コールバックを指定します。プラットフォーム固有のメディアおよびトラックの制限については、Samsung の [AVPlay API](https://developer.samsung.com/smarttv/develop/api-references/samsung-product-api-references/avplay-api.html) を参照してください。
## デバイスのテスト結果とトラブルシューティング[#](#qualification)
**実機テスト:**Samsung Smart TV (Tizen)、Tizen 9、2026年9月17日。完全な AVPlay UI とローカル補助サービスで、保護された Full HD VOD の再生時間が進むことを確認しました。英語/中国語の外部字幕選択と、修正後の再生も TV で確認済みです。再利用可能な顧客バックエンド連携はこの SDK プレビューで追加され、自動テストに合格しています。本番運用前に自社のバックエンドと実機で検証してください。
| 症状 | 確認項目 |
| --- | --- |
| WGTをインストールできません | この TV の DUID で Samsung TV 証明書を使用し、Developer Mode を有効にしてインストールを許可します。一般の WGT は署名されていません。 |
| アプリで設定/接続が失敗したと表示される | ローカル補助サービス端末を実行し続けます。両方の LAN IP、プライベート ネットワーク ファイアウォール アクセス、および 4 時間の有効期限を確認してください。再構成後に再構築します。 |
| TV で黒い画面または途切れが発生する | 音声、再生の進行、コーデック、対応解像度、HDCP ポリシーを確認します。Samsung Smart TV では FHD のレンディション構成を使用してください。スクリーンショットが黒いことと、TV の実画面が黒いことは別です。 |
| 字幕が利用できません | 互換性のあるトラックを供給します。 AVPlay を介した任意の DASH TEXT トラック切り替えはサポートされていません。サンプルは、認可された外部 WebVTT をサポートしています。 |
| デスクトップ プレビューでは動作しますが、TV では動作しません | ブラウザ上の UI プレビューでは AVPlay や Widevine は動作しません。実機の TV でテストし、機密情報を除いたエラーコードを記録してください。 |
ライブ、オフライン ダウンロード、HDR およびその他の Samsung モデルは、このリリースではまだ検証されていません。プロダクション ストアの配布は、Samsung の個別の認証/提出プロセスに従います。 [プラットフォームを比較し、すべてのアプリのスクリーンショットを確認する →](https://docs.drm-x.com/ja/sdk/native-apps)