5.4 KiB
title, created, updated, type, tags, confidence, contested, sources
| title | created | updated | type | tags | confidence | contested | sources | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| YTPTube | 2026-06-07 | 202-06-07 | app |
|
medium | false |
|
📺 YTPTube
Interface web moderne pour yt-dlp, fork de MeTube axé sur les téléchargements concurrents, la gestion de presets et la file d'attente persistante.
| Métadonnée | Valeur |
|---|---|
| Site web | https://github.com/arabcoders/ytptube |
| GitHub | https://github.com/arabcoders/ytptube |
| License | AGPL-3.0 |
| Langage | Python (Flask + Celery) + JS |
| Étoiles | 31 ⭐ |
| Dernière MAJ | 2025 |
| Catégorie | cat-downloads |
Description
YTPTube est né en 2025 comme un fork de MeTube (lui-même fork de YouTube-DL-Material), avec un objectif clair : vrai support des téléchargements concurrents sans verrou de mutex, et une UI plus réactive. Le projet a été initié par la communauté ArabCoders qui trouvait MeTube trop lent pour des playlists de 200+ vidéos.
Concrètement, YTPTube apporte : queue persistante (les téléchargements survivent à un redémarrage du conteneur), presets de format (configurer une fois « 1080p + audio AAC 192 kbps » et l'appliquer en un clic), downloads parallèles paramétrables (par défaut 2, configurable à 8+ selon la machine), notifications webhook (Ntfy, Discord, Telegram) à chaque fin, et import de playlists YouTube via leur URL directe.
L'UI est soignée : thème sombre par défaut, prévisualisation miniature pour les URL YouTube, estimation de durée, et un mini-player intégré qui permet d'écouter un MP3 extrait sans quitter l'interface. Compatible avec l'écosystème yt-dlp : cookies navigateur, sponsorblock, post-processing ffmpeg.
Pour un usage domestique (1-2 utilisateurs), MeTube suffit. YTPTube se justifie dès qu'on lance des gros imports : podcast de 300 épisodes, archive d'une chaîne, playlist de mixes DJ.
Installation
Docker Compose (recommandé)
# docker-compose.yml
services:
ytptube:
image: ghcr.io/arabcoders/ytptube:latest
container_name: ytptube
restart: unless-stopped
ports:
- "8081:8081"
environment:
- TZ=Europe/Paris
- PUID=1000
- PGID=1000
- MAX_CONCURRENT=4
- PRESET=bestvideo+bestaudio/best
- DOWNLOAD_DIR=/downloads
volumes:
- ./config:/app/config
- /data/ytptube:/downloads
- ./cookies:/app/cookies # export cookies.txt si besoin
Installation manuelle
git clone https://github.com/arabcoders/ytptube
cd ytptube
pip install -r requirements.txt
cp .env.example .env
python -m ytptube # UI sur :8081
Configuration
- Presets de format : par exemple
audio(extraction mp3 320),video_1080(mp4 1080p),video_best(bestvideo+bestaudio muxé en mkv). - Concurrence :
MAX_CONCURRENT=4est un bon défaut pour 4 CPU / 8 Go RAM, ajuster selon charge. - Cookies : monter
./cookies/cookies.txtpour bypass les restrictions YouTube sur IP partagées (anti-bot). - Notifications : webhook URL Ntfy/Discord/Telegram, déclenché à chaque fin de download.
- Sponsorblock : peut marquer/extraire les segments sponsor d'une vidéo YouTube (option yt-dlp native).
- Queue persistante : stockée en SQLite dans
./config, survit aux redémarrages.
Alternatives
Open Source
- app-yt-dlp-web-player — Go + React, plus moderne, moins orienté « gros batch ».
- MeTube — projet parent de YTPTube, plus simple, mono-thread pratique.
- TubeCast — UI minimaliste, pas de queue.
- Tartube — GUI GTK desktop, pas web.
- yt-dlp CLI — référence, pas d'UI.
- Pinchflat — Go, focus chaînes YouTube (s'abonne + auto-télécharge les nouvelles).
Propriétaires (ce que YTPTube remplace)
- 4K Video Downloader — desktop, payant pour les features avancées.
- JDownloader — lourd, Java, historique.
- youtube-dl-gui wrappers — peu maintenus, pas d'incrémental.
- YouTube Premium offline —只能在应用内读,没用。
Sécurité
- Cookies navigateur : si exportés pour contourner les restrictions, ils donnent accès à votre compte Google. Chiffrer
./cookiesau repos, ne pas versionner. - Pas d'auth par défaut : l'UI accepte n'importe quelle URL de n'importe qui sur le réseau, ne pas exposer sans reverse proxy authentifié.
- Surface web : Flask + Celery = stack classique, peu de CVE connues, garder l'image à jour.
- AGPL-3.0 : copyleft fort, si vous modifiez et exposez publiquement, vous devez publier vos sources.
- Bus factor limité : fork de MeTube, la communauté ArabCoders est petite mais le socle (yt-dlp) est solide et indépendant.
Ressources
- Repository : https://github.com/arabcoders/ytptube
- Annonce Reddit : https://www.reddit.com/r/selfhosted/comments/1l1p76w/
- MeTube (projet parent) : https://github.com/alexta69/metube
- yt-dlp : https://github.com/yt-dlp/yt-dlp
- Sponsorblock : https://sponsor.ajay.app/
Pages Liées
- cat-downloads — catégorie parente
- app-yt-dlp-web-player — alternative
- app-yubal — focus musique YT
- app-spotizerr — focus Spotify
- app-jellyfin — peut ingérer les vidéos
- app-traefik — reverse proxy
- app-authentik — SSO
- recettes-docker-compose — templates
- securisation-home-lab — bonnes pratiques