Editor grafico per le liste m3u
- Python 100%
| image | ||
| m3u_editor.py | ||
| m3ueditor.png | ||
| README.md | ||
M3U Editor 🚀
M3U Editor Pro + EPG XMLTV Manager
Un editor grafico moderno, rapido e avanzato per playlist IPTV (M3U / M3U8), scritto in Python 3 e GTK+ 3, con player video mpv incorporato e gestore integrato per la guida programmi (EPG XMLTV).
🌟 Caratteristiche Principali
- 📺 Player Integrato (mpv embed via X11/IPC):
- Riproduzione video direttamente nella finestra dell'applicazione (senza aprire finestre esterne).
- Controllo volume, muto, play/pausa tramite socket IPC.
- Supporto al fallback verso player esterni (VLC, mpv separato, FFplay).
- 📡 Diagnostica e Verifica Flussi Multithread:
- Controllo rapido dell'integrità dei flussi (singolo o massivo su tutta la playlist).
- Rilevamento accurato degli errori di rete: codici HTTP (403, 404, 429, 500, ecc.), errori DNS, timeout, certificati TLS/SSL o codec assenti.
- 📅 Gestore EPG (XMLTV):
- Download e lettura di file XMLTV locali o remoti, anche compressi in formato
.xml.gz. - Motore di ricerca programmi per ID canale, nome o titolo trasmissione.
- Assegnazione automatica del
tvg-idal canale selezionato con un clic.
- Download e lettura di file XMLTV locali o remoti, anche compressi in formato
- ⚡ Modifica in Tempo Reale (Auto-Apply):
- Modifica nome canale, URL, gruppo (
group-title),tvg-id,tvg-logoeUser-Agent. - Le modifiche vengono salvate istantaneamente in memoria senza dover cliccare su "Applica".
- Modifica nome canale, URL, gruppo (
- 🖼️ Anteprima Loghi Live:
- Scaricamento asincrono e rendering del logo del canale (
tvg-logo) all'inserimento dell'URL dell'immagine.
- Scaricamento asincrono e rendering del logo del canale (
- 🔄 Strumento Sostituzione Canali (Donor Lists):
- Cerca flussi alternativi su playlist remote (es. GitHub/GitLab/Forgejo) e sostituisci all'istante uno stream offline mantenendo i metadati originali.
- ⌨️ Scorciatoie da Tastiera & Menu Contestuale:
- Tasto destro del mouse con scorciatoie rapide per test, copia URL, verifica o rimozione.
- Scorciatoie: Invio per riprodurre, Spazio per mettere in pausa, Canc per eliminare, Ctrl+S per salvare, Ctrl+F per cercare.
📋 Requisiti di Sistema
Dipendenze di sistema (Linux/BSD)
Il programma necessita delle librerie GTK 3, di PyGObject e del lettore multimediale mpv:
Su Debian / Ubuntu / Linux Mint:
sudo apt update
sudo apt install python3 python3-gi python3-gi-cairo gir1.2-gtk-3.0 mpv
Su Arch Linux / Manjaro:
sudo pacman -S python python-gobject gtk3 mpv
Su Fedora:
sudo dnf install python3 python3-gobject gtk3 mpv
Nota su Wayland: Il programma è predisposto per forzare il backend
GDK_BACKEND=x11(XWayland) in automatico per consentire l'incorporamento del player video tramite la proprietà--widdimpv.
🚀 Avvio del Programma
- Rendi eseguibile lo script:
chmod +x m3u_editor.py - Avvialo con Python:
python3 m3u_editor.py
📖 Guida all'Uso
1. Apertura e Modifica Playlist
- Clicca sul pulsante Apri in alto a sinistra per caricare un file
.m3uo.m3u8dal tuo disco oppure direttamente da un URL Web / GitHub. - Usa la barra dei filtri in alto per filtrare i canali per testo, gruppo o stato del link (online / offline / avvisi).
- Seleziona un canale per modificarne le informazioni nel pannello a destra.
2. Riproduzione Canale
- Fai doppio clic su una riga oppure premi Invio per avviare la riproduzione del flusso nell'area video a destra.
- Se il flusso riscontra problemi (es. geo-blocco o canale offline), comparirà un banner descrittivo. Cliccando su Dettagli potrai leggere l'output grezzo e i codici di errore restituiti.
3. Assegnazione Guida Programmi (EPG)
- Fai clic sul pulsante 🔍 accanto al campo TVG-ID oppure su Guida EPG (XMLTV) nell'HeaderBar.
- Inserisci un file o l'URL di un feed EPG (ad esempio un link
https://.../epg.xml.gz). - Cerca il tuo canale nella tabella e clicca su Assegna TVG-ID al Canale.
4. Sostituzione Stream Offline
- Se un canale non è funzionante, clicca con il tasto destro sul canale e seleziona "Sostituisci Flusso da Esterno..." (oppure usa il pulsante 🔄 accanto all'URL).
- Inserisci l'indirizzo di una playlist funzionante, cerca il canale corrispondente e premi "Usa su..." per sostituire il link corrotto.
5. Verifica Massiva
- Nel menu Verifica Link (in alto a destra) puoi verificare singolarmente i canali selezionati oppure l'intera lista per individuare immediatamente stream non raggiungibili, errori 404/403 o risposte anomale dei server.
⌨️ Scorciatoie da Tastiera
| Tasto / Combinazione | Azione |
|---|---|
| Invio / Enter | Riproduce il canale selezionato |
| Spazio | Metti in Pausa / Riprendi riproduzione |
| Canc / Delete | Elimina il canale selezionato |
| Ctrl + F | Sposta il cursore sulla barra di ricerca |
| Ctrl + S | Salva la playlist su file |
| Ctrl + O | Apri un file M3U da disco |
📄 Licenza
Distribuito con licenza Open Source (GPL v3 / MIT a scelta dell'autore). Libero da usare, modificare e distribuire.
