FULL FEATURE BREAKDOWN Everything the platform includes

ProPanel Product Overview

A complete IPTV streaming platform โ€” live engine, delivery, security, management, and APIs โ€” all in one self-hosted package.

Live Engine Xtream Codes Adaptive Bitrate DVR & Catchup 24/7 Channels Security Reseller EPG Monitoring ๐Ÿ†• Latest
Core Engine

๐Ÿ“ก FFmpeg Live
Streaming Engine

ProPanel ingests RTMP, SRT, RIST and WebRTC sources and runs them through FFmpeg (or GStreamer) for real-time HLS segmentation. Each stream gets its own isolated process managed by a compiled Go master/worker cluster โ€” if one stream crashes, it never affects any other.

  • ๐Ÿ“ฅ RTMP ingest โ†’ automatic HLS segmentation
  • ๐Ÿ”€ Master/worker cluster โ€” isolated FFmpeg per stream
  • โ™ป๏ธ Per-stream process lifecycle (start, monitor, restart)
  • ๐Ÿ“Š Live FFmpeg stats: fps, bitrate, encoding speed
  • ๐Ÿฉบ ffprobe source health checks before stream goes live
  • ๐Ÿ” Automatic reconnect on source drop
  • โš™๏ธ Configurable segment duration and playlist window
# Stream flow
RTMP source
  โ†’ FFmpeg process (per stream)
  โ†’ HLS segments (.ts files)
  โ†’ nginx (auth_request gate)
  โ†’ player (TiViMate, VLCโ€ฆ)

# Live stats endpoint
GET /api/streams/:id/stats

{
  "fps": 29.97,
  "bitrate_kbps": 4200,
  "speed": "1.00x",
  "uptime_s": 86400
}
Minimum Requirements
Ubuntu 20.04+ or Debian 11+
2 vCPU ยท 2 GB RAM (4 GB recommended)
10 GB disk + storage for segments/DVR
Port 1935 (RTMP) ยท Port 80/443 (HTTP/S)
Player Compatibility

๐Ÿ“บ Xtream Codes
Compatible API

ProPanel implements the full Xtream Codes player API spec, making it compatible with every major IPTV application out of the box. Subscribers connect using standard credentials โ€” no special app or custom client needed.

TiViMate IPTV Smarters Pro GSE Smart IPTV Perfect Player Kodi (IPTV Simple) VLC OTT Navigator Sparkle
  • ๐Ÿ“บ Live TV, VOD, and Series via single API
  • ๐Ÿ“‹ EPG/programme guide served automatically
  • ๐Ÿ”‘ Per-subscriber credentials and connection limits
  • ๐Ÿ“‚ Custom categories and bouquets
  • ๐Ÿ“… Stream expiry and subscription management
# Get subscriber info
GET /player_api.php
  ?username=sub&password=pass

# Live streams list
GET /player_api.php
  ?action=get_live_streams
  ?category_id=5

# M3U playlist
GET /get.php
  ?username=sub&password=pass
  &type=m3u_plus&output=ts

# EPG data
GET /xmltv.php
  ?username=sub&password=pass

# HLS stream URL
/live/sub/pass/stream_id.m3u8
Pro & Enterprise

๐ŸŽš๏ธ Adaptive Bitrate
Streaming (ABR)

ABR transcodes each live stream into multiple quality variants simultaneously using separate FFmpeg processes. The viewer's player automatically picks the best quality their connection can sustain in real time โ€” eliminating buffering without requiring any client configuration.

  • ๐Ÿ”€ Per-variant FFmpeg process โ€” independent crash isolation
  • โš™๏ธ Configurable variants: resolution, bitrate, codec settings
  • ๐Ÿ“„ HLS master playlist with variant stream descriptors
  • ๐Ÿ“ถ Players auto-select variant based on measured bandwidth
  • ๐ŸŽฅ Supports 1080p, 720p, 480p, 360p variants simultaneously
  • ๐Ÿ—„๏ธ ABR config stored per-stream in the database
Example ABR Ladder
1080p 5,000 kbps source quality
720p 2,500 kbps solid WiFi
480p 1,000 kbps mobile 4G
360p 500 kbps slow connection
Available on Pro & Enterprise plans.
ABR requires more CPU โ€” plan for ~1 additional vCPU per active ABR stream with 3โ€“4 variants.
All Plans

๐Ÿ“ผ DVR &
Catchup

ProPanel continuously records HLS segments for every enabled channel, organized into hourly buckets on disk. Subscribers can rewind live TV and watch any past moment within the configured retention window โ€” delivered through the same Xtream Codes catchup API used by all major apps.

  • ๐Ÿ’พ Continuous segment recording to disk (hourly buckets)
  • ๐Ÿ—“๏ธ Configurable retention: hours, days, or custom per-stream
  • ๐Ÿ“บ Xtream Codes catchup API โ€” works in TiViMate, IPTV Smarters
  • โฎ๏ธ Time-shift playback from any point in the retention window
  • ๐ŸŽ›๏ธ Per-stream enable/disable catchup independently
  • ๐Ÿ—‘๏ธ Automatic segment cleanup when retention expires
Catchup URL Format
# Xtream Codes timeshift URL
/timeshift/user/pass/
  duration/YYYY-MM-DD:HH-MM/
  stream_id.ts

# Archive / start-over
/streaming/timeshift.php
  ?username=user
  &start=2026-05-20:20-00
  &duration=60
Disk planning: Each HD stream generates ~2โ€“3 GB/hour of segments. 7-day retention on 10 streams = ~500โ€“700 GB. Enterprise plans support custom retention policies and external storage mounts.
Pro & Enterprise

๐Ÿ” 24/7
Channels

Create always-on TV channels from local media files without a live source. FFmpeg's concat demuxer loops through a playlist of video files continuously, serving them as a standard HLS stream โ€” indistinguishable from a live broadcast.

  • ๐ŸŽž๏ธ FFmpeg concat demuxer โ€” seamless file-to-file looping
  • ๐Ÿ”ข Sequential mode โ€” plays files in defined order
  • ๐Ÿ”€ Shuffle mode โ€” randomizes playback order each loop
  • ๐Ÿ“บ Served as standard HLS โ€” plays in any Xtream Codes app
  • ๐Ÿ“ Supports MP4, MKV, TS, and any FFmpeg-compatible format
  • ๐Ÿ“ผ Combine with DVR to offer catchup on 24/7 channels
Common Use Cases
๐Ÿ“ฐ
News Channel
Loop news segments, headlines, and weather 24/7
๐ŸŽฌ
Movie Channel
Scheduled film playlist with intro bumpers
๐ŸŽต
Music TV
Continuous music video rotation
๐Ÿ“š
Training Channel
Employee or customer onboarding content
All Plans

๐Ÿ›ก๏ธ Security Architecture

Every layer is protected โ€” from stream ingest to the last segment byte delivered to the viewer.

๐Ÿ”’

AES-128 HLS Encryption

Every HLS segment is encrypted with AES-128-CBC. Encryption keys are rotated on a configurable interval and served through a separate authenticated endpoint. Raw segment files are useless without the key.

๐Ÿ”

nginx auth_request Segment Gating

nginx intercepts every .ts segment request and makes a sub-request to ProPanel's /internal/hls-auth endpoint. If the session token is invalid or expired, nginx returns 401 โ€” the segment is never served. No segment is directly accessible.

๐Ÿ“ต

Per-Stream Connection Limits

Each stream has a configurable maximum concurrent viewer count. Limits are enforced atomically using Redis Lua scripts โ€” preventing race conditions even under high concurrency. Subscribers over the limit receive a 429 response.

๐Ÿšซ

DDoS Protection & Auto-Ban

Connection abuse detection with configurable rate thresholds. IPs exceeding the threshold are automatically added to a ban list enforced at the nginx level. Bans expire automatically or can be managed manually from the admin panel.

๐Ÿ”ข

TOTP 2FA (Admin Panel)

Time-based one-time password authentication for the ProPanel admin interface. Enforce 2FA on all admin accounts to prevent unauthorized panel access even if credentials are compromised. Compatible with Google Authenticator, Authy, and any TOTP app.

๐Ÿ”‘

IP-Locked License Keys

Each license key is bound to an authorized list of server IP addresses. Requests from unlisted IPs are rejected at the API level before any stream data is served. IP lists are managed from the ProPanel.ai dashboard.

# nginx โ€” auth_request on HLS segments
location ~ ^/hls/.*\.ts$ {
  auth_request /internal/hls-auth;
  auth_request_set $auth_status $upstream_status;
  proxy_pass http://propanel;
}

location = /internal/hls-auth {
  internal;
  proxy_pass http://propanel/internal/hls-auth;
  proxy_cache hls_auth_cache;
  proxy_cache_valid 200 10s;
}
Pro & Enterprise

๐Ÿ‘ฅ Reseller
Panel

Delegate stream management to resellers with a credit-based billing model. Each reseller gets their own isolated environment to manage subscribers, packages, and streams โ€” with a credit balance you control.

  • ๐Ÿ’ฐ Credit-based reseller accounts โ€” you top up, they sell
  • ๐Ÿ‘ค Each reseller manages their own subscriber base
  • ๐Ÿ“ฆ Resellers create packages with custom stream limits
  • ๐Ÿ‘๏ธ Parent admin sees all reseller activity and usage
  • ๐Ÿ” Reseller panel access via separate login
  • โšก API access for reseller automation
Reseller Hierarchy
Admin (you)
Full platform access ยท Sets reseller credit limits
Reseller A
100 credits ยท 47 active subscribers
Subscribers
Alice, Bob, Carolโ€ฆ
Reseller B
200 credits ยท 120 active subscribers
Subscribers
Dave, Eve, Frankโ€ฆ
All Plans

๐Ÿ“‹ EPG /
XMLTV Support

Import Electronic Programme Guide data for any channel and serve it to subscribers through the standard Xtream Codes EPG endpoint. All major IPTV apps display programme information automatically when the EPG URL is configured.

  • ๐Ÿ“ฅ Standard XMLTV format import
  • ๐Ÿ“ก Per-channel EPG source assignment
  • ๐Ÿ“ค Served via Xtream Codes /xmltv.php endpoint
  • ๐Ÿ“บ Compatible with all apps that support Xtream Codes EPG
  • ๐Ÿ—“๏ธ Now/next programme info in player guides
<!-- XMLTV format -->
<tv>
  <channel id="BBC1">
    <display-name>BBC One</display-name>
  </channel>

  <programme
    start="20260520200000 +0000"
    stop="20260520210000 +0000"
    channel="BBC1">
    <title>The News at Ten</title>
    <desc>...</desc>
  </programme>
</tv>
Enterprise

๐Ÿ“ˆ Monitoring &
Observability

Real-time insight into every stream, connection, and system resource.

๐Ÿ“Š

Prometheus Metrics

Export platform metrics to Prometheus at /metrics. Covers active streams, total connections, segment generation rate, FFmpeg process health, Redis stats, and system CPU/memory. Plug straight into Grafana for dashboards.

โšก

Live Stream Stats

Per-stream real-time stats pulled from FFmpeg: current fps, encoded bitrate (kbps), encoding speed multiplier, and total uptime. Exposed via REST API so you can build custom monitoring dashboards or alerts.

๐Ÿฉบ

Source Health Probes

ffprobe runs background health checks against each stream's RTMP source. Detect source failures before viewers do โ€” with configurable probe intervals and automatic alerting when a source goes dark or degrades below threshold.

๐ŸŒ

Clustered & Highly Available

Run ProPanel across many servers from one master. PostgreSQL is the single source of truth and a WireGuard mesh links every node privately. One-click High Availability with Redis Sentinel removes the single point of failure, and the Smart Load Balancer can auto-provision new edge servers on demand.

๐Ÿ—„๏ธ

CDN Offloading

Offload HLS segment delivery to a CDN for large-scale deployments. ProPanel handles ingest, transcoding, and segment generation; your CDN handles distribution. Reduces egress load on the origin server at high viewer counts.

โšก

Redis Session Layer

Redis manages HLS session tokens, active connection tracking, and stream heartbeats. All operations that must be race-condition-free (connection limit enforcement, token validation) use Redis Lua scripts for atomic execution.

What's New

๐Ÿ†• Latest Capabilities

The platform keeps growing. Here's a snapshot of the newest features โ€” see the full documentation for how each one works.

๐Ÿ”—
P2P Delivery
Peer-to-peer HLS over WebRTC cuts origin bandwidth on popular channels.
๐Ÿš€
Modern Delivery
GPU transcode, LL-HLS, CMAF/DASH, HEVC/AV1, captions & watermarking.
๐Ÿ“ก
Pro Ingest
SRT, RIST, WebRTC WHIP/WHEP and telco multicast sources.
๐Ÿ”
Studio DRM
FairPlay, Widevine & PlayReady packaged on the fly.
๐Ÿ’ฐ
Server-Side Ads
SCTE-35 + VAST ad stitching that can't be blocked.
๐Ÿ“ฑ
Branded Apps
White-label Flutter, Roku & Tizen apps with casting.
๐ŸŽฌ
Fast VOD
Edge direct-play with a shared progressive cache.
โ˜๏ธ
Cloud & HA
One-click cloud provisioning, autoscaling and HA.
๐Ÿ“ฅ
Migration
Import from Xtream, XUI, NXT and ProPanel v1.
Read the feature docs โ†’

Ready to Deploy?

Get your IPTV platform running in minutes with our SSH-powered installer.

Ubuntu 20.04+ ยท Debian 11+ ยท 2GB RAM minimum ยท SSL via Let's Encrypt