UPDATE 10/27/2021: we have added Enhanced HLS Security option which adds additional security step during hls video decryption process and will further prevent downloading of videos via all known video downloader extensions. See Enhanced HLS Security article for more info. 


HLS stands for HTTP Live Streaming - an adaptive bitrate streaming protocol developed by Apple and it is becoming to be one of the most popular video streaming format. We're glad to inform you that Publitio now supports HLS video streaming together with HLS video encryption as a part of our video management solution.



How HLS video streaming works?

Uploaded videos in let's say MP4 or MOV format are getting transcoded to M3U8 file format. M3U8 files are the basis for the HTTP Live Streaming (HLS) format and they are a single-entry playlist file pointing to a possible multiple video streams (360p, 480p, 720p, 1080p) of original video. Adaptive bitrate streaming allows automatic selection of the best suited video stream depending of the end visitors device and internet speed available.

M3U8 file structure

What is HLS video encryption?

HLS video encryption adds an extra layer of protection when it is used for streaming videos, making it very difficult for end visitors to save the video to their device. During the video transcoding process, video is encrypted with special key belonging to the owner of a video. HLS video encryption acts as a DRM solution by exchanging and checking the encryption keys before video is played. It is one of the best methods for securing your videos for online delivery and is the perfect solution for site owners with protected (paid) video content (like online courses, classes, tutorials, etc.)


How to use HLS video streaming & encryption with Publitio?

To use HLS video encryption on your precious videos and to stream them in HLS format, simply enable HLS video encryption option on your files either during upload process or on the Edit File page at Dashboard. If HLS Video Encryption is enabled for selected video, Publitio will auto-create master m3u8 list file containing info for all the other possible video stream formats (360p, 480p, 720p, 1080p).
NOTE: Your account must be on paid monthly plan to enable HLS video encryption 

Enable HLS video encryption

On View File page at Dashboard you can check if HLS option is enabled for specific video and here you can see the status of m3u8 file version also (it takes some time to transcode video to m3u8 format as they can contain 4 different video streams in them so please be patient).

HLS video status

 Once your HLS video is ready you will have it's m3u8 stream URL available and you can use it now to stream your videos in encrypted HLS format by inserting URL to any video player with HLS support :

Encrypted HLS video stream URL:

https://media.publit.io/file/ToriiGates.m3u8


Publitio HLS Video Player

Publitio provides built-in video player that now has HLS support for your videos. If HLS video encryption is enabled for specific video, just grab Iframe embed code via Embed & Player codes modal at Dashboard and paste it to your site page. Player will play videos in HLS format on any device, it will do adaptive bitrate streaming depending on the connection speed of the end visitors and most importantly your videos will be secured via HLS encryption making it almost impossible for the end visitors to save them on their devices. Bellow you can see sample video played in Publitio HLS video player :




Enhanced HLS Security for preventing video downloads

In October 2021 we have added Enhanced HLS Security option which adds additional security step during hls video decryption process and will further prevent downloading of videos via all known video downloader extensions. Please note: if this option is turned ON it will invalidate all direct .m3u8 links (like this one https://media.publit.io/file/ToriiGates.m3u8) and you will need to use Publitio Player or Source HTML to embed and play videos. Go to API Settings page to enable Enhanced HLS security option.