
xTeVe
M3U proxy for Plex and Emby live TV
xTeVe is an application that simulates a TV tuner, allowing you to have IPTV channels via Plex or Emby without physical hardware. It can merge multiple M3U playlists and XMLTV files into a single unified source, providing your media server with access to live TV channels. QuickBox Pro installs xTeVe from the official releases with per-user systemd services, auto-incremented ports, and optional beta branch access.
📡 IPTV Integration
Integrate IPTV channels into Plex or Emby as if you had a real TV tuner
🔗 M3U Merging
Combine multiple M3U playlists from different IPTV providers into one source
📺 XMLTV EPG Support
Electronic Program Guide data with schedule information for all channels
🎚️ Channel Filtering
Filter, sort, and map channels with custom numbering and organization
⚡ Stream Buffering
Built-in buffer management for smooth playback and reduced buffering
🔄 HDHomeRun Emulation
Emulates HDHomeRun tuner for compatibility with Plex and Emby
Requires Plex or Emby
xTeVe requires Plex Media Server or Emby to function. It acts as a middleman between your IPTV sources and your media server’s live TV feature.
Installation
Symptoms
- QuickBox Pro v3 installed and configured
- Plex or Emby installed with live TV feature enabled
- IPTV subscriptions with M3U playlist URLs
- User account created on the server
Resolution
- Use QuickBox's qb command for installation
- Automatic binary download from official releases
- Per-user installation with isolated configuration
- Latest stable or beta version support
Basic Installation
Install xTeVe for a specific user:
qb install xteve -u usernameBeta Installation
Install latest beta version for early features:
qb install xteve -u username --betaCLI Commands
| Command | Description |
|---|---|
qb install xteve -u username | Install xTeVe stable version |
qb install xteve -u username --beta | Install xTeVe beta version |
qb reinstall xteve -u username | Reinstall xTeVe (preserves configuration) |
qb update xteve -u username | Update to latest stable version |
qb remove xteve -u username | Remove xTeVe and clean up files |
qb help xteve | Display comprehensive help information |
Automatic Port Assignment
QuickBox automatically assigns ports per user:
- HTTP port: Starting at
38550(auto-incremented per user) - HTTPS port: Starting at
35150(auto-incremented per user)
Find your assigned ports in the QuickBox dashboard.
Binary Installation
xTeVe is installed as a pre-compiled Linux AMD64 binary from the official xTeVe-Downloads repository at /opt/username/xTeVe. No compilation or build process required.
Accessing xTeVe
After installation, access xTeVe at:
https://your-server-ip/username/xteveQuickBox Dashboard Integration
xTeVe is automatically integrated into your QuickBox dashboard. Find it in the Service Control panel with port and status information. Click the LAUNCH icon to open the web interface.
First-Time Setup:
- Complete the setup wizard
- Add your M3U playlist sources
- Configure XMLTV EPG sources (optional)
- Map and filter channels
- Connect to Plex or Emby
Initial Configuration
1. Add M3U Playlist Sources
Configure your IPTV providers:
- Go to Playlist tab in xTeVe
- Click + to add a new playlist
- Enter playlist details:
- Name: Descriptive name (e.g., “IPTV Provider 1”)
- M3U URL: Your IPTV provider’s M3U playlist URL
- Type: Select M3U (most common)
- Click Save to add the playlist
- Repeat for additional IPTV providers
- Click Update to fetch channels from all playlists
2. Add XMLTV EPG Sources (Optional)
Add Electronic Program Guide data for channel listings:
- Go to XMLTV tab
- Click + to add a new XMLTV source
- Enter EPG details:
- Name: EPG source name (e.g., “TV Guide Data”)
- XMLTV URL: XMLTV file URL from your provider
- Click Save to add the EPG source
- Click Update to fetch program data
3. Map and Filter Channels
Organize your channels:
- Go to Mapping tab
- View all channels from merged playlists
- Filter channels:
- Enable/Disable: Toggle checkboxes to show/hide channels
- Groups: Filter by channel groups
- Search: Find specific channels by name
- Map channels (optional):
- Custom Numbers: Assign channel numbers
- Custom Names: Rename channels for clarity
- VOD Categories: Organize video-on-demand content
- Click Save when done
4. Connect to Plex or Emby
Link xTeVe to your media server:
For Plex:
- In Plex, go to Settings → Live TV & DVR
- Click Set Up Plex DVR
- Plex will auto-detect xTeVe (HDHomeRun device)
- Select the xTeVe tuner from the list
- Map channels and select TV guide source
- Complete the setup wizard
For Emby:
- In Emby, go to Settings → Live TV
- Select Tuner Devices → Add
- Choose HDHomeRun as device type
- Emby will auto-detect xTeVe
- Select channels and configure EPG
- Save configuration
Service Management
xTeVe runs as a per-user systemd service.
systemctl status xteve@username # Check status
systemctl restart xteve@username # Restart service
journalctl -u xteve@username -f # View live logs
systemctl enable xteve@username # Start on boot (already enabled)
systemctl disable xteve@username # Prevent auto-startTroubleshooting
xTeVe Won’t Start
journalctl -u xteve@username -fCheck binary exists and is executable:
ls -la /opt/username/xTeVe/xteve
# Should show executable permissions (rwxr-xr-x)
sudo chmod +x /opt/username/xTeVe/xtevePlex/Emby Can’t Detect xTeVe Tuner
Symptoms
- Plex or Emby doesn't detect xTeVe as a tuner device
- HDHomeRun device not found during setup
- Channels not appearing in media server
- EPG data not loading in Plex/Emby
Resolution
- Verify xTeVe is running: systemctl status xteve@username
- Check xTeVe port is accessible: curl http://localhost:38550
- Ensure Plex/Emby and xTeVe are on same network
- Restart Plex/Emby after configuring xTeVe
- Check xTeVe logs for connection errors: journalctl -u xteve@username -f
M3U Playlist Not Updating
# Manually update playlists in xTeVe
# Playlist tab → Update button
# Check M3U URL is accessible
curl -I "your-m3u-url"
# Verify xTeVe can fetch the playlist
journalctl -u xteve@username -f | grep -i "playlist"
# Check for authentication or format errors in logsChannels Buffering or Not Playing
# Increase buffer settings in xTeVe
# Settings → Streaming → Buffer Size
# Check IPTV provider stream quality and bandwidth
# Verify network connectivity to IPTV servers
ping your-iptv-provider.com
# Test stream URL directly with VLC or ffmpeg
ffplay "stream-url"EPG Data Not Showing
# Manually update XMLTV data in xTeVe
# XMLTV tab → Update button
# Verify XMLTV URL is accessible
curl -I "your-xmltv-url"
# Check channel IDs match between M3U and XMLTV
# Mapping tab → verify tvg-id attributes
# Force refresh in Plex/Emby
# Plex: Settings → Live TV & DVR → Refresh Guide DataConfiguration Reset
# Backup current configuration
cp -r ~/.config/xTeVe ~/.config/xTeVe.backup
# Stop service
systemctl stop xteve@username
# Remove configuration (will be regenerated)
rm -rf ~/.config/xTeVe/*
# Restart service
systemctl start xteve@usernameBest Practices
Do
- Use multiple M3U sources from different providers for redundancy
- Configure XMLTV EPG data for better program guide information
- Filter out unwanted channels to reduce clutter in Plex/Emby
- Set appropriate buffer sizes based on your network speed
- Regularly update M3U and XMLTV sources to keep data fresh
- Test streams in xTeVe before adding to Plex/Emby
- Keep xTeVe updated via qb update xteve for fixes and features
- Create backups of ~/.config/xTeVe before major changes
Don't
- Don't add too many channels—filter to your most-watched content
- Don't use unreliable IPTV providers—causes buffering and downtime
- Don't share IPTV credentials publicly—violates provider terms
- Don't expect perfect quality—IPTV depends on provider and bandwidth
- Don't delete ~/.config/xTeVe directory—contains all channel mappings
- Don't manually edit config files while xTeVe is running
- Don't expose xTeVe directly to internet—use behind VPN if needed
- Don't use xTeVe for illegal IPTV sources—only use licensed content
Use Cases
Cord-Cutting with IPTV
- Replace cable/satellite TV with IPTV channels in Plex or Emby
- Merge channels from multiple IPTV providers into one unified interface
- Access live TV through your existing media server apps
- No physical tuner hardware required
Multi-Source Aggregation
- Combine free IPTV streams with paid premium channels
- Merge regional content with international channels
- Create custom channel lineups with filtering and numbering
- Centralize EPG data from multiple XMLTV sources
International Content Access
- Access channels from different countries and regions
- Watch live sports, news, and entertainment from abroad
- Organize foreign language content with custom categories
- Provide EPG in multiple languages
Related Applications
Additional Resources
Join the Community
Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.