StreamPackage is a high-quality video packaging and origin platform. It offers professional, stable, secure, and easy-to-use video packaging and delivery services globally and helps you enhance origin resilience. You can use StreamPackage to securely and reliably distribute video streams at a large scale.
StreamPackage manages tasks at the channel level. It packages compressed and encoded audio and video tracks into certain formats for distribution.
The StreamPackage console provides a rich set of easy-to-use and flexible features. It manages tasks at the channel level and functions through four main sections: channel, input, endpoint, and CDN.
Currently, StreamPackage services are available in Mumbai (India), Bangkok (Thailand), Seoul (South Korea), Tokyo (Japan), Frankfurt (Germany), and Singapore. If you want to deploy your business in other regions, please contact us.
A channel holds basic information about inputs and outputs. You can configure a channel to receive live streams that use a specific protocol. You can also create endpoints to generate content to be distributed.
If you are sending two streams, one primary stream and one backup stream, to the channel for failover, we recommend you set Max Segment Duration slightly longer than actually needed.
After the channel is created, you will be directed to the channel details page (you can also go to the details page by clicking the channel name or Info on the right). This page displays the channel's name, ID (automatically generated), input protocol, and other settings. StreamPackage will generate two inputs of the specified protocol for the channel.
An input is the basic unit of the content StreamPackage receives. After a channel is created, StreamPackage will automatically generate two inputs as well as two input URLs for the channel. You can send streams to the URLs.
You can enable authentication for an input: Click Authentication in the Operation column. StreamPackage will generate a username and a password for HTTP authentication. Click Rotate credentials to complete the configuration.
Once you rotate credentials, the existing credentials of the channel will become invalid.
You can create endpoints for a channel so that streams can be pulled from the channel.
If you want to modify the Manifest Name, please enter the name in “Manifest Name”, the default value is main.
IP allowlist/blocklist: Allow only specific IP address ranges to push or disallow specific IP address ranges to push.
AuthKey: Perform authentication using the HTTP header field X-TENCENT-PACKAGE.
Startover Windows：Set how long StreamPackage will support time-shifted viewing for the content. Default value is 1 day, and 3days, 7 days, 15 days and 30 days are also supported.
Once timeshift is enabled, live segments will be saved in the cloud, and you can watch them with timeshift by adding specific parameters to the Endpoint URL. The parameters are as follows:
Example timeshift URLs:
You can create a CDN distribution for a StreamPackage channel to distribute the streams in the channel via Tencent Cloud’s live streaming CDN. To achieve this, you need to activate CSS and grant CSS access to StreamPackage and StreamPackage access to CSS.
Before we proceed, make sure you understand the following terms:
Before you configure a CDN distribution, make sure you have activated CSS.
In the StreamPackage console, go to the details page of the channel for which you want to configure a CDN distribution, select the CDN tab, and click Authorization.
After the authorization, you will be able to configure a CSS playback domain for a StreamPackage channel.
Click Click here. To distribute streams via the LVB CDN, you need to allow StreamPackage to access certain resources. This is achieved via a service role. Click Authorize Now to go to the Role Management page, and click Grant to grant StreamPackage the permission to use related APIs.
You will be directed back to the StreamPackage console. Click Authorization completed.
Click Click here to go to the CDN console and allow the LVB CDN to use StreamPackage. After the authorization, you will see that the authorization status for StreamPackage has become Activated in the CSS console.
Return to the StreamPackage console and click Completed.
Click Authorization Completed. You have now granted the LVB CDN access to StreamPackage and StreamPackage access to the LVB CDN (which means you can now configure a CDN playback domain for a StreamPackage channel and the LVB CDN can pull streams from a StreamPackage channel).
After completing the authorization, under the CDN tab, click Edit Configuration to configure a CDN distribution.
Enter the domain you want to use for CDN playback and click Confirm.
- After a new playback domain is added, the system will assign it a CNAME which ends with
.liveplay.myqcloud.com. To make the CNAME accessible, you need to add a CNAME record for the domain at your DNS provider. For detailed directions, see Configuring CNAME for Domain Name.
- The default acceleration region for a CDN playback domain configured in the StreamPackage console is outside the Chinese mainland. If you need to distribute live streams inside the Chinese mainland, according to relevant laws and regulations, ICP filing is required for your domain. You can click Go to the CSS CDN Console to Perform More Actions.
To achieve playback via the configured playback domain, after you associate a StreamPackage channel with a CDN playback domain, replace the domain in the channel’s endpoint URL with the CDN playback domain.
Suppose the endpoint URL of your channel is:
Then your CDN playback address is:
http://CDN playback domain name/v1/017697a3513109df73abda3c4b26/017697a918bf09dfabc033b04d43/main.m3u8
After the configuration is completed, please contact us for configuration optimization to ensure a better experience for you.
Using the LVB CDN for distribution will incur playback traffic fees. For details, see Billing of LVB.
You can manage created channels on the Channel Management page. Click Info in the Operation column to view channel details. Click Edit to edit a channel, and click Delete to delete a channel. Note that you cannot delete a channel bound with endpoints. Delete the endpoints first before deleting a channel.