Using a new Live Encoding HD option with Bitmovin Live Encoder

Overview

In the Bitmovin Encoder, we have introduced a new feature starting from the REST API version 1.169.0 - the Live Encoding HD option. This option is designed to offer a predictable cost while slightly limiting the functionalities of the Live Encoding. This article describes the difference in how to set it up and how the cost model work.

How to use the Live Encoding HD option

The code implementation is quite simple. While the most of the Live encoding settings such as defining the input stream, Codec Configuration, Stream and Muxing remain the same, what changes is only the “start call” and its parameters.

Here is the Python code snippet of the Live start API call for both Custom Live Configuration and the new Live Encoding HD option. Other code parts can be same between the two options.

  • Custom Live Configuration (Start Live Encoding: API endpoint)
    bitmovin_api.encoding.encodings.live.start(
        encoding_id=encoding.id,
        start_live_encoding_request=StartLiveEncodingRequest(...)
    )
  • Live Encoding HD (Start HD Options Live Encoding: API endpoint)
    bitmovin_api.encoding.encodings.live.hd.start(
        encoding_id=encoding.id,
        start_live_channel_encoding_request=StartLiveChannelEncodingRequest(...)
    )

It is important to note that the Live Encoding HD has some functional limitations. To understand the detail of the limitation, please visit the below page. If the configuration exceeds the listed limitations on this page (for example, using HEVC for the video codec), it will result in an encoding error.
https://bitmovin.com/live-encoding-live-streaming/

Cost model difference

As an example, we will explain the difference in the cost structure using the following encoding settings sample to do a live encoding for about 5 minutes.

  • Manifest:
    • HLS and DASH
  • Video Renditions
    • H264 1080p 3Mbps
    • H264 720p 2Mbps
    • H264 540p 1Mbps
    • H264 360p 600Kbps
    • H264 360p 300Kbps
    • H264 180p 150Kbps
  • Audio Renditions
    • AAC 128Kbps 48Khz
    • AAC 64Kbps 44.1Khz

This profile fits within the range of features achievable with the Live Encoding HD option. Therefore, regardless of whether you choose the Custom Live Configuration or the Live Encoding HD option, the same live broadcast can be created. Only the difference is the cost model.

Custom Live Configuration Billing Details

When using the Custom Live Configuration, we calculate the billable minutes by applying a multiplier based on the codec, resolution, and the encoding features used for each rendition. The total output minutes for video, audio, and other additional processes will be billed. This approach makes the cost of live broadcasting variable based on the encoding settings used, allowing flexible cost adjustments. However, it raises concerns about the complexity of predicting total costs if the workflow is complicated, such as using a different encoding profiles for each live event.

Live Encoding HD Billing Details

On the other hand, when using the Live Encoding HD option, the cost is calculated using only the encoding time (Running Minutes) and the Live Units derived from it, independent of the number of renditions used, their resolutions or used encoding features. This approach relies solely on the total streaming time and then simplifies cost predictions significantly. The final cost is calculated simply by multiplying the Live Units number by the unit price in your Live encoding subscription plan.

Please also refer to the web pages below for details on how each cost is calculated and the pricing information:

Summary

In this article, we discussed the differences between using the Custom Live Configuration and the new Live Encoding HD option. The Custom Live Configuration provides you more freedom to change costs and features. This can be a good option when you want to adjust the encoding profiles flexibly. On the other hand, the Live Encoding HD option offers a simple and predictable cost structure, making it easier to estimate the necessary budget for a project. It is desirable to choose the method that best suits your needs based on the purpose of use.

5 Likes

The official code example repository for our encoding now have the Live Encoding HD option sample in each language, as follows. I hope you find it beneficial.