Stream video that adapts to any connection

Upload once, stream everywhere. Automatic HLS transcoding with adaptive bitrate. Quality adjusts to viewer bandwidth in real-time.

HLSAdaptive Bitrate4K SupportGlobal CDN
import { Stack0 } from '@stack0/sdk'
const stack0 = new Stack0({ apiKey: process.env.STACK0_API_KEY })
// Upload and process video
const { videoId, hlsUrl } = await stack0.cdn.video.upload({
file: videoFile,
folder: 'courses',
transcode: {
qualities: ['360p', '720p', '1080p'],
format: 'hls',
},
})
// Get video status
const status = await stack0.cdn.video.getStatus(videoId)
// Generate thumbnail from video
const thumbnail = await stack0.cdn.video.thumbnail(videoId, {
time: 5,
width: 1280,
height: 720,
})

Features

What's included

HLS Streaming

Industry-standard adaptive streaming. Works on every platform.

Multiple Qualities

360p to 4K. Viewers get the best quality their connection supports.

Global CDN

Video segments cached worldwide. Low latency for viewers everywhere.

Auto Transcoding

Upload MP4, MOV, WebM. We handle format conversion automatically.

Mobile Optimized

Efficient encoding for mobile devices. Save viewer bandwidth.

Fast Start

Optimized for quick playback start. Viewers see video, not spinners.

Why Stack0

Built for production

Adaptive bitrate

Quality adjusts automatically based on viewer bandwidth. No buffering, no manual quality switching.

Automatic transcoding

Upload any format. We transcode to HLS with multiple quality levels automatically.

Global delivery

Video segments cached at edge locations worldwide. Low latency everywhere.

Universal playback

HLS works in Safari natively, everywhere else with hls.js. One URL, all devices.

Thumbnail generation

Extract thumbnails at any timestamp. Preview images generated automatically.

Simple pricing

$0.10 per GB streamed. Transcoding included. No per-minute fees.

Applications

Common implementations

Course Platforms

Stream educational content with quality that adapts to student connections.

Product Demos

Showcase products with smooth video playback on any device.

User-Generated Content

Let users upload videos. Automatic processing handles the complexity.

Marketing Videos

Embed videos on landing pages with reliable, fast playback.

FAQ

Frequently asked questions

Stack0 accepts MP4, MOV, WebM, AVI, and MKV files. Videos are automatically transcoded to HLS format with multiple quality levels for adaptive streaming.

Transcoding typically takes 1-2x the video duration for standard quality levels. A 10-minute video usually processes in 10-20 minutes. You can poll the status endpoint or use webhooks for completion notifications.

You can specify any combination of 360p, 480p, 720p, 1080p, and 4K. Each quality level creates a separate video stream that players automatically switch between based on viewer bandwidth.

HLS adaptive streaming includes multiple quality versions of your video. Players automatically detect viewer bandwidth and switch between qualities seamlessly, ensuring smooth playback without buffering.

The maximum file size is 10GB per video. For larger files, contact us about enterprise options with higher limits.

Ready to build?

Plans start at $5/month.

Get Started