97 lines
3.7 KiB
Markdown
97 lines
3.7 KiB
Markdown
---
|
|
title: HandBrake Web
|
|
created: 2026-06-08
|
|
updated: 2026-06-08
|
|
type: app
|
|
tags: [catalogue, file-conversion, video, transcoding, app-marathon-batch-rattrapage-3]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=File+Conversion, https://handbrake.fr]
|
|
---
|
|
|
|
# 🔄 HandBrake Web
|
|
|
|
> **Transcodage vidéo self-hosted** : interface web pour le célèbre HandBrake, encodage H.264/H.265/AV1 par lot depuis le navigateur.
|
|
|
|
## 📋 Informations Génériques
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [handbrake.fr](https://handbrake.fr) (CLI) |
|
|
| **GitHub** | [TheNickOfTime/handbrake-web](https://github.com/TheNickOfTime/handbrake-web) |
|
|
| **License** | MIT |
|
|
| **Langage** | TypeScript (wrapper sur HandBrake CLI) |
|
|
| **Étoiles GitHub** | 1.5k ⭐ (web wrapper) |
|
|
| **Catégorie** | [[cat-file-conversion|File Conversion]] |
|
|
|
|
## 📝 Description
|
|
|
|
**HandBrake Web** est une **interface web** pour le célèbre **HandBrake CLI** (encodeur vidéo open source de référence). Encodage H.264, H.265, VP9, AV1, avec presets pour Apple/Android/Roku/PS, support des sous-titres, filtres, et **traitement par lot** depuis une UI web accessible à toute la famille.
|
|
|
|
**Différence avec ConvertX** : ConvertX convertit entre **de nombreux formats** (images, documents, audio, vidéo, archives) — un "Swiss Army knife". HandBrake Web est **spécialisé vidéo** mais fait le transcodage bien plus finement (deux passes, CRF, filtres déinterlace, etc.).
|
|
|
|
**Différence avec FileFlows** : FileFlows est un **pipeline** (scan folder, watch, post-processing, règles) ; HandBrake Web est un outil **one-shot / batch** plus simple.
|
|
|
|
**Pour qui** : archivistes vidéo, familles, homelabbers qui rippent/convertissent des vidéos occasionnellement.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Docker Compose (recommandé)
|
|
|
|
```yaml
|
|
version: '3.8'
|
|
services:
|
|
handbrake-web:
|
|
image: thedarklord/handbrake-web:latest
|
|
container_name: handbrake-web
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8088:8080"
|
|
environment:
|
|
- HANDBRAKE_PATH=/usr/bin/HandBrakeCLI
|
|
- WATCH_ENABLED=true
|
|
- WATCH_DIR=/watch
|
|
volumes:
|
|
- handbrake-config:/config
|
|
- /chemin/vers/films:/watch:ro
|
|
- /chemin/vers/output:/output
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.handbrake.rule=Host(`encode.example.com`)"
|
|
- "traefik.http.routers.handbrake.entrypoints=websecure"
|
|
- "traefik.http.routers.handbrake.tls.certresolver=letsencrypt"
|
|
- "traefik.http.routers.handbrake.middlewares=authelia@docker"
|
|
|
|
volumes:
|
|
handbrake-config:
|
|
```
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-convertx]] — Multi-formats (vidéo, audio, doc, image)
|
|
- [[app-fileflows]] — Pipeline automatisé
|
|
- [[app-transmute]] — Transcodage vidéo via CLI/web
|
|
- [[app-vert]] — Multi-formats léger
|
|
|
|
### Propriétaires
|
|
- **HandBrake desktop** — Même CLI, UI native (pas serveur)
|
|
- **XMedia Recode** — Windows seulement
|
|
|
|
## 🔐 Sécurité
|
|
- **GPU passthrough** : `--gpus all` + `/dev/dri:/dev/dri` pour NVENC/QSV, accélération x10-x20.
|
|
- **Watch folder** : monter en `:ro` pour éviter l'exécution sur fichier arbitraire.
|
|
- **Auth obligatoire** : HandBrake Web a une UI admin — protéger par Authelia/Authentik en exposition publique.
|
|
- **Pas de sandboxing** : HandBrake exploite des CVE sur les codecs — limiter l'input à des sources de confiance.
|
|
|
|
## 📚 Ressources
|
|
- [HandBrake CLI docs](https://handbrake.fr/docs/)
|
|
- [HandBrake Web GitHub](https://github.com/TheNickOfTime/handbrake-web)
|
|
- [HandBrake presets](https://handbrake.fr/docs/latest/technical/official-presets.html)
|
|
|
|
## Pages Liées
|
|
- [[cat-file-conversion]] — Catégorie Conversion
|
|
- [[app-convertx]] — Multi-formats
|
|
- [[app-fileflows]] — Pipeline
|
|
- [[recettes-docker-compose]] — Templates Docker
|