A simple but powerful Python GUI tool to scan and test M3U IPTV playlists.
It supports multi-threaded checking and live stream preview in VLC player.
- ✅ Multi-threaded stream testing
- ✅ Live preview of working streams using VLC
- ✅ Color-coded results (functional & broken)
- ✅ Functional and broken streams are saved automatically
- ✅ Simple and clean GUI
📂 Playlist Requirements You need a local .m3u file (not a URL).
The script will parse #EXTINF and stream links.
Valid streams will be saved to:
✅ ~/STREAMTEST/valid_streams.m3u
❌ ~/STREAMTEST/invalid_streams.m3u
Here’s what’s been improved and added in the latest version of StreamTest:
- ✅ Fixed incorrect detection of some stream statuses (no more false positives)
- ✅ Fixed stream counter display (total, functional, broken) – now accurate and live-updating
- 🖼️ Improved layout and readability
- 🧭 Added top menu (OPTIONS) with Load / Start / Pause
- 🎛️ Sliders, labels and buttons now use bold fonts and better scaling
▶️ Ability to play any stream directly from the GUI (both working and broken)- 💾 Automatic saving of working and non-working streams to
~/STREAMTEST/ - 📂 Auto-create output directory if missing
- 🌐 URLs without
http://prefix are automatically corrected ⚠️ Added warning in README about supported stream types- ✅ Added support for IP-based stream URLs
git clone https://github.com/nonexistusername/streamtest.git
cd streamtest
pip install requests
python streamtest.py
This tool supports only direct HTTP/HTTPS streams.
http://example.com:8080/stream/live.tshttps://yourserver.xyz:8888/channel/1http://123.123.123.123:8000/live/test.ts192.168.1.100:8080/stream/live.ts(will be automatically fixed tohttp://)
rtmp://...rtsp://...udp://...- Playlist links (URLs to
.m3uinstead of file) - Streams requiring session/cookies/auth via JavaScript
ℹ️ Only local
.m3ufiles are supported, not remote playlist URLs.
If your playlist contains raw IPs (without http://), the app will try to auto-fix them by adding http://.

