Skip to content
Vidiyo
FeedWatchTV guideFor creatorsYour brandPricingAppsSupport
DevelopersAbout
Watch nowWatch
  1. Learn
  2. Technical
  3. HLS Manifests Explained for FAST Channel Operators
Technical

HLS Manifests Explained for FAST Channel Operators

What HLS (HTTP Live Streaming) is, how manifests work, what adaptive bitrate means for your viewers, and what FAST channel operators need to know about their HLS stream without getting a computer science degree.

By David NaffisMay 22, 2026Updated August 3, 202612 min read
Editorial photo for: HLS Manifests Explained for FAST Channel Operators

HLS (HTTP Live Streaming) is the video delivery protocol that powers virtually every FAST channel. Your viewers receive HLS streams. Your SSAI system delivers ads via HLS. Your EPG is linked to your HLS output.

Detail view for article: HLS Manifests Explained for FAST Channel Operators

You don't need to understand every technical detail of HLS to run a FAST channel. Your platform handles the implementation. Still, the basics help you debug problems, ask better questions, and make informed decisions about content quality settings.

Validate a live feed with the HLS manifest validator. Preview playback in the HLS stream player.


Quick answers

What is an HLS manifest? A playlist file (usually .m3u8) that tells the player which media segments to fetch and in what order.

Do FAST operators hand-write manifests? No on managed platforms. Playout generates master and media playlists continuously.

Why does source quality matter? ABR can only go as high as your source. A 480p master cannot become a true 1080p ladder.

How do ads appear in HLS? SSAI rewrites the playlist around SCTE-35 cue markers so the player sees one continuous stream.

Which tools should I use to inspect a stream? HLS manifest validator for structure checks and HLS stream player for playback.


What HLS is

HLS is a protocol developed by Apple that breaks a video stream into small chunks (segments) and serves them over HTTP. Instead of sending one continuous video file, HLS sends a playlist file (the manifest) that tells the player where to get each segment, in order.

A basic HLS stream looks like this:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:1847
#EXTINF:6.0,
https://cdn.example.com/channel/segments/1847.ts
#EXTINF:6.0,
https://cdn.example.com/channel/segments/1848.ts
#EXTINF:6.0,
https://cdn.example.com/channel/segments/1849.ts

Each #EXTINF tag is a 6-second segment. The player fetches them in sequence and stitches them together into a seamless video.

For a live/linear channel, this manifest is updated every few seconds. The player keeps polling for new segments. This is how your FAST channel delivers real-time content to viewers.


The master manifest vs. media playlists

An HLS stream typically has two levels of manifests:

Supporting editorial photo for: HLS Manifests Explained for FAST Channel Operators

Master manifest (also called "multi-variant playlist"): Lists the available quality levels (bitrate variants) for a stream. Looks like this:

#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=800000,RESOLUTION=854x480
480p/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2800000,RESOLUTION=1280x720
720p/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5000000,RESOLUTION=1920x1080
1080p/index.m3u8

Media playlist: The per-quality segment list shown above.

The player requests the master manifest first, picks the appropriate quality based on network conditions, then requests the media playlist for that quality.

For FAST channels, your platform generates and maintains both. You don't hand-craft these files.


Adaptive bitrate streaming (ABR)

Adaptive bitrate (ABR) is the system that automatically adjusts video quality based on the viewer's internet connection speed. When a viewer on a slow connection watches your channel:

  1. The player requests the master manifest
  2. It starts with a lower bitrate (e.g., 480p at 800 Kbps)
  3. As the network improves, it switches up to 720p or 1080p
  4. If the network degrades, it switches back down

The viewer never has to manually select quality. The player switches seamlessly in the background.

Why this matters for you: Your source content quality sets the ceiling for your ABR ladder. If you upload a 480p source file, your channel can never deliver 1080p regardless of the viewer's connection speed. Always upload the highest quality source file you have.

Typical FAST ABR ladder:

VariantResolutionBitrate
Low426×240400 Kbps
Medium854×480800 Kbps
High1280×7202500 Kbps
HD1920×10805000 Kbps

Your platform transcodes your source content to all variants automatically.


Segment duration

Most FAST platforms use 2-6 second segments. Shorter segments:

  • Lower latency (the viewer is closer to "live")
  • More frequent HTTP requests (more overhead)
  • Better for ad insertion (shorter segments = more precise ad break alignment)

Longer segments:

  • Lower HTTP overhead
  • Higher latency
  • Simpler for VOD playout

For live FAST channels, 2-4 second segments are standard. For VOD content scheduled in a linear channel, 6-10 second segments are common.


How SSAI modifies the HLS manifest

When SSAI is active on your channel, the SSAI system sits between the player and your origin HLS manifest. It:

  1. Receives the player's manifest request
  2. Fetches the original content manifest from your playout engine
  3. Detects upcoming SCTE-35 ad break cues
  4. Fetches ad segments from your ad server (VAST response)
  5. Replaces the SCTE-35-marked content segments with ad segments
  6. Returns a modified manifest to the player

The player sees one seamless stream. It doesn't know whether it's watching content or an ad. This is why SSAI produces no buffering at ad breaks (unlike client-side ad insertion, where the player pauses and fetches a separate ad stream).

SSAI basics: what is SSAI. Break design: designing ad breaks for FAST channels.


SCTE-35 in HLS manifests

SCTE-35 cue markers in an HLS manifest look like this:

#EXT-X-CUE-OUT:30.0
#EXTINF:2.0,
segment_ad_break_start.ts
#EXT-X-CUE-IN
#EXTINF:6.0,
segment_content_resumes.ts
  • #EXT-X-CUE-OUT:30.0: Signal that an ad break starts here, lasting 30 seconds
  • #EXT-X-CUE-IN: Signal that the ad break ends, content resumes

Your FAST playout engine inserts these markers based on your configured ad break schedule. The SSAI system watches for them and triggers ad decisioning.


Checking your HLS stream

You can inspect your HLS manifest directly. Your channel's HLS URL ends in .m3u8. You can open it in a browser or use a tool like HLS.js demo to play it.

Prefer first-party tools when you are debugging a Vidiyo-related or partner feed:

  • Structure and tag sanity: HLS manifest validator
  • Visual playback check: HLS stream player

To check the manifest text, use curl:

curl "https://your-channel-hls-url.m3u8"

Common things to verify:

  • All referenced segment URLs are accessible (return 200, not 404)
  • Segment duration is consistent
  • SCTE-35 markers appear at expected ad break times
  • Audio and video tracks are present at all bitrate variants

Operator debugging checklist

When viewers report buffering or black screens, work this order:

  1. Open the master playlist. Confirm variants exist and URLs resolve.
  2. Open one media playlist. Confirm #EXTINF durations and media sequence advance over time.
  3. Fetch two segment URLs. 404s mean packaging or CDN path issues.
  4. Watch through an ad break. If content plays but ads fail, check SSAI and VAST, not source video.
  5. Compare devices. A failure only on one TV app can be player-specific, not origin-wide.

Document the failing .m3u8 URL, timestamp, and device. That package speeds support conversations.


What operators don't need to manage

If you're on a managed FAST platform like Vidiyo, you don't need to:

  • Generate HLS manifests
  • Manage CDN distribution
  • Handle segment storage
  • Configure bitrate ladders
  • Write SCTE-35 markers

The platform handles all of this. Your job is to upload quality source content, build your schedule, and configure monetization.


How HLS connects to EPG and scheduling

HLS is the delivery pipe. EPG is the guide. Scheduling is the plan that feeds both.

When a title starts in your grid, playout switches the media that segments encode, and EPG lists that title for the same window. If the schedule and EPG disagree, viewers trust neither. Keep metadata clean so the guide matches the stream. EPG detail: EPG generation for FAST channels. Scheduling detail: channel scheduling for 24/7 playout.



Operator takeaway

Treat this page as a working checklist, not a one-time read. Revisit it when you change schedule density, ad load, distribution targets, or source quality. Small weekly improvements compound faster than a single big relaunch. If you need a free place to run the channel while you learn, start creating on Vidiyo.

What's next

  • What is SSAI
  • EPG generation for FAST channels
  • Channel scheduling for 24/7 playout
  • Tools: HLS manifest validator, HLS stream player
Written by
David Naffis

Founder, Vidiyo

Founder of Vidiyo. Writes about FAST channels, free live TV, and creator distribution.

More from David →
SharePost on XLinkedIn
← Newer guideFCC Captions Requirements for FAST ChannelsOlder guide →How to Start a FAST Channel

Ready to launch your TV channel?

Vidiyo handles streaming, ads in the stream, the TV guide, and apps on every screen so you can focus on programming.

Start creating, freeSee how it works →

More in Technical

SSAI Ad Prefetch for CTV Streams Explained

SSAI ad prefetch fetches and prepares ads before a CTV break fires. Learn how pre-fetching cuts stitch latency, and how Vidiyo's playout warms pods.

6 min read →
What Is VMAP? Video Multiple Ad Playlist

VMAP schedules when ad breaks run in a video session. VAST fills each break with creatives. Learn how VMAP differs from SCTE-35 cues in live FAST.

6 min read →
HLS vs DASH: Which Streaming Protocol Should You Use?

HLS vs DASH: both stream video in small chunks over HTTP. Compare device support, latency, and DRM, and see why FAST platforms ship HLS first in practice.

6 min read →

In this article

  • Quick answers
  • What HLS is
  • The master manifest vs. media playlists
  • Adaptive bitrate streaming (ABR)
  • Segment duration
  • How SSAI modifies the HLS manifest
  • SCTE-35 in HLS manifests
  • Checking your HLS stream
  • Operator debugging checklist
  • What operators don't need to manage
  • How HLS connects to EPG and scheduling
  • Operator takeaway
  • What's next
← More technical← All guides
Vidiyo

Clips, live streams, and your own TV channel. Free on every screen.

Product

  • Watch
  • Feed
  • TV guide
  • For creators
  • Who it's for
  • Your brand
  • Pricing
  • Apps
  • Support

Resources

  • Learn
  • SIGNAL
  • Tools
  • Compare
  • About
  • RSS feed

Developers

  • Overview
  • REST API
  • MCP server

Legal

  • Terms
  • Privacy
  • Cookies
  • DMCA
  • Creator agreement
  • Trust & Safety
Get the app
  • iPhone & iPad
  • Android
  • Roku
  • Fire TV
  • Android TV
  • Apple TV
  • Samsung
  • LG
  • Vizio
© 2026 Vidiyo. Made for creators, everywhere.