StreamTV is a cross-platform IPTV streaming platform that creates TV channels from online video sources like YouTube and Archive.org. Stream directly to Plex, Emby, Jellyfin, and HDHomeRun-compatible devices without requiring local media storage.
- π Direct Streaming: Stream from YouTube and Archive.org without downloads
- πΊ HDHomeRun Emulation: Native integration with Plex, Emby, and Jellyfin
- π Advanced Scheduling: YAML-based schedules with commercial breaks
- π³ Container Support: Docker, Kubernetes, and Podman deployments
- π₯οΈ Cross-Platform: Native support for macOS, Windows, and Linux
- π IPTV Support: M3U playlists and XMLTV EPG generation
- β‘ FastAPI: Modern async Python web framework
- π Authentication: Passkey and OAuth support for YouTube
- β YouTube: Direct streaming with quality selection and OAuth authentication
- β Archive.org: Support for video collections and individual items
- π Extensible: Easy to add new streaming sources via adapter pattern
- Plex Media Server: Direct HDHomeRun tuner or M3U/EPG
- Emby/Jellyfin: HDHomeRun or IPTV support
- Kodi: IPTV Simple Client
- VLC: Direct M3U playlist support
- HDHomeRun Devices: Full API compatibility
-
macOS - Native macOS distribution with installer
- Automated installation script
.commandlaunchers for easy startup- Full documentation included
-
macOS Menu Bar App - Native macOS menu bar application
- Runs as menu bar icon (no dock icon)
- Automatic Python virtual environment management
- FFmpeg installation via Homebrew
- Dependency update checking
- Server lifecycle management
- See StreamTVApp/README.md for setup instructions
-
Windows - Windows distribution
- PowerShell installation script
- Batch and PowerShell startup scripts
- Windows service support documentation
-
Linux - Linux distribution
- Distribution detection (apt, dnf, pacman)
- systemd service integration
- Firewall configuration guides
- Docker - Single-container deployment
- Docker Compose - Multi-service setup
- Kubernetes - K8s manifests with ingress
- Podman - Rootless container support
cd StreamTV-macOS
./install_macos.sh
./start_server.sh
# Or double-click: Install-StreamTV.commandcd StreamTV-Windows
.\install_windows.ps1
.\start_server.ps1cd StreamTV-Linux
./install_linux.sh
./start_server.shcd StreamTV-Containers/docker
docker build -t streamtv .
docker run -p 8410:8410 streamtvAccess the web interface: Open http://localhost:8410 in your browser
StreamTV uses HLS (HTTP Live Streaming) for browser playback, ensuring compatibility with:
- Chrome/Edge: Full HLS support via HLS.js
- Safari: Native HLS support
- Firefox: Full HLS support via HLS.js
The player automatically detects browser capabilities and uses the best available method. For best results, use a modern browser with JavaScript enabled.
- Python: 3.10 or higher
- FFmpeg: For video transcoding (automatically installed by install scripts)
- Network: Internet connection for streaming
- Platform-specific: See individual distribution READMEs
- GitHub Wiki - Comprehensive documentation
- Documentation Index - All guides organized
- Scripts & Tools - Utility scripts
- Installation Guide
- Beginner Guide - For new users
- Plex Integration - Setup guide
- API Reference - Complete API docs
- Troubleshooting - Common issues
Each distribution includes complete documentation in docs/:
- Installation instructions
- Quick start guides
- Platform-specific configuration
- Troubleshooting guides
- API documentation
- Install StreamTV on your server
- Add StreamTV as HDHomeRun tuner in Plex
- Scan for channels
- Watch your custom channels in Plex!
See Plex Integration Guide for detailed instructions.
- Kodi: Use IPTV Simple Client with M3U playlist
- VLC: Open M3U playlist directly
- Emby/Jellyfin: Add as IPTV source or HDHomeRun tuner
StreamTV includes utility scripts for:
- Channel creation from Archive.org collections
- Schedule generation
- Log viewing and troubleshooting
- Database management
See Scripts Documentation for complete list.
Comprehensive documentation available in the GitHub Wiki:
- macOS - Complete macOS guide
- Windows - Complete Windows guide
- Linux - Complete Linux guide
- Containers - Container platforms
- Archive Parser - Create channels from Archive.org
- Logging - Logging system
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
- Report bugs via Issues
- Suggest features via Feature Requests
- Submit pull requests following our PR template
This project is licensed under the MIT License - see the LICENSE file for details.
β Stable - Production ready
- Cross-platform distributions available
- Comprehensive documentation
- Active development
- GitHub Wiki - Complete documentation
- Issues - Bug reports and feature requests
- Pull Requests - Contributions
- Releases - Version history
Made with β€οΈ for the IPTV community