DRM-X 6.0 logo bồ câu và nhánh ô liuDRM-X 6.0Tài liệu
◎ Tiếng Việt

Samsung Tizen SDK and TV evaluation

Install the Samsung TV evaluation player, configure and sign its WGT, then integrate Widevine VOD with the Tizen Universal Player SDK.

Xem MarkdownVí dụ chạy trực tiếpUpdated 2026-09-18
Samsung TV uses a Tizen Web application.This guide covers Widevine DASH VOD with Samsung AVPlay. Use the public evaluation kit to try the player, or the Professional/Enterprise SDK to connect your own backend. This new guide is currently available in English.

1. Download the public TV evaluation kit#

Download Samsung evaluation kit ZIP

The ZIP includes DRMXEvaluation.wgt, a Python companion and the configuration script. Download the unsigned WGT separately if you already have the kit. The WGT must be configured and re-signed for your TV. It is a developer installation, not a Samsung Store app or a universal one-click installer.

  • A compatible physical Samsung TV and a computer on the same trusted private LAN.
  • Python 3.12+, Tizen Studio, the Samsung TV extension and Samsung Certificate Extension 2.0.73 or later.
  • A Samsung TV certificate profile containing your device's DUID. You do not need a paid DRM-X plan for this public demo.

Follow Samsung's official TV SDK installation and TV certificate guide. Tool screens vary by version.

Verify the public downloads

Evaluation kit SHA-256:

379f72d32c80612c64cb235599661edf6862badf718500ac04f9d7e44ae22388

Unsigned WGT SHA-256:

1682fb3b8615bf68acd74a2ac17ef793a6cc30ff682bdd917bb3a3035b0c084b

PowerShell: Get-FileHash .\DRMXEvaluation.wgt -Algorithm SHA256. A configured or signed widget has a different hash.

2. Pair your TV and create its certificate#

  1. Enable Developer Mode on the TV.On supported TVs open Apps, enter 12345 to open Developer Mode, switch it on, enter your computer's LAN IP and restart the TV as instructed. Follow Samsung's TV device guide if your model differs.
  2. Connect the TV.Open Tizen Studio Device Manager / Remote Device Manager. Add the TV's LAN IP and connect. The computer must be reachable from that TV; permit the companion only on the trusted private network.
  3. Create a Samsung TV certificate.Open Certificate Manager → Add → Samsung → TV. Use your author certificate and a distributor certificate that contains your TV's DUID. Keep the author private key in your own secure signing storage.
  4. Permit installation.In Device Manager, select the connected TV and choose Permit to install applications where available. Keep the certificate-profile name for the next commands.

3. Configure, build and install#

Extract the evaluation ZIP to a short path without spaces. Open a terminal there. Replace the two placeholders with the actual private LAN addresses:

python configure-evaluation.py --computer-ip YOUR_COMPUTER_IP --tv-ip YOUR_TV_IP

Leave this terminal running. The script creates the app folder and starts a companion restricted to your TV IP and a new temporary capability. It connects to the public demo over HTTPS without your customer credentials. The companion expires after four hours; do not publish its configured widget or expose its port to the Internet.

Open a second terminal in the same folder. Use the CLI executables from your Tizen Studio installation, and replace the certificate profile and TV address:

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

On Windows the tools are typically tools\ide\bin\tizen.bat and tools\sdb.exe inside Tizen Studio. If a command is not found, use its full path or add that folder to your terminal PATH.

After the four-hour window, stop the old companion, run the configuration script with a new --output app-new folder, and build/re-sign that folder. Its temporary capability changes. Do not reuse the expired installed configuration.

4. Try VOD and the remote controls#

Labelled Samsung desktop UI preview showing playlist at left and controls below video
UI preview, not a TV playback photograph.① Choose a video in the left playlist. ② Use controls below the picture. ③ Open Audio/Subtitles when the selected media supplies tracks. The test fixture is explicitly labelled “NO VIDEO PLAYBACK.”
  1. Choose a VOD title with Up/Down and press OK. Confirm moving video and audible sound on the physical TV.
  2. Move right to the controls. Try pause/resume, previous/next, ±10-second seek and the timeline.
  3. Try Full screen. Back closes a menu or exits full screen before stopping playback. Volume stays on the TV's normal remote controls.
  4. Check playlist, play-next, shuffle and repeat. Audio/subtitle options depend on actual media tracks.
  5. Stop playback before closing the companion. Live entries stay unavailable unless separately qualified; this kit never starts a broadcast.

The demo companion selects a Full HD rendition set for the tested M5 without decrypting or transcoding media. This public kit contains no copyrighted media or external song captions. The physical subtitle-switching result used separately supplied licensed captions; add your own compatible tracks when testing your content.

5. Build your own app with the SDK#

  1. Download the Tizen SDK ZIP.Open Console → Integrations with an active Professional or Enterprise organization. Read README.md.
  2. Use the complete player sample.Copy universal-player/ into your TV Web application. Edit runtime-config.js: set your HTTPS playback-session endpoint, published Content IDs and the viewer-authentication callback.
  3. Connect your backend.Authenticate the viewer, check entitlement, and return Universal Playback Session Contract v1 for widevine, dash, vod, streaming. Support its release route. The client accepts direct-token or token-proxy authorization.
  4. Configure network access.Add your actual backend, media and license origins to config.xml. Configure the services' CORS for the TV origin where required. Keep Site Key and Access Key exclusively on the backend.
  5. Sign with your identity.Use the same Tizen build/package steps with universal-player as input, DRMXPlayer.wgt as the output filename and DrmXSdk001.Player as the sample app ID. Use your own identifiers before distributing your app.

The sample requests a maximum of 1080p by default. Your backend must return a codec and rendition set the TV can decode. This capability request does not rewrite a UHD manifest; the DRM license and policy remain authoritative.

Keep your own interface

Load Samsung's $WEBAPIS/webapis/webapis.js, then drmx-tizen.js. Include the native video object and retain one player for the screen:

<object id="video" type="application/avplayer"></object>
<script src="$WEBAPIS/webapis/webapis.js"></script>
<script src="drmx-tizen.js"></script>
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

The SDK keeps Widevine challenge and license bytes intact. It cancels stale playback work and releases sessions on stop, replacement or disposal. For external WebVTT, supply catalog track metadata and an authorized subtitle(contentId, trackId) callback to UniversalPlayerService. See Samsung's AVPlay API for platform-specific media and track restrictions.

Device evidence and troubleshooting#

Physically tested: Samsung M5 LS27DM501EEXXY, Tizen 9, September 17, 2026. The complete AVPlay UI and local helper played protected Full HD VOD with an advancing clock; English/Chinese external subtitle selection and corrected playback were confirmed on the TV. The reusable customer-contract wrapper is new in this SDK preview and has automated tests; validate it with your backend and physical devices before production.

SymptomCheck
Cannot install WGTUse a Samsung TV certificate with this TV's DUID, enable Developer Mode and permit installation. The public WGT is unsigned.
App says configure/connect failedKeep the companion terminal running; check both LAN IPs, private-network firewall access and the four-hour expiry. Rebuild after reconfiguration.
Black screen or stuttering on TVTest sound/progress, codec, supported resolution and HDCP policy. Use an FHD ladder on the M5. A black screenshot is not the same as a black TV screen.
Subtitles unavailableSupply compatible tracks. Arbitrary DASH TEXT-track switching through AVPlay is not supported; the sample supports authorized external WebVTT.
Works in desktop preview but not TVA browser fixture does not exercise AVPlay or Widevine. Use a physical TV and capture a redacted error code.

Live, offline downloads, HDR and other Samsung models are not qualified by this release. Production store distribution follows Samsung's separate certification/submission process. Compare platforms and see all app screenshots →