Shadow Player - White-Label IPTV App + Full Reseller Portal (APK Builder, Device Management, Cloud DVR)
White-Label IPTV App + Full Reseller SaaS Portal

Not Just an App.
A Complete SaaS for Resellers.

A ~10MB Android TV / Fire TV / Android player your customers will love — plus the full control plane you need to run your business. Web-based APK build farm, live device dashboard, bulk remote commands, error log ingestion, one-line web player deploy, in-app broadcasts, Cloud DVR, and cross-device favorites sync. Pairs with Shadow Panel for the complete stack.

~10MB
App Size
1-Click
APK Build
☁
Cloud DVR
OTA
Auto Updates

Why Your Customers Hate Their Current App

The apps they're using were designed a decade ago. Time for something better.

Other IPTV Players

  • 50-100MB app size fills up cheap TV boxes
  • "Refresh Playlist" and "Update EPG" buttons everywhere
  • EPG takes 30 seconds to 5 minutes to load
  • Stale data from yesterday's sync
  • Clunky touch-first UI on TV remotes
  • No white-label or per-device fees

Shadow Player

  • Cloud DVR - schedule and watch recordings anytime
  • Zero refresh buttons - data loads automatically
  • Instant EPG - current info every time you open
  • Live TV, Movies & Series - complete entertainment
  • DirecTV-style interface built for D-pad
  • Full white-label with flat monthly pricing

Cloud DVR with Shared Recordings JOINT FEATURE

Your customers schedule recordings right from the app — no local storage, no NAS setup, no DVR box. Recordings run on your Shadow Panel load balancers with shared recording: 50 users recording the same show, one FFmpeg process runs. Playback streams back through the app like any other channel.

  • Schedule from EPG grid — one-tap record
  • Shared recordings: N viewers, 1 FFmpeg on LB (massive disk savings)
  • EPG auto-labeling at record time (title, episode, air date)
  • Records currently-airing programs, not just scheduled future ones
  • Per-user storage quotas, enforced server-side
  • DeltaSync-replicated playback across secondary mains
  • Requires Shadow Panel + Shadow Player together
// Customer taps "Record" on EPG entry
POST /dvr/schedule
  { channel_id: 1076,
    epg_id: "ep_8321",
    start: "2026-04-23T20:00Z" }

// 15s scheduler tick → FFmpeg on LB
  → recording begins at air time
  → title + episode auto-labeled
  → shared with 47 other viewers
     recording the same show
     (one FFmpeg, not 48)

// Playback = just another stream
GET /dvr/play/R12345.ts
  → streams through LB like a channel
  → scrubbing, pause, resume

Built for Shadow Panel BETTER TOGETHER

Shadow Player works great with any Xtream-compatible panel — but it was designed to pair with Shadow Panel. When both run together, your customers get features no other player + panel combo can deliver.

  • Cloud DVR — scheduler on the panel, playback in the app
  • Cloud Favorites Sync — favorites follow the user across devices
  • Bulk EPG API — instant EPG via Shadow API, no refresh cycles
  • 24/7 Virtual Channels with current-position metadata
  • Episode-level series metadata, not season-only
  • Custom EPG stream titles preserved end-to-end
  • Works with Xtream-only panels too — you don't have to use Shadow Panel
// Shadow API — what the app calls
GET /shadow/channels_bulk
  → live + 24/7 channels in one request
  → current EPG per channel
  → 50 upcoming programs per channel
  → poster / logo URLs (cached)
  → synced favorites list

// DVR — panel handles the heavy lifting
POST /dvr/schedule     → record
GET  /dvr/recordings   → list
GET  /dvr/play/"id"    → playback

// Favorites — sync from phone → TV in ~2s
POST /shadow/favorites
  { type: "channel", id: 1076 }

Your Own Reseller Portal FULL SAAS

This isn't just an app — it's a full SaaS control plane. Log in to your portal and build custom-branded APKs, monitor every device, send bulk commands, push settings, watch error reports roll in, and deploy a companion web player in one command. Everything operators used to need five separate tools for, in one place.

APK Build Farm

Pick your app name, colors (primary + accent), logo, splash image, and branch. Click Build. Signed APK ready in 10–15 minutes, versioned and downloadable from the portal.

main / beta branches · build history · stuck-build recovery

Device Management

Live dashboard of every installation: online status, model (Fire TV, NVIDIA Shield, etc.), app version, IP, last seen. Filter by online-only or version. Search by device or IP.

Total · Online Now · Recent (10min) · Active (24h)

Remote Commands

Send messages, clear cache, force updates, restart, kill the app, or wipe data — per-device or in bulk across hundreds of devices with one click. Changes land in seconds.

message · clear_cache · restart · force_update · terminate · wipe

Error Log Monitoring

Your customers' devices report playback errors straight to the portal. Filter by type, drill into stream URL + device + recovery status. Know about problems before they call.

STUCK_PLAYER · PLAYBACK_FAILED · NUCLEAR_RECOVERY

Push Player Settings

Change buffer size, EPG refresh, player options — per device or to every device at once. No app update needed. Settings land on next heartbeat.

bulk settings · per-device settings · heartbeat-driven

One-Line Web Player Deploy

Have a VPS? Paste one command and your branded web player is live. Portal tracks its health, stats, and lets you redeploy or push new branding without SSH'ing in again.

curl installer · node heartbeat · push-branding · redeploy

Broadcast Messages

Announce maintenance, upsell a new tier, or push an urgent notice. Broadcasts land as in-app messages across every active device — or a targeted subset.

all devices · targeted · scheduled

Custom DNS & Reporter

Point your branded app at your own domains. Manage multiple DNS entries per tier from the portal, plus configure the reporter server URL for device error ingestion.

1 / 5 / unlimited DNS entries by tier

Branch & Version Control

Master version bump, per-client version pinning, main/beta branch selection at build time. Roll out updates gradually — test on beta, promote to main when proven.

master version · per-client pin · auto-update flag
Portal › Device Management › Live
Total Devices
1,247
Online Now
318
Recent (10min)
57
Active (24h)
892
F65375E9…
Amazon Fire TV Stick 4K
2.0.128
just now
Send Cmd ›
8C24B853…
NVIDIA Shield TV Pro
2.0.128
2m ago
Send Cmd ›
14725013…
Xiaomi Mi TV Stick
2.0.127
9m ago
Send Cmd ›
10ADE7D9…
Chromecast with Google TV
2.0.128
just now
Send Cmd ›

Features That Set Us Apart

Everything resellers need. Nothing your customers don't.

APK Build Farm in the Portal

Web-based APK builder with color pickers for primary + accent, logo/splash upload, main/beta branch selector, version bumping. Signed APK lands in 10–15 minutes. Full build history with re-download and stuck-build recovery.

Bulk Remote Commands

Pick any subset of devices (or select all), choose from 7 actions — message, clear cache, restart, force update, kill, wipe, push player settings — click Apply. Hundreds of devices updated in seconds.

Live Device Dashboard

Every installation at a glance: Total, Online Now, Recent (10min), Active (24h). Per-device rows show model (Fire TV, Shield, etc.), version, IP, last seen. Filter by version or online-only. Search by device or IP.

Device Error Logs

Devices phone home with playback errors. Filter by type (STUCK_PLAYER, PLAYBACK_FAILED, NUCLEAR_RECOVERY), see stream URL + device + recovery status. Spot provider issues before your customers call.

Push Player Settings

Buffer sizes, EPG refresh intervals, playback options — change them per device or across your whole fleet. Settings land on the next device heartbeat. No app update required.

One-Line Web Player Deploy

Have a VPS? Paste one curl command and your branded web player is live. Portal monitors its heartbeat, shows 24h stats, and lets you redeploy or push new branding without touching the server again.

In-App Broadcasts

Announce maintenance, promote a new tier, or push an urgent notice. Broadcasts land as in-app messages across every active device (or a targeted subset). Compose, send, track delivery.

Main / Beta Branches

Build against beta to test cutting-edge features on a handful of devices. Build against main for the stable release every customer gets. Never ship a regression to your whole fleet again.

Master Version Control

Bump the master version to push updates to every client. Pin specific clients to a prior version if they can't upgrade yet. Auto-update flag controls whether devices prompt or apply silently.

Custom DNS Management

Point your branded app at your own domains — 1 entry on Starter, 5 on Professional, unlimited on Enterprise. Configure the reporter server URL for centralized error ingestion.

Cloud Favorites Sync

Favorites follow the viewer, not the device. Fire TV in the living room, phone in the kitchen, tablet in bed — same favorites, synced in seconds via Shadow Panel.

Proven Freeze Recovery

ExoPlayer dropping to IDLE? Position stalling? Shadow Player detects both, triggers a clean full reset, and reloads. Exponential backoff on errors (1s → 10s, 6 retries), based on Google's official ExoPlayer best practices.

Instant EPG Loading

EPG data streams on-demand. No downloading, no parsing, no waiting. Open a category and see current program info instantly.

Cloud DVR

Schedule recordings from the EPG. Watch anytime. Manage storage from the app. Your customers get true DVR without hardware.

No Refresh Required

Forget "Refresh Playlist" and "Update EPG" buttons. Shadow Player fetches fresh data automatically every time.

Classic Satellite UI

DirecTV-style grid EPG with channel numbers and lightning-fast D-pad navigation. Your customers already know how to use it.

OTA Updates

Push updates to all your customers instantly from your portal. No sideloading, no support tickets. One click updates everyone.

Full White-Label

Your logo, your colors, your app name. Custom package ID for Play Store. Your customers see your brand, not ours.

Device Management

See all active installations. Send messages. Push updates. Remotely manage every device running your app.

Remote Commands

Terminate sessions, clear cache, force updates - all from your reseller portal. Total control over deployed apps.

Web Player

Browser-based viewing for customers who can't install apps. Same great experience, no installation required.

Movies & Series

Full VOD library with poster art, descriptions, and episode browsing. Movies and TV shows alongside live channels.

Universal Search

Find anything instantly. Search across Live TV, Movies, and Series with real-time results as you type.

Audio & Subtitles

Multiple audio tracks and closed captions. Switch languages on the fly. Accessibility built in.

Favorites

Save favorite channels, movies, and series. Quick access to what your customers watch most.

Smart Recovery

Automatic freeze detection and recovery. Streams that drop reconnect instantly. No manual intervention needed.

Shadow Player vs. The Competition

See why resellers are switching from apps that haven't innovated in years.

Feature Shadow Player IPTV Smarters XCIPTV TiviMate
Web-based APK Build Farm (custom branding)
Live Device Dashboard (online/version/IP)
Bulk Remote Commands (restart/wipe/update)
Device Error Log Ingestion
Push Player Settings (bulk / per-device)
One-Line Web Player Deploy
In-App Broadcasts
Main / Beta Branch Management
Cross-Device Cloud Favorites Sync
App Size ~10 MB ~50 MB ~35 MB ~25 MB
Cloud DVR (scheduler + playback) Shared recordings
Instant EPG Loading
No Refresh Required
OTA Updates Premium only
Full White-Label Partial Partial
Custom Package ID
Device Management
Remote Commands
Smart Freeze Recovery
Movies & Series VOD
Audio Track Selection
D-Pad Optimized Excellent Mediocre Good Good
Pricing Model Flat Monthly Per-device fees Per-device fees End-user pays

Feel the Speed Difference

Real tests. Real numbers. No marketing fluff.

EPG Load Time

Time from opening category to seeing program info

Shadow Player Instant
TiviMate 30-60 seconds
XCIPTV 1-3 minutes
IPTV Smarters 2-5 minutes

App Size Comparison

Installed size on Android TV devices

Shadow Player ~10 MB
TiviMate 25 MB
XCIPTV 35 MB
IPTV Smarters 50 MB

Channel Navigation Speed

D-pad responsiveness in channel lists

Shadow Player Lightning
TiviMate Good
XCIPTV Decent
IPTV Smarters Sluggish

Data Freshness

How current is the playlist/EPG data?

Shadow Player Always Current
Others Last Refresh

Other apps show data from when you last hit "Refresh." Shadow Player always shows live data.

Simple, Predictable Pricing

No per-device fees. No surprises. Scale profitably.

Starter
$ 25 /mo

Perfect for new resellers getting started.

250 Active Devices
2 Builds/Month
  • Full white-label branding
  • Device management
  • Remote commands
  • OTA updates
  • 1 DNS entry
  • Web player
  • Custom package ID
Get Started
Enterprise
$ 199 /mo

For established resellers at scale.

Unlimited Devices
Unlimited Builds
  • Everything in Professional
  • Unlimited devices
  • Unlimited DNS entries
  • Priority build queue
  • Advanced features
Contact Sales

Ready to Upgrade Your IPTV Business?

Stop losing customers to slow, bloated apps. Give them the fastest IPTV experience on the market.

© 2026 Shadow Player. The white-label IPTV app + full reseller SaaS. Pairs with Shadow Panel for the complete stack.