Skip to main content

Private Channel 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 of operating a live stream through a private channel with security policies applied. If you want to configure a secure live stream that only authenticated users can watch, refer to the service flow below.

Core process summary

The technical transmission infrastructure of a private channel is the same as a public channel, but an additional security layer is added for viewing permission verification.

  1. Live Streaming (RTMP): The original video is transmitted to the server via RTMP (Real-Time Messaging Protocol) using the Kollus dedicated mobile encoder or broadcasting software such as OBS or vMix.
  2. Transcoding: The transmitted video is converted in real time to a quality and format optimized for the viewing environment according to the encoding profile preset in the Kollus Live console.
  3. Origin Server Storage: The transcoded content is temporarily stored on the Origin server in preparation for distribution.
  4. Edge Server Caching and Distribution: To handle large-scale concurrent access, content is cached on Edge servers and delivered to players via HLS (HTTP Live Streaming).
  5. Watching the Broadcast: Only authenticated users can watch the broadcast through the Kollus secure player.

Tutorial

Step 1: Sign in to the Kollus Live console

Go to Kollus Live Console and sign in.

  • Integrated account: Enter the account information provided when the service contract was signed. If you are already using Kollus VOD, you can use the same sign-in credentials.
  • Creator sign-in: This is a dedicated page for the 'host' who is in charge of actual live streaming. It can only be used after channel creation and Creator account registration are complete, so it cannot be accessed at this stage.

Step 2: Create a live channel

Create a channel, which is the basic unit of a live stream. A channel converts (transcoding) the original video in real time and distributes an optimized stream to users.

  1. In [Channel] > [Channel list], click [Register channel] in the upper right corner.
  2. Configure each item and click [Save]. (Since this guide describes the general live stream procedure for a private channel, set [Visibility] to [Private] and [Type] to [Live].)
    ItemDescription
    KeyThe channel's unique identifier used for generating broadcast URLs, etc. (cannot be changed)
    Channel nameThe name of the channel. Used to identify the channel in the channel list or statistics page.
    TypeSelect the live type. (cannot be changed)
    • [Live]: Standard real-time broadcasting
    • [Low latency live]: LL-HLS method that minimizes latency (Learn more: Low Latency Live (LL-HLS))
    • [Scheduled Live]: Scheduled broadcasting based on prepared VOD files (Learn more: Scheduled Live)
    Customer codeAn identification code for the customer's internal management.
    Metadata titleSets the title format displayed in the player during broadcast.
    • Example: If set to [CHANNEL_TITLE]-[BROADCAST_COUNTING], when the 3rd broadcast is streamed on the 'First Live' channel → displayed as 'First Live-3'
    Metadata descriptionDetailed description displayed below the title.
    Encoding profileSets the orientation (landscape/portrait) of the broadcast screen. (Learn more: Live Encoding Profile Options)
    • [Default - landscape]: Landscape orientation
    • [Default - portrait]: Portrait orientation
    Live stream forwardingOperates two broadcast paths (RTMP) simultaneously to prepare for encoder and network failures. If an issue occurs on the active path, it automatically switches to the other path to ensure uninterrupted broadcasting. (Learn more: Live Stream Forwarding)
    • Prerequisite: Live broadcast status check enabled
    • Restriction: Not supported for Scheduled Live
    Real-time subtitlesConverts speech into real-time text (STT) and translated subtitles during the live stream, displaying them as an overlay on the player screen. After the broadcast ends, SRT subtitle files can be downloaded for each language. (Learn more: Real-time subtitles)
    • Restriction: Not supported for Scheduled Live
    Translated subtitle languageSelects the translated subtitle language to provide to viewers.
    • Prerequisite: Real-time subtitles enabled
    • Restriction: Not supported for Scheduled Live
    VisibilitySets the channel's access permissions.
    • [Public]: A broadcast URL (Video Gateway link) for external distribution is provided.
    • [Private]: For enhanced security, viewing is only possible by generating a JWT (JSON Web Token)-based authentication URL.
    Learn more

    For descriptions of detailed settings such as security beyond the basic items listed in the table above, refer to the document below.

Step 3: Generate a JWT

A private channel does not provide a public gateway link. Therefore, to allow users to access, a JWT (JSON Web Token) issued on the server side must be used to authenticate individual viewing permissions.

Various security features such as video watermarking and access expiration date/time can be defined in the JWT Payload. The required Payload configuration for watching a broadcast on a private channel is as follows.

Basic JWT payload example

{
"client_user_id": "{END_USER_ID}",
"expire_time": 1893455999,
"live_media_channel_key": "abcd1234"
}
OptionTypeDescription
client_user_idstringA unique ID that identifies the viewer.
expire_timeintegerThe validity period of the token (JWT). Access is blocked upon expiration.
  • Maximum value: 1893455999 (2029-12-31)
live_media_channel_keystringThe unique identifier for the channel.
  • How to find: Kollus Live Console > [Channel] > [Channel list] > [Edit] on the right side of the channel > [Key]
Learn more

For detailed descriptions of JWT configuration, refer to the document below.

Step 4: Configure the secure broadcast URL

Call the player using a secure URL (S-link) so that only authenticated users can watch the broadcast. Write the broadcast URL according to the specifications below.

Learn more

For detailed descriptions of how to call the player, refer to the document below.

Broadcast URL format

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

Parameter details

ParameterDescription
jwtAuthentication and security settings token (JWT generated in Step 3)
custom_keyCustom key
  • How to find: Kollus Live Console > [Settings] > [Basic information] > [Service account] tab > [Custom key]

Step 5: Live streaming

Use an encoder solution to transmit the actual video to the Kollus server. Select the guide that suits your environment.

Step 6: Broadcast monitoring and termination

Once streaming starts, you can check the broadcast status in real time on the Kollus Live console.

  1. Check broadcast status: Check that the 'On Air' tag is displayed in the channel list.
  2. Screen monitoring: Click the channel name to go to the channel details page, where the actual streaming screen is displayed in the player.
  3. End broadcast: Press the end broadcast button in the encoder program to terminate the broadcast.

Next steps