IPTV Player is a modern, feature-rich web application for streaming live TV, allowing users to load playlists, switch channels, and enjoy seamless playback of IPTV streams. It is powered by Bugsfree studio and designed to provide a dynamic, customizable experience with themes and smart control features.
- Stream Playback: Supports
.m3u,.m3u8, and.mpdformats. - Dynamic Themes: Select from light, dark, ocean-blue, emerald-green, and slate-gray themes.
- Favorites and History: Easily save favorite channels and access playlist history.
- Streaming Controls:
- Picture-in-Picture mode.
- Fullscreen toggle.
- Sleep timer for automatic shutdown.
- Custom Playlists: Upload or load playlists via URL.
- Search and Filter: Search for specific channels or filter by categories.
- EPG (Electronic Program Guide): View and navigate through program schedules (if available).
- Responsive Design: Optimized for both desktop and mobile devices with gesture support.
Follow these steps to get the IPTV Player up and running on your local machine.
To use this player, you need:
- A modern web browser (e.g., Chrome, Firefox, Edge).
- An available playlist in
.m3u,.m3u8, or.mpdformat. - An internet connection for live streaming.
- Clone this repository:
git clone https://github.com/bugsfreeweb/iptv.git
- Open the
index.htmlfile in your browser:open index.html
- Load a playlist:
- Enter the playlist URL in the provided input field, or
- Upload a local playlist file (
.m3u,.json,.txt).
- Start streaming by selecting a channel from the list.
- Customize your experience:
- Change themes by cycling through options with the "Cycle Theme" button.
- Add channels to your favorites for quick access.
- Use the EPG to view schedules (if supported by the channel).
- HTML5 Video: Core video rendering.
- HLS.js: HLS stream support.
- Dash.js: MPEG-DASH stream support.
- CryptoJS: Encryption for secure URL handling.
- QR Code.js: Generate QR codes for playlist sharing (Under Construction)
-
Dynamic Themes:
- Themes are defined using CSS Variables (
:rootselectors). - Includes light, dark, and custom themes like ocean-blue and emerald-green.
- Themes are defined using CSS Variables (
-
Streaming Features:
- Auto-detects stream formats (HLS, DASH).
- Provides quality selection for adaptive streaming.
-
Playback Controls:
- Fullscreen, Picture-in-Picture, and sleep-timer functionality.
- Keyboard shortcuts for fast navigation.
-
EPG Integration:
- Parses XML data for electronic program guides.
- Displays schedule information when available.
-
Mobile-Friendly Design:
- Gesture-based controls for channel switching.
- Optimized layouts for both portrait and landscape modes.
-
Stream Health Check:
- Validates stream accessibility using temporary video elements.
- Supports CORS and HTTP error handling for fallback streams.
-
Playlist Parsing:
- Parses
.m3u,.json, and.txtfiles for channel data. - Extracts metadata such as channel name, logo, category, and EPG URL.
- Parses
-
Favorites and History:
- Stores user preferences in
localStorage. - Allows users to revisit previously loaded playlists.
- Stores user preferences in
-
Dynamic Quality Selector:
- Populated based on available quality levels in HLS or DASH streams.
| Shortcut | Action |
|---|---|
Ctrl + B |
Toggle sidebar |
Ctrl + F |
Toggle favorites |
Ctrl + T |
Cycle through themes |
Ctrl + L |
Focus on playlist URL |
Ctrl + S |
Focus on search bar |
Ctrl + Arrow Left |
Previous channel |
Ctrl + Arrow Right |
Next channel |
Escape |
Close sidebar or popup |
Contributions are welcome! To contribute:
- Fork the repository.
- Create your feature branch:
git checkout -b feature-name. - Commit your changes:
git commit -m 'Add feature-name'. - Push to the branch:
git push origin feature-name. - Open a pull request.
This project is licensed under the MIT License. See LICENSE for details.
- HLS.js
- Dash.js
- QR Code.js
- CryptoJS
- Inspiration from the open-source IPTV community.
This player is intended for personal use only. The developer is not responsible for any misuse or copyright infringement caused by illegal playlist usage.
Built with ❤️ by Bugsfree
- DOGE: DEtH2yFUjjUEBUyd3scjs38X7S1Z7ee7zD
- BTC Lightening: bugsfree@speed.app
- SOL: bugsfree.sol