Skip to content

mewset/better-iptv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

165 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Better IPTV Logo

Better IPTV

Modern, cross-platform IPTV player built with Rust and Tauri

Test Build Platform AUR License: GPL v2 Website

Website โ€ข Features โ€ข Installation โ€ข Quick Start โ€ข FAQ โ€ข Contributing

Note: Better IPTV is not affiliated with any IPTV provider. Users are responsible for compliance with local laws and provider terms.


๐Ÿ“บ Overview

Better IPTV is a desktop IPTV player that combines the performance of Rust with a modern web UI. Built on MPV for video playback, it handles live TV, movies, and series across Linux, Windows, and macOS.

Why Better IPTV?

  • Fast & Efficient - Rust backend handles 100,000+ channels smoothly
  • Smart Features - EPG, parental controls, multi-profile support, and more
  • Modern UI - Clean, responsive interface with dark/light themes
  • Privacy First - All data stored locally, credentials never leave your device
  • Cross-Platform - One app for Linux, Windows, and macOS

โœจ Features

๐ŸŽฌ Content Library

  • Live TV - Stream live channels with real-time Electronic Program Guide (EPG)
  • Movies (VOD) - Browse and watch on-demand movies
  • TV Series - Season/episode organization with automatic episode queuing
  • Smart Search - Instant filtering across all content types
  • Virtual Scrolling - Smooth performance even with 100K+ channels

๐Ÿ”’ Parental Controls

  • PIN protection (4-6 digits) with manual or automatic channel blocking
  • Auto-detection of adult content (+18, XXX, Adult markers)
  • Category-level blocking for entire channel groups
  • Three viewing modes: Hide, Lock Icon, or Blur
  • Session-based unlock that re-locks on restart

๐Ÿ“‹ Playlist Management

  • M3U/M3U8 import from local files or URLs
  • Xtream Codes integration with your IPTV provider
  • Multi-Profile System - Switch between multiple providers/playlists
  • Favorites - Star any channel and find them in a dedicated tab
  • Custom User-Agent - Presets for TiviMate, VLC, or enter your own
  • Category Quick-Access - Horizontal bar for instant category filtering

๐ŸŒ Language Support

19 languages for audio and subtitle preferences (Scandinavian, European, and International), configurable per profile.


๐Ÿ“ฅ Installation

MPV Media Player

Better IPTV uses MPV for video playback. Installation varies by platform:

Linux:

# Ubuntu/Debian
sudo apt install mpv

# Arch Linux
sudo pacman -S mpv

# Fedora
sudo dnf install mpv

macOS:

brew install mpv

Windows:

New in v2.3.0: MPV is bundled with the installer. No separate installation needed.

If you prefer a manual installation: download from mpv.io or use choco install mpv.

Download Better IPTV

  1. Visit Releases
  2. Download for your platform:
    • Linux (Ubuntu/Debian): .AppImage, .deb
    • Linux (Arch/Manjaro): -arch.AppImage or install via AUR (see below)
    • Linux (Fedora/RHEL): .rpm
    • Windows: .msi installer or .exe portable
    • macOS: .dmg disk image

Linux AppImage (Ubuntu/Debian):

chmod +x Better-IPTV_*_amd64.AppImage
./Better-IPTV_*_amd64.AppImage

Linux AppImage (Arch/Manjaro):

Important: Use the -arch.AppImage variant on Arch-based distros. The standard AppImage bundles WebKit libraries from Ubuntu that conflict with newer system libraries on rolling-release distros and will cause a crash on startup.

chmod +x Better-IPTV_*_amd64-arch.AppImage
./Better-IPTV_*_amd64-arch.AppImage

Alternatively, install via the AUR:

yay -S better-iptv
# or
paru -S better-iptv

๐Ÿš€ Quick Start

1. Import Playlist

On first launch, choose your import method:

Option A: M3U/M3U8 File

  1. Click "Import M3U Playlist"
  2. Enter a profile name (e.g., "My IPTV")
  3. Choose source: Local File or URL
  4. Click "Import" and wait for channels to load

Option B: Xtream Codes

  1. Click "Import Xtream Playlist"
  2. Enter a profile name
  3. Fill in your server URL, username, and password
  4. Click "Import" (loads Live TV, Movies, and Series)

2. Configure EPG (Optional)

  1. Open Settings (gear icon) โ†’ General โ†’ EPG Settings
  2. Enter your XMLTV EPG URL (Xtream users get this automatically)
  3. Click "Update Now" โ€” EPG updates automatically going forward

3. Start Watching

  • Use tabs (All / Live TV / Movies / Series / Favorites) and the category bar to browse
  • Type in the search box for instant filtering
  • Click play on any channel โ€” MPV opens in a separate window

Series: Select a series โ†’ choose season โ†’ click Play on any episode. Remaining episodes auto-queue.

Favorites: Hover over any channel card and click the star to add or remove.

Multiple Profiles: Import additional playlists as separate profiles and switch between them from the setup screen.


๐ŸŽฎ Keyboard Shortcuts

Key Action
Space Play/Stop current channel
/ Focus search bar
Escape Stop playback
Ctrl+1-4 Switch settings tabs

For MPV player controls (fullscreen, volume, seek, etc.), see the MPV keyboard documentation.


โ“ FAQ

Why won't MPV open?

MPV must be installed on your system (except Windows v2.3.0+ which includes it bundled).

Verify installation:

mpv --version

See Installation for platform-specific instructions.

Can I watch channels directly in the app?

No, Better IPTV uses MPV as an external player. This provides broad codec support and hardware acceleration, but video displays in a separate window.

EPG data not showing?

Check:

  1. Playlist contains EPG identifiers (tvg-id or tvg-name)
  2. EPG URL configured in Settings โ†’ EPG Settings
  3. EPG data fetched (click "Fetch EPG" button)
  4. Wait a minute for EPG refresh cycle
How many channels can it handle?

Better IPTV has been tested with 150,000+ channels during development without issues.

Does it work with VPN?

Yes. Ensure your VPN is active before launching streams.

Are my Xtream credentials secure?

Yes. All credentials are stored locally on your device. Nothing is sent to external servers. Logs automatically mask sensitive data.

Can I play local video files?

No, Better IPTV is designed for IPTV streams. Use MPV directly for local media.


๐Ÿ› ๏ธ Troubleshooting

Channels Buffering

  • Check internet connection - Run speed test
  • Try another channel - May be provider/server issue
  • Adjust MPV cache - Advanced users: edit MPV config

Series Not Importing (Xtream)

  • Verify credentials - Double-check username/password
  • Check provider support - Not all Xtream providers offer series
  • Retry import - Network issues may cause partial imports

App Won't Start

  • Linux: Ensure .AppImage has execute permissions (chmod +x)
  • Windows: Run as administrator or check Windows Defender
  • macOS: Allow app in System Preferences โ†’ Security & Privacy

Parental Controls Issues

  • Auto-detect not working? - Re-save settings to trigger channel scan
  • Lock mode not showing channels? - Update to v2.3.0+ (bug fixed)
  • PIN modal stuck? - Restart app, issue resolved in v2.3.0

Logs

Linux: ~/.local/share/better-ip-tv/logs/better-ip-tv.log Windows: %APPDATA%\com.m0s.better-ip-tv\logs\better-ip-tv.log macOS: ~/Library/Application Support/com.m0s.better-ip-tv/logs/better-ip-tv.log

Credentials are automatically masked in logs.


๐Ÿค Contributing

Contributions are welcome! See CONTRIBUTING.md for development setup, code standards, and PR guidelines.


๐Ÿ“ Changelog

See CHANGELOG_USER.md for version history and release notes.


๐Ÿ“„ License

GNU General Public License v2.0 โ€” MPV is GPL v2+ licensed, and we chose GPL v2.0 for compatibility.


๐Ÿ™ Acknowledgments

  • MPV Project - Media player with comprehensive codec support
  • Tauri - Cross-platform framework enabling this project
  • Open TV - Architectural inspiration
  • IPTV Community - Standards, protocols, and ongoing support

๐Ÿ’– Support the Project

If you find Better IPTV useful, consider supporting its development:

Crypto donations:

Currency Address
ETH 0x47183F4e4FEAeE4BF52d95E68893e950125b1B44
BTC bc1qth40h9t8r7hvp4czqvf20f3w72jdg4epd5mjq8
SOL 3waxf6r2tmaaADuBGYoVD5qz4z8VnFNEGGafbXZ6Jf2j

Made for IPTV enthusiasts

About

Cross-platform IPTV player that just works. Handles huge playlists (100K+ channels), EPG guide, parental controls, series & movies library. Built with Rust + Tauri + React for speed & reliability. Privacy-first. Linux, Windows & macOS support.

Topics

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages