tencent cloud

Cloud Streaming Services

Release Notes and Announcements
Announcements
User Guide
Product Introduction
Overview
CSS Products
Concepts
Features
Use Cases
Strengths
Use Limits
Purchase Guide
Billing Overview
Basic Service Fee
Value-Added Service Fee
Prepaid plan
Purchase Process
Changing Billing Modes
Refund Policy
Viewing Bills
Renewal
Processing for Overdue Payments
Billing FAQs
Live Video Broadcasting (LVB)
Overview
Use Cases
Getting Started
SDK Integration
Live Event Broadcasting (LEB)
Overview
LEB Versus LVB
Use Cases
Getting Started
SDK Integration
Live Video Caster
Overview
Application Scenarios
Feature Area Introduction
Managing Live Video Caster
General Cloud Director
Configuring Program Lists and Automated Broadcasting
Console Guide
Console Overview
Overview
Domain Management
Stream Management
Package Management
AI Features
Feature Configuration
Relay
Billing Usage Statistics
Monitoring
Toolkit
OOTB live
CAM-Based Access Control
Feature Guide
Push and Playback
Features
Practices in Typical Scenarios
Cloud Native Recording
Live Streaming Security
Global CSS Service
Callback Notifications
User Guides for Common Third-Party Tools
SDK Guide
0. SDK Integration Guide
1. Stream Push
2. Playback
3. Advanced Features
API Documentation
History
Introduction
API Category
Making API Requests
Live Pad APIs
Live Stream Mix APIs
Time Shifting APIs
Monitoring Data Query APIs
Billing Data Query APIs
Live Transcoding APIs
Delayed Playback Management APIs
Domain Name Management APIs
Watermark Management APIs
Certificate Management APIs
Stream Pulling APIs
Recording Management APIs
Live Callback APIs
Screencapturing and Porn Detection APIs
Authentication Management APIs
Live Stream Management APIs
Data Types
Error Codes
Ops Guide
Video Stuttering
Troubleshooting Push Failure
Troubleshooting Playback Failure
CLS Assists in Live Stream Troubleshooting
Troubleshooting High Latency
Troubleshooting Poor Quality of Pulled Video
Authorizing CSS to Store Screenshots in a COS Bucket
Troubleshooting
Live Stream Mixing Error `InvalidParameter.OtherError`
About Pushing
Generating Push URLs
PC Push
Playing Method
Web Player
Live Streaming Quiz
FAQs
Service Region
Live Streaming Basics
Push and Playback
CSS Billing
Global CSS Service
Live Recording
On-Cloud Stream Mix
Domain Configuration
Related to Live Video Caster
Compatibility with Apple ATS
Difference Between Stream Interruption and Stream Suspension
SLA
CSS Service Level Agreement
CSS Policy
Privacy Policy
Data Processing And Security Agreement
Glossary

SRT Push

PDF
Focus Mode
Font Size
Last updated: 2024-10-24 15:15:09
TS over SRT directly transmits TS streams containing audio/video data using SRT protocol. The existing live streaming system is used for playback. TS over SRT is used as the standard push format for Haivision hardware and OBS. In this mode, the SRT server parses TS streams, remuxes to RTMP streams, and forwards to the backend RTMP server.

Note:
Using SRT for push will not increase the cost.

Upstream Lag Rate Comparison

Using SRT to push streams reduces lag, as shown in the following figure:


Packet Loss Rate Comparison

Using SRT to push streams optimizes upstream performance, resulting in better playback smoothness. The following shows the performance comparison of the Douyu app.
Android: performance test data of push over SRT (test device — Mi 9):

iOS: performance test data of push over SRT (test device — iPhone XR):


Packet Loss Prevention Comparison

Compared with QUIC, SRT reduces packet loss at the application layer under the same packet loss rate, thanks to its faster, more precise retransmission control and pacing mechanism for live streaming scenarios. When the packet loss rate is 50%, SRT can still guarantee stable transmission.
With the same linkage and the same live stream file on the push end, the packet loss rate reduces by 5% every five minutes when SRT is used. The following figure shows that the push frame rate of SRT is more stable.

Live Push

Access Method

Live push supports using port 9000 to push streams over SRT. You can generate a push address via the Address Generator in the CSS console and splice the address by following the rules below.
Tencent Cloud SRT push address:
srt://${rtmp-push-domain}:9000?streamid=#!::h=${rtmp-push-domain},r=${app}/${stream},txSecret=${txSecret},txTime=${txTime}
Note:
$ {app} is a variable and should be replaced with the actual value. Note that $, {, and } are not required.

Implementation Method

The SRT server will remux TS streams to RTMP streams and relay them to the ${rtmp-push-domain} domain name .
Example of OBS streaming content via the SRT protocol:
Enter the following in Server: srt://${rtmp-push-domain}:9000?streamid=#!::h=${rtmp-push-domain},r=${app}/${stream},txSecret=${txSecret},txTime=${txTime}
Enter the following in Stream Key: r=${app}/${stream},txSecret=${txSecret},txTime=${txTime}

Note:
If you want to push streams over SRT, the OBS version cannot be lower than v25.0.

Live Pull

Follow the general pull and playback process. For details, see CSS Playback.

Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback