Get Started
1. Installation
To begin, install the Freakout SDK package into your Unity project. This SDK is specifically designed for compatibility with the WebGL build target.
2. SDK Structure and File Locations
After installation, the following key directories and files will be available:
π /Assets/FreakoutSDK/
/Assets/FreakoutSDK/Contains scripts and prefabs.
Prefabs can be reused or modified directly in your scene.
π /Packages/FreakoutSDK/WebGL Templates/
/Packages/FreakoutSDK/WebGL Templates/Contains:
FreakoutSDK.jshls/hls.min.jsindex.html(Example template showing how to integrate scripts)Dash/dash.all.min.js
Make sure to include
FreakoutSDK.js,hls.min.js,dash.all.min.jsin your WebGL template for proper video streaming support.
3. License Activation (for non Unity Asset Store version)
The SDK license is activated per domain.
Testing on
localhostis always free.For activation steps, follow the [License Activation Instructions].
4. Quick Start: Using the Video Player Prefab
The SDK includes ready-to-use prefabs for rapid integration.
Location
After importing the Freakout SDK Unity package, youβll find the sample prefab located at: Packages/FreakoutSDK/
To integrate our ready-to-use video prefab:
Open Package Manager (Window -> Package Manager) and find the FreakoutSDK that you integrated.
Go to the Samples tab and press import:

This will import a new folder into your Assets directory (usually under
/Assets/FreakoutSDK/Prefabs..).
Prefab. Activating UI.
With UI β Includes UI player controls (play, pause, stop, volume, etc.). Deactivated by default. In order to activate it, just enable the parent UI gameObject.

Note: For UI-enabled prefabs, ensure your scene includes an EventSystem to enable UI interaction.
Adding to Scene
Add SDK manager to any GameObject in the scene.

Add the desired number of video entries in the Video Contents list by clicking the β+β icon. Each entry represents a video that will be linked to a separate video GameObject in your scene.
For example, if you plan to display 3 different videos simultaneously, add 3 entries.
For each entry, configure the following:
Name β for easy reference
Video URL β supports .mp4, HLS .m3u8, or DASH .mpd formats
Start on Init β whether the video should begin playing automatically once ready
Important: Each video is assigned an index based on its position in the list (e.g., 0, 1, 2). Youβll need to reference these indexes when assigning the correct video source to each player in the next step.
Drag and drop the prefab into your Unity scene. Specify VideoSource index from step 2.

Make sure to set the correct video index in the SdkVideoUIControl.cs component on the VideoControlPanel GameObject. This links the UI controls (play, pause, mute, etc.) to the appropriate video source by index.
π‘ Tip: We recommend using SdkVideoUIControl.cs as a starting point if you plan to build your own custom video UI.
π§© If UI controls are not needed, you can simply disable or remove the UI elements from the prefab.
- DONE.
Important: In step 2, avoid enabling the StartOnInit flag unless a corresponding Video Source Index is assigned in step 3 for that specific entry. Enabling StartOnInit without a valid index reference may cause the video player to initialize without proper configuration.

Prefab structure
The following methods are available via VideoPlayerController. You can inspect SdkVideoUIControl.cs to see an example of usage with UI controls:
π¨ The following methods to control material are available via SdkVideoSource:
The url in the 1st step of integration is a public field in the script. If you know the video URL in advance, you can assign it directly in the Inspector. Alternatively, you can set it at runtime and call the PlayerController.StartPlayer("url") in the specific PlayerIndex component.
By inspecting the prefab, you can make your own way of utilizing our SDK.
Please note that the video preview does not work in the Editor mode.
If you need any help, do not hesitate to reach us!
Last updated
