Envois reprenables
Des envois par fragments qui survivent à une coupure, avec une limite de taille que vous fixez plutôt qu’une plateforme.
Auto-hébergé · PHP 8.2+ · sans étape Composer
VideoHub est un site de partage de vidéos complet que vous installez sur votre propre serveur : envois, transcodage, diffusion adaptative, chaînes et modération.
Aucune plateforme ne prélève sa part de vos revenus, personne d’autre n’écrit les règles, et aucun service tiers ne s’interpose entre votre public et vos vidéos. La base de données et le disque sont à vous.
Ce qui est inclus
Pas un kit de départ à compléter. Ce que l’on attend d’une plateforme vidéo est déjà là.
Des envois par fragments qui survivent à une coupure, avec une limite de taille que vous fixez plutôt qu’une plateforme.
Chaque envoi est réencodé en une échelle de qualités, avec vignettes et sprites de navigation générés au passage.
Le flux suit le débit du spectateur au lieu de se figer, et celui-ci peut fixer une qualité à la main quand il le souhaite.
Un fil vertical et balayable pour la vidéo courte, à côté du lecteur classique plutôt qu’à sa place.
Bannières, avatars, nombre d’abonnés et fil personnalisé, pour que le public ait un endroit où se retrouver.
Commentaires en fil avec épinglage et tri, publications communautaires, messages privés et notifications dans l’application comme par e-mail.
Envoyez du VTT ou du SRT par vidéo, ou laissez Whisper produire une première version à retoucher.
Une API REST JSON avec des jetons développeur par utilisateur, et un lecteur intégrable sur d’autres sites.
De l’envoi à la lecture
La partie vraiment difficile d’un site vidéo est celle qui s’exécute une fois l’envoi terminé. VideoHub s’en charge.
Le stockage va sur disque local ou sur n’importe quel bucket compatible S3, commutable depuis les réglages d’administration.
Au quotidien
Un site vidéo public ne vaut que les outils dont vous disposez le jour où quelqu’un en abuse.
Les spectateurs signalent les vidéos, les signalements arrivent au même endroit, et vous agissez sans passer par la base de données.
Accès par rôles avec des valeurs par défaut prudentes, pour qu’un compte modérateur ne devienne pas administrateur sans qu’on le voie.
Public, non répertorié ou privé, publication programmée, restriction d’âge, et interrupteurs de commentaires et de téléchargement par vidéo.
Journalisation de l’activité et outils de sauvegarde dans le panneau : un incident laisse une trace, et une mauvaise journée a un retour en arrière.
TOTP avec codes de secours, politique de mots de passe configurable, blocage après plusieurs tentatives et prise en charge du CAPTCHA.
Connexion Google et GitHub avec vérification par e-mail, et déconnexion de tous les appareils depuis un seul écran.
Mentions J’aime, abonnements et playlists privés, nombre d’abonnés masqué, et pause de l’historique de lecture et de recherche.
Un petit CMS pour vos pages de conditions, de confidentialité et de présentation, et une gestion des catégories qui ne demande pas de développeur.
Apparence et langue
Le thème, le logo, le favicon et l’image de partage sont des réglages et non un fork du code, et l’interface parle plusieurs langues d’origine.
La direction de droite à gauche est traitée comme une direction à part entière, pas comme un miroir ajouté après coup - la même exigence que pour ce site.
Prérequis
Modestes, et vérifiés pour vous sur le premier écran de l’installateur avant que vous ne vous engagiez.
| Composant | Requis | Remarques |
|---|---|---|
| PHP | 8.2 ou plus récent | Extensions : pdo_mysql, mbstring, openssl, json, ctype |
| Base de données | MySQL 5.7+ ou MariaDB 10.4+ | Une base vide et un utilisateur disposant de tous les privilèges dessus |
| Serveur web | Apache ou Nginx | Apache a besoin de mod_rewrite et de AllowOverride All ; Nginx a besoin de PHP-FPM |
| FFmpeg | Recommandé | Sans lui, les envois ne sont servis que dans leur format d’origine |
| Stockage | Disque local ou compatible S3 | Le dossier storage/ doit être accessible en écriture |
| Également recommandé | gd, curl, fileinfo | Traitement d’images, connexion sociale et S3, détection du type de fichier envoyé |
| Composer | Inutile | Aucune étape de build ni service externe pour démarrer |
À l’aise sur un VPS ; un serveur dédié se justifie dès que le transcodage tourne en permanence.
FAQ
Les questions qui méritent une réponse avant d’exploiter votre propre plateforme vidéo.
PHP 8.2 ou plus récent avec les extensions pdo_mysql, mbstring, openssl, json, ctype, ainsi que MySQL 5.7+ ou MariaDB 10.4+. Apache a besoin de mod_rewrite avec AllowOverride All ; Nginx a besoin d’une configuration PHP-FPM. L’installateur vérifie chaque prérequis, ainsi que l’accès en écriture à storage/, dès son premier écran - vous voyez donc tout problème avant de vous engager.
Non. VideoHub tourne sur du PHP ordinaire, sans étape Composer et sans inscription à quoi que ce soit avant votre premier envoi. C’est délibéré : le paquet que vous téléchargez est le logiciel que vous exécutez, et un hébergement mutualisé sans accès shell peut l’installer.
Fortement recommandé plutôt qu’obligatoire. Avec FFmpeg vous obtenez l’échelle de qualités, l’empaquetage HLS, les vignettes et les sprites. Sans lui, VideoHub fonctionne toujours, mais chaque envoi est servi dans son seul format d’origine : pas de diffusion adaptative, et ce que la personne a envoyé est ce que chaque spectateur télécharge.
Sur disque local ou sur n’importe quel stockage objet compatible S3, réglable depuis l’administration. Le disque local est le plus simple pour commencer ; le stockage objet prend son sens quand la médiathèque dépasse le serveur, ou quand vous voulez servir les fichiers au plus près de votre public.
Il existe un mode HLS seul qui sert des flux segmentés au lieu d’un fichier téléchargeable, et le téléchargement se désactive vidéo par vidéo. Cela rend la chose bien plus difficile qu’un clic droit puis « Enregistrer ». Ce n’est pas du DRM pour autant : aucun lecteur dans un navigateur ne peut rendre la capture impossible - voyez-le comme une dissuasion, pas comme une garantie.
Oui. Une traduction arabe complète accompagne le catalogue anglais, avec une véritable prise en charge de droite à gauche dans toute l’interface, et non une feuille de style inversée ajoutée à la fin. Il y a aussi un mode clair et sombre, et un thème personnalisable sans toucher aux gabarits.
Envoyez des fichiers VTT ou SRT par vidéo, ou laissez Whisper produire automatiquement une première version. Les sous-titres générés sont un point de départ et non une transcription finie : mieux vaut les relire avant de s’y fier pour l’accessibilité.
Oui. Une API REST JSON avec des jetons développeur par utilisateur couvre les mêmes données que l’interface web : vous pouvez scripter les envois, lire les métadonnées, gérer les utilisateurs ou construire votre propre interface par-dessus. Chaque vidéo dispose aussi d’un lecteur intégrable ailleurs.
Par un installateur web. Il vérifie les prérequis, prend vos identifiants de base de données, importe le schéma et crée le premier compte administrateur. Pas de ligne de commande, pas de build, pas de compilation d’assets.
Obtenir VideoHub
Une installation, sur du matériel que vous maîtrisez, avec la base de données et le disque entre vos mains.
Il vous manque un endroit où l’héberger ? Nos VPS et serveurs dédiés remplissent déjà tous les prérequis ci-dessus.