Initial vault setup
This commit is contained in:
@@ -0,0 +1,112 @@
|
||||
---
|
||||
title: MeTube
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, downloads, video, youtube, python, yt-dlp, youtube-dl, webui]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=downloads, https://github.com/alexta69/metube]
|
||||
---
|
||||
|
||||
# MeTube
|
||||
|
||||
> Interface web simple et élégante pour **youtube-dl / yt-dlp**. Coller une URL, choisir le format, récupérer le fichier. L'alternative minimaliste aux GUI lourdes comme [[app-youtubedl-material]].
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://github.com/alexta69/metube |
|
||||
| **GitHub** | https://github.com/alexta69/metube |
|
||||
| **License** | AGPL-3.0 |
|
||||
| **Langage** | Python 3.11 / JavaScript (Vanilla) |
|
||||
| **Étoiles GitHub** | 985 ⭐ |
|
||||
| **Dernière MAJ** | 2026-04 |
|
||||
| **Catégorie** | [[cat-downloads]] |
|
||||
|
||||
## Description
|
||||
|
||||
MeTube est une **webapp Python/Flask** qui encapsule **yt-dlp** (le fork actif et à jour de youtube-dl) derrière une **interface web minimaliste**. Le but : supprimer la friction de la CLI pour des téléchargements ponctuels, sans empiler des fonctionnalités « Netflix-like » inutiles. L'UI affiche une simple **boîte de saisie**, un sélecteur de **format** (vidéo / audio / custom) et une **liste de téléchargements en cours** avec progression en temps réel via SSE (Server-Sent Events).
|
||||
|
||||
MeTube est conçu pour être **auto-suffisant** : pas de base de données, pas de comptes, pas de services externes. Les téléchargements sont stockés dans un volume monté, les logs en clair dans `./config`, et la configuration via variables d'environnement directement dans le `docker-compose.yml`. Le binaire `yt-dlp` est mis à jour dans l'image Docker à chaque release (une option permet d'utiliser un binaire custom ou de le mettre à jour au démarrage).
|
||||
|
||||
L'application supporte toutes les plateformes supportées par yt-dlp : **YouTube, Twitter/X, Instagram, TikTok, Vimeo, Twitch, SoundCloud, Dailymotion, Facebook, etc.**, soit plus de **1500 sites**. Les **formats custom** permettent de passer des flags yt-dlp avancés (qualité, codec, sous-titres, playlist, sponsorblock, etc.).
|
||||
|
||||
## Installation
|
||||
|
||||
### Option 1 : Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
services:
|
||||
metube:
|
||||
image: ghcr.io/alexta69/metube:latest
|
||||
container_name: metube
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8081:8081"
|
||||
environment:
|
||||
- TZ=Europe/Paris
|
||||
- DEFAULT_THEME=auto
|
||||
volumes:
|
||||
- ./downloads:/downloads
|
||||
- ./config:/config
|
||||
```
|
||||
|
||||
UI sur `http://localhost:8081`. Téléchargements dans `./downloads/`.
|
||||
|
||||
### Option 2 : Installation manuelle
|
||||
|
||||
```bash
|
||||
git clone https://github.com/alexta69/metube
|
||||
cd metube
|
||||
pip install -r requirements.txt
|
||||
# installer ffmpeg et yt-dlp séparément
|
||||
yt-dlp -U # mettre à jour
|
||||
python app/main.py
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
1. **Format par défaut** : `DEFAULT_FORMAT` (ex : `bestvideo*+bestaudio/best`).
|
||||
2. **Templates de sortie** : `OUTPUT_TEMPLATE` permet de personnaliser le nom de fichier (`%(uploader)s - %(title)s.%(ext)s`).
|
||||
3. **Audio only** : `AUDIO_FORMAT=mp3` + `AUDIO_QUALITY=192K` pour convertir en MP3.
|
||||
4. **Sous-titres** : `DOWNLOAD_SUBS=true` + `SUB_LANGS=fr,en` pour récupérer les sous-titres dans plusieurs langues.
|
||||
5. **Cookies** : monter un `cookies.txt` dans `/cookies/cookies.txt` pour les vidéos nécessitant une connexion.
|
||||
6. **Proxy** : `PROXY_URL=http://...` pour passer par un proxy.
|
||||
7. **Mise à jour auto** : `YT_DLP_AUTO_UPDATE=true` met à jour yt-dlp au démarrage du container.
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open Source
|
||||
- [[app-cobalt]] — API REST moderne, support natif de plus de 50 plateformes
|
||||
- [[app-youtubedl-material]] — GUI complète avec playlists, abonnements, multi-utilisateurs
|
||||
- [[app-pyload]] — Download manager historique Python, plus orienté hosters type Rapidgator
|
||||
- **yt-dlp** (CLI) — L'outil de base, à utiliser seul si pas besoin de GUI
|
||||
- **Tube Archivist** — Bibliothèque de chaînes YouTube avec métadonnées
|
||||
|
||||
### Propriétaires
|
||||
- **4K Video Downloader** — Desktop Windows/Mac, free trial
|
||||
- **Y2mate** — Site web tiers, adwares
|
||||
- **yt-dl on Steroids** — Boutons greasemonkey, pas un service self-hosted
|
||||
|
||||
## Sécurité
|
||||
|
||||
- MeTube n'a **aucune authentification** : protéger l'accès via un reverse proxy authentifié ([[app-authelia]])
|
||||
- Le binaire yt-dlp est mis à jour régulièrement (YouTube casse souvent le parser) : utiliser `YT_DLP_AUTO_UPDATE`
|
||||
- ⚠️ Le téléchargement de contenu protégé par le droit d'auteur est **illégal** dans la plupart des juridictions
|
||||
- Limiter la taille des téléchargements (`MAX_FILESIZE`) pour éviter l'abus d'espace disque
|
||||
- Logs : `./config/logs` peut contenir des URL potentiellement sensibles (YouTube IDs), purger régulièrement
|
||||
|
||||
## Ressources
|
||||
|
||||
- Code source : https://github.com/alexta69/metube
|
||||
- Documentation : https://github.com/alexta69/metube#configuration
|
||||
- yt-dlp (backend) : https://github.com/yt-dlp/yt-dlp
|
||||
- Liste des sites supportés : https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-downloads]] — Vue d'ensemble de la catégorie Downloads
|
||||
- [[app-youtubedl-material]] — Alternative plus complète
|
||||
- [[app-cobalt]] — Alternative moderne API-first
|
||||
- [[app-pyload]] — Download manager Python plus historique
|
||||
- [[app-authelia]] — SSO pour restreindre l'accès
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
Reference in New Issue
Block a user