WikiTwist France

TV Playlist Cleaner : nettoyez et optimisez vos playlists M3U intelligemment

Vous avez une playlist M3U qui contient des centaines (voire des milliers) de flux IPTV, mais beaucoup ne fonctionnent pas ou sont de qualité médiocre ?

TV-Playlist-Cleaner est l’outil qui va vous sauver du chaos : il analyse, filtre, dédoublonne et sélectionne les meilleurs flux en un clin d’œil — le tout de manière automatisée.

Qu’est-ce que TV-Playlist-Cleaner ?

TV-Playlist-Cleaner est un projet open source en Python qui a pour objectif de nettoyer, filtrer et optimiser des playlists M3U. Il combine l’usage de curl et **ffprobe pour tester les flux, déduire leur qualité réelle et ne conserver que les meilleurs.

Il ne fournit pas de playlists ou de contenus vidéo, il fonctionne uniquement sur les sources que vous lui fournissez.

Fonctionnalités principales

Architecture du projet & scripts inclus

Le dépôt contient plusieurs scripts et modules complémentaires :

Installation & prérequis

Avant d’utiliser TV-Playlist-Cleaner, assurez-vous d’avoir les outils suivants :

Pour installer rapidement :


git clone https://github.com/gonzague/TV-Playlist-Cleaner.git  
cd TV-Playlist-Cleaner  
pip install -r requirements.txt  

Ou en mode Docker (recommandé pour plus de portabilité) : le projet inclut un fichier Docker et un script docker-run.sh pour construire et lancer.

Utilisation recommandée

Quelques exemples de commandes utiles :

Exemple de sortie & gains observés

Le projet donne des chiffres d’amélioration dans son README :
Avant, avec 1 source : ~223 flux ; après filtration multi-sources : ~2 910 flux, dont 1 543 valides (soit un gain de +1 400 % sur certains indicateurs)

Le script affiche un rapport : nombre de flux testés, valides, échoués, qualité sélectionnée, etc.

Avantages & limites

✅ Avantages

⚠️ Limites & précautions

Comment contribuer ou participer ?

Le projet est sous licence MIT. Si vous souhaitez y contribuer :

  1. Forkez le dépôt
  2. Créez une branche pour votre fonctionnalité
  3. Committez vos changements
  4. Ouvrez une Pull Request

Les contributions sont les bienvenues, qu’il s’agisse de correction de bugs, de nouvelles fonctionnalités ou d’optimisations.

Conclusion

TV-Playlist-Cleaner est un outil puissant et pratique pour tous ceux qui manipulent des playlists M3U, que ce soit pour de l’IPTV, des flux TV ou simplement pour structurer vos sources. En combinant rigueur (tests avec curl/ffprobe), flexibilité (options de configuration) et efficacité (dédoublonnage, parallélisme), il simplifie grandement la tâche.
Si vous cherchez à fiabiliser votre collection de flux, c’est un excellent point de départ.


FAQ

Qu’est-ce qu’une playlist M3U ?

Une playlist M3U est un fichier texte listant une série de flux multimédias (URL) que les lecteurs peuvent interpréter pour la lecture en continu.

Pourquoi nettoyer une playlist M3U ?

Beaucoup de flux dans une playlist peuvent être inactifs ou de mauvaise qualité ; un nettoyage permet de conserver uniquement les flux valides et optimisés.

Comment TV-Playlist-Cleaner vérifie les flux ?

Il utilise curl pour tester l’accessibilité des flux et ffprobe pour extraire les informations de résolution et qualité.

Le projet est-il open source ?

Oui, le projet est sous licence MIT et son code est accessible sur GitHub.

Puis-je l’utiliser via Docker ?

Oui, le dépôt inclut un script Docker pour construire et exécuter l’outil dans un conteneur.

Quels sont les scripts disponibles dans le projet ?

Parmi les scripts : cleaner.py, cleaner_advanced.py, cleaner_multi_source.py, cleaner_config.py, cleaner_tnt.py, etc.

Qu’est-ce que le dédoublonnage intelligent ?

Le dédoublonnage intelligent élimine les flux redondants en normalisant les noms et en conservant le flux de meilleure qualité.

Peut-on configurer les options (timeout, nombre de workers, etc.) ?

Oui, TV-Playlist-Cleaner propose plusieurs options de configuration comme –timeout, –workers, –no-deduplication, etc.

Le projet prend-il en charge les chaînes françaises ?

Oui, il y a un script spécialisé (cleaner_tnt.py) pour les 25 chaînes TNT françaises, ainsi que des catégories par langue / région.

Comment contribuer au projet ?

Vous pouvez forker le dépôt, créer une branche pour votre fonctionnalité, puis ouvrir une Pull Request.

Quitter la version mobile