Salesforce

Video encoding

« Go Back
Information
Video encoding
HLS-encoding
Details

Overview

This article explains how creative files are encoded once they are uploaded to insertions in Equativ’s Monetization Platform. From the uploaded creative, the video encoding process generates multiple creative files at different quality levels (bitrates). These creative files are included in the VAST response sent to the player, giving the player flexibility for serving the best creative file for the viewer's environment. 

Creative upload with automatic encoding

For general information on creative upload, refer to the Creating in-stream video insertions and Creating out-stream video insertions articles.

To use the automatic encoding, add a creative, enabling the Encode video option.

User-added image

Once the creative is saved, the encoding starts automatically as a background process. To view the generated creative files, click on the creative in the insertion's creative list and navigate to the Creative files section on the side panel:

User-added image

The creative file list contains:
  • the original uploaded file (Mezzanine file)
  • encoded versions at the quality levels: Very High, High, Medium and Low
  • if applicable, encoded versions by aspect ratio (4x3, 16x9 etc.)
  • a HLS version; more details in section "HLS encoding" below    
You can:
  • enable/disable individual encoded versions using the toggle
  • add custom encoded versions of the video ad at custom quality levels (bitrates), using the Upload from computer option


HLS encoding

In addition to encoded video file versions at different quality levels, the encoding output also includes an HLS file for players supporting the HTTP Live Stream (HLS) protocol. The file is a JSON playlist file in .m3u8 format, acting as an index of the generated encoded versions. HLS compliant players can read the HLS json file and dynamically select the quality (bitrate) working best for the viewer's current network speed (bandwidth).

The example below shows a HLS JSON file (.m3u8 playlist), as sent to the video player:
{
  "outputs":[
    {
      "audio_bitrate":64,
      "audio_codec":"aac",
      "audio_sample_rate":96000,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":3000,
      "buffer_size":8000,
      "filename":"file-4040k.m3u8",
      "format":"ts",
      "h264_level":"4.1",
      "h264_profile":"high",
      "label":"hls-4040",
      "type":"segmented",
      "public":"1",
      "video_bitrate":2000,
      "video_codec":"h264",
      "width":1280
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":3000,
      "buffer_size":8000,
      "filename":"file-2040k.m3u8",
      "format":"ts",
      "h264_level":"3.1",
      "h264_profile":"main",
      "label":"hls-2040",
      "type":"segmented",
      "public":"1",
      "video_bitrate":2000,
      "video_codec":"h264",
      "width":1024
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":2250,
      "buffer_size":6000,
      "filename":"file-1540k.m3u8",
      "format":"ts",
      "h264_level":"3.1",
      "h264_profile":"main",
      "label":"hls-1540",
      "type":"segmented",
      "public":"1",
      "video_bitrate":1500,
      "video_codec":"h264",
      "width":960
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":1000,
      "buffer_size":4000,
      "filename":"file-1040k.m3u8",
      "format":"ts",
      "h264_level":"3.1",
      "h264_profile":"main",
      "label":"hls-1040",
      "type":"segmented",
      "public":"1",
      "video_bitrate":1000,
      "video_codec":"h264",
      "width":640
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":900,
      "buffer_size":2400,
      "filename":"file-640k.m3u8",
      "format":"ts",
      "h264_level":"3",
      "h264_profile":"baseline",
      "label":"hls-640",
      "type":"segmented",
      "public":"1",
      "video_bitrate":600,
      "video_codec":"h264",
      "width":480
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":600,
      "buffer_size":1600,
      "filename":"file-440k.m3u8",
      "format":"ts",
      "h264_level":"3",
      "h264_profile":"baseline",
      "label":"hls-440",
      "type":"segmented",
      "public":"1",
      "video_bitrate":400,
      "video_codec":"h264",
      "width":400
    },
    {
      "audio_bitrate":56,
      "audio_codec":"aac",
      "audio_sample_rate":22050,
      "base_url":"sftp://smartmanage.upload.akamai.com/506755/dev/diff/73/a81284/BBB_480_HB_HLS",
      "credentials":"akm_dev",
      "bitrate_cap":300,
      "buffer_size":800,
      "filename":"file-240k.m3u8",
      "format":"ts",
      "h264_level":"3",
      "h264_profile":"baseline",
      "label":"hls-240",
      "type":"segmented",
      "public":"1",
      "video_bitrate":200,
      "video_codec":"h264",
      "width":400
    },
    }],
}

Powered by