Skip to main content

Multi DRM Content Service Flow

Notice

This document is a machine-translated draft and is currently undergoing review. Some content may be inaccurate or differ from the original Korean version. For the most precise information, refer to the Korean documentation.

This guide describes the entire process for distributing and playing content with Multi DRM applied. Refer to the service flow below when securely distributing content by applying global standard security specifications across various playback environments.

Learn More

For detailed information on Multi DRM, refer to the documents below.


Key process summary

  1. Content upload: The customer administrator sends the content file to the Kollus upload server. (When applying Multi DRM, do not select the [Encryption] option)
  2. Poster extraction: After upload is complete, the system extracts a poster (representative image) to be displayed on the player's initial screen.
  3. Transcoding: An encoding process converts the content to the optimal resolution and bitrate for the playback environment. The customer administrator can check the progress in [Library] on the Kollus VOD console.
  4. Content encryption (Multi DRM): Encrypts the transcoded media data using global standard DRM (Widevine, FairPlay, PlayReady) specifications. This is an essential step to prevent unauthorized copying and leaking of content, and the content is safely played after license authentication.
  5. Thumbnail extraction: The system extracts thumbnail images to be used for preview on the progress bar of the player.
  6. Upload file key issuance: When transcoding is complete, the system issues an upload file key to identify the content.
  7. Channel registration and media content key issuance: When the customer administrator registers content to a specific channel, the system issues a media content key, which is an identification key for distribution.
  8. Playback URL generation and verification: The customer administrator combines the media content key and security token to generate a Playback URL(S-link). The generated URL is used to perform a final verification that the content plays correctly.

Tutorial

Step 1: sign in to Kollus VOD console

Go to Kollus VOD console and sign in.

Step 2: upload content

In the [Library] menu that appears after signing in, you can manage content files and organize them by category.

  1. Click [Content upload] in the upper right corner of the screen.
  2. Drag and drop files into the upload area, or click [Select file] to select a file.
    • Emoji restriction: Files cannot be uploaded if the file name contains emojis.
    • Supported file extensions: Only the following extensions can be uploaded. Files with unsupported extensions may be excluded from the upload list or fail to upload.
      • Video: .3gp, .asf, .avi, .dv, .flv, .webm, .m4v, .mov, .mp4, .mpeg, .mpg, .wmv, .3g2, .3gpp, .f4v, .m2v, .ogm, .ogv, .wm
      • Audio: .aac, .flac, .m4a, .mp3, .ogg, .wav, .amr, .wma
    • Maximum upload count: You can select up to 20 files at a time. To upload 21 or more files, use Kollus Uploader.
  3. When the upload is complete, the system automatically starts Transcoding.
    • Transcoding: An essential process that converts the original video to the optimal resolution and bitrate for various viewing environments.
    • Progress: Can be checked by the percentage (%) shown above the content poster.

Step 3: create a distribution channel

To provide transcoded content to users, you need to create a distribution channel.
A channel is the basic unit of content distribution, and independent security and playback policy settings can be configured for each channel.

  1. Select [Channel] from the left menu.
  2. Click [Add channel] in the channel list on the left or in the upper right corner.
  3. Configure each item and click [Save]. (Since this guide is for testing Multi DRM content playback, select [Use as shared channel].)
    Channel settingDescription
    Use as shared channelA Share URL and embed code for external distribution are provided.
    Use as encrypted content-only channelOnly encrypted content with Kollus DRM applied can be registered. (Learn More: Content Encryption (DRM))

Step 4: register content

Register content to the channel you created.

  1. In the channel list, click channel name [More options (⋮)] > [Add content to channel], or click the channel card > [Add content to channel] in the upper right corner.
  2. Select the content to register and click [Add].
  3. When registration is complete, a unique media content key is issued for each content. This key is used as a distribution identifier per channel.

Step 5: generate JWT

For Multi DRM content, JWT(JSON Web Token) authentication that includes license request information is required to enhance security. Kollus VOD integrates with DoveRunner, a global DRM solution, to manage Widevine (Android/Chrome), FairPlay (iOS/Safari), and PlayReady (Windows/Edge) DRM under a single JWT authentication specification.

The JWT Payload can define various security and convenience features such as watermarks, subtitle settings, and playback control. The required Payload configuration for playing Multi DRM content is as follows.

{
"cuid": "{END_USER_ID}",
"expt": 1703980800,
"mc": [{
"mckey": "{MEDIA_CONTENT_KEY}",
"drm_policy": {
"kind": "inka",
"streaming_type": "dash",
"data": {
"license_url": "https://license.pallycon.com/ri/licenseManager.do",
"certificate_url": "https://license.pallycon.com/ri/fpsKeyManager.do?siteId={YOUR_SITE_ID}",
"custom_header": {
"key": "pallycon-customdata-v2",
"value": "{BASE64_ENCODED_TOKEN}"
}
}
}
}]
}

Refer to the table below for descriptions of the parameters in the Payload example above.

OptionTypeDescription
cuidstringUser ID
  • This is the reference value for concurrent playback prevention, bookmark, and resume settings.
  • Using alphanumeric characters is recommended. Using Korean or special characters may limit search in the prevention log.
exptintegerJWT expiration date and time (Unix timestamp)
  • Maximum value: 1893455999 (2029-12-31)
  • Content access may be allowed for up to 1 minute after expiration to account for server time discrepancies.
mcarrayArray containing information about the content to play
mckeystringMedia content key
drm_policyobjectMulti DRM policy data
kindstringDRM solution type. Enter fixed value "inka" (formerly INKA Entworks)
streaming_typestringStreaming protocol type
  • hls: FairPlay
  • dash: Other environments
dataobjectData required for license authentication and issuance
license_urlstring(Required when using Widevine or PlayReady) License server address
certificate_urlstring(Required when using FairPlay) FairPlay certificate address. Enter the ID issued from the DoveRunner console in the siteId parameter.
custom_headerobjectCustom header to pass when requesting a license
custom_header.keystringHeader key name (fixed as "pallycon-customdata-v2")
custom_header.valuestringDoveRunner license token value (Base64 encoding required)
See Also

Refer to the documents below for identification information required to call the player.

Step 6: configure secure playback URL

Configure the Playback URL using the secure URL(S-link) specification so that only authenticated users can call the player.

Learn More

For detailed information on player call methods, refer to the documents below.

Playback URL specification

https://v.kr.kollus.com/s?jwt={JWT}&custom_key={CUSTOM_KEY}

Parameter details

ParameterDescription
jwtAuthentication and security settings token (JWT generated in Step 5)
custom_keyCustom key
  • Where to find: Kollus VOD console > [Service account] > [Custom key]

Step 7: play content and verify features

Content with Multi DRM(Digital Rights Management) applied can only be played in a secure player environment.

Player guide

For detailed information on Kollus Players, refer to the documents below.

Basic player features

Kollus Player provides the following standard features for a smooth viewing experience.

  • Playback speed control: Supports 0.5–2x playback speed
  • Navigation: 10-second interval seeking and loop section
  • Convenience features: PIP (Picture-in-Picture) mode support
Player detailed features

The full list of player features is available on the Kollus Player Features page.


Next steps