-
Notifications
You must be signed in to change notification settings - Fork 9.9k
[Stream] live stream troubleshooting guide #23829
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+68
−0
Merged
Changes from 14 commits
Commits
Show all changes
18 commits
Select commit
Hold shift + click to select a range
99cad4a
[stream] troubleshooting
ToriLindsay 43a8809
[Stream] live stream troubleshooting guide
ToriLindsay e17da1d
Added error code section
ToriLindsay d2ee5e8
Add descriptions of terms
ToriLindsay ba7a4fb
Update src/content/docs/stream/stream-live/troubleshooting.mdx
ToriLindsay 3f5e64b
Update src/content/docs/stream/stream-live/troubleshooting.mdx
ToriLindsay ca055e2
Update src/content/docs/stream/stream-live/troubleshooting.mdx
ToriLindsay 4b021f2
[Stream]: Some edits re basic troubleshooting for live
tsmith512 598ef3a
Fixed typos and grammar, rearranged for better flow
ToriLindsay 5999105
[Stream] Minor tweaks
tsmith512 84cb173
[Stream] Remove Live event log for now, need to revise before publishing
tsmith512 e6ee565
[Stream] CHangelog, adjust nav pattern, add article
tsmith512 47e0f42
Adjustments suggested by @nikitacano
tsmith512 ea32098
Update date
tsmith512 bfbfdae
Wording tweaks
ToriLindsay 90a0b2f
Update src/content/changelog/stream/2025-08-06-stream-live-observabil…
ToriLindsay a1153c3
Update src/content/changelog/stream/2025-08-06-stream-live-observabil…
ToriLindsay 0ae6d94
Fix rollout date
tsmith512 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 24 additions & 0 deletions
24
src/content/changelog/stream/2025-08-06-stream-live-observability.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| --- | ||
| title: Introducing observability and metrics for Stream Live Inputs | ||
| description: > | ||
| Use new observability on Stream Live Inputs to better understand broadcast-side | ||
| health and performance, now available easily in Dash and programmatically via | ||
| GraphQL. | ||
| date: 2025-08-06 | ||
| --- | ||
|
|
||
| New information about broadcast metrics and events is now available in | ||
| [Cloudflare Stream](/stream/) in the Live Input details of the Dashboard. | ||
|
|
||
|  | ||
|
|
||
| You can now easily understand broadcast-side health and performance with new | ||
| observability, which can help when troubleshooting common issues, particularly | ||
| for new customers who are just getting started and platform customers who may | ||
ToriLindsay marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| have limited visibility into how their end-users configure their encoders. | ||
|
|
||
| To get started, start a live stream ([just getting started?](/stream/examples/obs-from-scratch/)), then visit the Live Input details page in Dash. | ||
|
|
||
| See our new live [Troubleshooting](/stream/stream-live/troubleshooting/) guide | ||
| to learn what these metrics mean and how to use them to address common broadcast | ||
| issues. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| --- | ||
| pcx_content_type: troubleshooting | ||
| title: Troubleshooting a live stream | ||
| sidebar: | ||
| order: 12 | ||
|
|
||
| --- | ||
| import { Steps, Details } from "~/components" | ||
|
|
||
| In addition to following the live stream troubleshooting steps in this guide, make sure that your video settings align with [Cloudflare live stream recommendations](/stream/stream-live/start-stream-live/#recommendations-requirements-and-limitations). If you use OBS, you can also check these [OBS-specific recommendations](/stream/examples/obs-from-scratch/#6-optional-optimize-settings). | ||
|
|
||
| ## Buffering, freezing, and latency | ||
|
|
||
| If your live stream is buffering, freezing, experiencing latency issues, or having other similar issues, try these troubleshooting steps: | ||
|
|
||
| <Steps> | ||
| 1. Go to the [Cloudflare dashboard](https://dash.cloudflare.com) > **Stream** > **Live Inputs**. Locate the Live Input in use and click on it, then click on the **Metrics** tab. | ||
|
|
||
| 2. Look at your **Keyframe Interval** chart. | ||
|
|
||
| It should be a consistent flat line that stays between 2s and 8s. If you see an inconsistent or wavy line, or a line that is consistently below 2s or above 8s, adjust the keyframe interval (also called GOP size) in your software or service used to send the stream to Cloudflare. The exact steps for editing those settings will depend on your platform. | ||
| * Start by setting the keyframe interval to 4s. If playback is stable but latency is still too high, lower it to 2s. If you are experiencing buffering or freezing in playback, increase it to 8s. | ||
|
|
||
| * If the keyframe interval is "variable" or "automatic", change it to a specific number instead, like 4s. | ||
|
|
||
| <Details header="What is a keyframe interval?"> | ||
| The keyframe interval (also called GOP size) is a measurement of how often keyframes are sent to Stream. A shorter keyframe interval requires more internet bandwidth on the broadcast side, but can reduce glass-to-glass latency. A longer keyframe can reduce buffering and freezing at the expense of increasing glass-to-glass latency, and it requires less bandwidth. | ||
| </Details> | ||
|
|
||
| 3. Look at your **Upload-to-Duration Ratio** chart. | ||
|
|
||
| It should be a consistent flat line below 90%. If you see an inconsistent or wavy line, or a line that is consistently above 100%, try the following troubleshooting steps: | ||
| * [Check that your internet upload speed](https://speed.cloudflare.com/) is at least 20 Mbps. If it is below 20 Mbps, use common troubleshooting steps such as restarting your router, using an Ethernet connection instead of Wi-Fi, or contacting your internet service provider. | ||
|
|
||
| * Check the video bitrate setting in the software or service you use to send the stream to Cloudflare. | ||
| * If it is "variable", change it to "constant" with a specific number, like 8 Mbps. | ||
| * If it is above 15 Mbps, lower it to 8 Mbps or 70% of your internet speed, whichever is lower. | ||
|
|
||
| * Follow the steps above (in step 2) to _increase_ the keyframe interval in the software or service you use to send the stream to Cloudflare. | ||
|
|
||
| <Details header="What is the upload-to-duration ratio?"> | ||
| The upload-to-duration ratio is a measurement of how long it takes to upload a part of your stream compared to how long that part would take to play. A ratio of less than 100% means that your stream is uploading at least as fast as it would take to play, so it should not experience buffering or freezing for most users. A ratio of 100% or more means that your video is uploading slower than it would take to play, so it is likely that most users will experience buffering and freezing. | ||
| </Details> | ||
| </Steps> |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.