- What's New
- Service Overview
-
Billing
- Billing Items
- Basic Service Billing
- Value-added Service Billing
- Billing Modes
- Changing the Billing Option
- Bills
- Arrears
- Billing Termination
-
Billing FAQs
-
Common Cases
- What Do I Need to Pay?
- Do I Need to Buy the CDN Service Before Using Live?
- How Do I Change the Billing Option?
- Do I Need to Delete Resources If I Don't Want to Use Live Any More?
- How Do I View the Usage and Expenditure of Pay-per-Use Live Resources?
- Is Downstream Traffic or Upstream Traffic Billed?
- Will I Be Billed for URL Validation?
- How Is Transcoding Billed?
- Does the Daily Peak Bandwidth Mean the Upstream Bandwidth or Downstream Bandwidth?
- Why Is a Recording Fee Deducted on the First Day of Each Month?
- Arrears
-
Common Cases
- Cloud Live
-
Media Live
- Overview
- Scenarios
- Functions
- Product Advantages
- Constraints
- Getting Started
-
Console Operations
- Prerequisites
- Functions
- Permissions Management
- Domain Name Management
- Channels
- Live Transcoding
- Service Monitoring
- Cloud Resource Authorization
- Tools
- Best Practices
-
Cloud Live API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
-
Domain Name Management
- Creating a Domain Name
- Deleting a Domain Name
- Modifying a Domain Name
- Querying a Domain Name
- Mapping Domain Names
- Deleting a Domain Name Mapping
- Configuring the Domain Name IPv6 Function
- Querying IP Address Information
- Modifying the Streaming Domain Name Delay
- Querying the Streaming Domain Name Delay
- Modifying the HLS Configuration of a Domain Name
- Querying HLS Configurations of Domain Names
- Modifying Origin Pull Settings
- Querying Origin Pull Settings
- Notification Management
-
Authentication Management
- Configuring a Referer Validation ACL
- Deleting a Referer Validation ACL
- Querying Referer Validation ACLs
- Querying IP Address ACLs
- Modifying an IP Address ACL
- Generating a Signed URL
- Querying Supported Areas of a Streaming Domain Name
- Modifying Supported Areas of a Streaming Domain Name
- Querying the URL Validation Configuration of a Specified Domain Name
- Modifying the URL Validation Configuration of a Specified Domain Name
- Deleting the URL Validation Configuration of a Specified Domain Name
- Snapshot Management
- Recording Management
- Recording Callback Management
- HTTPS Certificate Management
- OBS Bucket Management
- Transcoding Template Management
- Stream Management
-
Statistics Analysis
- Querying Peak Bandwidth
- Querying Total Traffic
- Querying HTTP Status Codes for Pulling Live Streams
- Querying the Duration of Transcoded Outputs
- Querying Recording Channels
- Querying the Number of Snapshots
- Querying Upstream Bandwidth
- Querying the Number of Stream Channels
- Querying the Historical Stream List
- Querying the Playback Profile
- Querying the Distribution of Live Streaming Metrics by Region
- Stream Analytics
- Appendix
- Change History
-
Media Live API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
-
OTT Channel Management
- Creating an OTT Channel
- Querying Channel Information
- Deleting Channel Information
- Modifying Channel Packaging Information
- Modifying Channel Input Stream Information
- Modifying Channel Recording Information
- Modifying General Channel Information
- Changing the Channel Status
- Modifying Channel Transcoding Template Information
- Appendix
- Change History
- Cloud Live Server SDK Reference
- Low Latency Live Client SDK Reference
- Troubleshooting
Reducing Stream Latency
Generally, the latency for RTMP and FLV streaming is about 5 seconds. If the latency is too high, perform the following operations to lower the latency.
Setting the GOP
A Group of Pictures (GOP) is a collection of successive pictures. Each picture is a frame, and therefore a GOP is a group of frames. A live stream is actually a series of video frame rate components, including I frames and P frames. A GOP starts with an I frame and multiple P frames. When a user watches a video for the first time, the player needs to find the latest I frame from the server before playing the video and sends the I frame to the user. Therefore, reducing the number of frames in a GOP can reduce the time used by the player to load the GOP. The recommended keyframe interval is 1–2s.
Selecting a Streaming Protocol
RTMP: rtmp://Streaming domain name/AppName/StreamName HTTP-FLV: http://Streaming domain name/AppName/StreamName.flv M3U8: http://Streaming domain name/AppName/StreamName.m3u8
- RTMP splits large video frames and audio frames, encrypts them, and transmits them as small data packets. However, packet disassembly and assembly are complex. Therefore, unexpected problems may occur if there are a large number of concurrent requests.
- HLS is a streaming media protocol launched by Apple. It works by breaking the overall stream into a sequence of small HTTP-based segments (5–10s) and uses the M3U8 index table to manage these segments. The videos downloaded by the client are complete segments. Therefore, videos play smoothly. However, the player starts playback only after caching three or four segments. Therefore, there will be a latency of about 10–30s.
- HTTP-FLV is launched by Adobe. Some tag headers are added to large video frames and audio and video headers. HTTP-FLV is mature in terms of latency and large-scale concurrency. However, it is only supported on certain mobile browsers.
To sum up, selecting HTTP-FLV as the streaming protocol can effectively reduce the latency. HLS is supported on most of browsers. Therefore, HLS is the first choice for many users.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.