Sortie de PeerTube v6
(framablog.org)- Développé par l’association à but non lucratif Framasoft, PeerTube vise les créateurs, médias, institutions et éducateurs qui veulent exploiter leur propre plateforme vidéo comme alternative à YouTube et Twitch
- Après les versions v5.1 et v5.2 sorties en 2023, v6 constitue la sixième version majeure, intégrant des idées issues du site de retours utilisateurs
- Le transcodage distant introduit en v5.2 est une fonctionnalité de base qui permet de déporter vers un autre serveur les conversions très gourmandes en CPU, afin de réduire les coûts d’exploitation et la pression sur les ressources
- Avec v6, les fonctionnalités immédiatement perceptibles par les créateurs et les spectateurs s’étoffent, comme la protection par mot de passe, les aperçus en storyboard, la réimportation de vidéos et l’ajout de chapitres
- Grâce à des tests de performance, des optimisations, la suppression de WebTorrent et une focalisation sur HLS·WebRTC P2P, PeerTube améliore à la fois l’expérience des administrateurs de plateforme et celle des spectateurs
La nature de PeerTube v6
- PeerTube est un logiciel développé par Framasoft pour permettre aux créateurs, médias, institutions et éducateurs de gérer leur propre plateforme vidéo comme alternative à YouTube et Twitch
- v6 est la sixième version majeure et est présentée comme la sortie la plus ambitieuse depuis l’ajout du live streaming pair à pair
- Les nouvelles fonctionnalités ont été développées à partir d’idées proposées et votées par les utilisateurs sur le site de retours PeerTube
- Framasoft prévoit de publier deux semaines plus tard une actualité distincte consacrée à l’histoire de PeerTube, à l’état du projet et à ses plans futurs
Une évolution dans la continuité des v5.1 et v5.2 de 2023
-
PeerTube v5.1
- En mars 2023, PeerTube v5.1 a ajouté une fonction permettant aux administrateurs d’instance de gérer et examiner les demandes de compte
- Un bouton de retour au direct a été ajouté pour revenir au point actuel d’un live en cas de décalage
- Les plugins d’authentification ont aussi été améliorés pour faciliter la connexion avec des identifiants externes
-
PeerTube v5.2
- En juin 2023, PeerTube v5.2 a adapté les flux RSS des chaînes PeerTube au standard des podcasts afin qu’ils puissent être lus par des clients de podcast
- Les streamers peuvent définir à l’avance la visibilité des replays de live parmi Public, Unlisted, Private et Internal
- La navigation sans souris a été améliorée pour les utilisateurs qui se déplacent au clavier
- La documentation a également été enrichie
Le transcodage distant réduit la charge d’exploitation
- La fonctionnalité clé de v5.2 est le transcodage distant
- PeerTube doit convertir les vidéos envoyées ou les flux live dans des formats efficaces, et cette opération consomme beaucoup de ressources CPU
- Jusqu’ici, les administrateurs devaient prévoir des serveurs dotés de CPU performants même pour des tâches dont ils n’avaient pas besoin en permanence
- Le transcodage distant permet de confier une partie ou la totalité de ces conversions à un autre serveur plus puissant
- Ce serveur peut aussi être partagé entre plusieurs administrateurs
- Cette fonctionnalité rend l’exploitation de PeerTube moins coûteuse et plus résiliente, tout en améliorant l’efficacité énergétique et le partage de ressources entre communautés
- Les améliorations techniques ont été soutenues par des financements du programme NGI Entrust et de la fondation NLnet
Les fonctionnalités ajoutées pour les utilisateurs dans v6
-
Vidéos protégées par mot de passe
- Les créateurs disposant d’un compte PeerTube peuvent définir un mot de passe unique lors de l’envoi, de l’import ou de la modification des réglages d’une vidéo
- Cela peut servir à proposer des contenus exclusifs, à dévoiler progressivement un parcours pédagogique ou à partager de manière limitée avec des personnes de confiance
- Via l’API REST, les administrateurs et développeurs peuvent définir et stocker plusieurs mots de passe, ce qui facilite l’attribution et la révocation des accès
- Cette fonctionnalité a été développée par Wicklow pendant un stage chez Framasoft
-
Aperçus en storyboard
- v6 ajoute une fonction de storyboard qui affiche des miniatures d’images lorsque l’on survole ou touche la barre de progression
- Les storyboards sont générés lors de l’envoi ou de l’import d’une vidéo, et sont donc fournis par défaut pour les nouvelles vidéos des instances passées à v6
- Pour les vidéos existantes, les administrateurs peuvent générer les storyboards en lançant la commande
npm run create-generate-storyboard-job - Cette tâche peut consommer des ressources CPU
-
Réimportation de vidéos
- Les créateurs peuvent remplacer un fichier vidéo existant par une nouvelle version afin de corriger des erreurs, ajouter des informations ou proposer un meilleur montage
- Lors du remplacement, l’ancien fichier vidéo est supprimé définitivement, mais l’URL, le titre, les informations, les commentaires et les statistiques sont conservés
- Cette fonction nécessite une relation de confiance entre les créateurs de vidéos et les administrateurs, et doit donc être activée par ces derniers sur la plateforme PeerTube
- Les vidéos mises à jour affichent le tag Video re-upload
-
Ajout de chapitres
- Les créateurs peuvent définir le timecode et le titre de chaque chapitre dans le nouvel onglet chapters de la page de réglages de la vidéo
- Lors de l’import d’une vidéo depuis une autre plateforme, PeerTube peut reconnaître et importer automatiquement les chapitres de la vidéo source
- Une fois les chapitres configurés, la barre de progression est segmentée et le titre du chapitre s’affiche au survol ou au toucher de chaque section
Tests de performance et optimisations
- En 2022, des tests de charge de live streaming à plus de 400 spectateurs simultanés ont été menés avec les diffusions Au Poste ! du journaliste indépendant français David Dufresne et avec l’hébergeur Octopuce
- En 2023, il a été décidé de mener des tests simulant 1 000 utilisateurs simultanés dans des conditions de live streaming et de streaming vidéo classique
- Octopuce a aidé au déploiement de l’infrastructure de test
- Framasoft prévoit de publier fin 2023 ou début 2024 un rapport contenant les conclusions et des configurations de serveurs recommandées selon les cas d’usage
- Les premiers résultats de ces tests ont conduit à plusieurs améliorations de performance dans v6
- traitement des tâches HTTP unicast dans des worker threads
- traitement des signatures de requêtes ActivityPub dans des worker threads
- optimisation des requêtes HTTP liées aux vidéos recommandées
- optimisation des requêtes SQL vidéo lors des filtrages par live ou par tag
- optimisation du point de terminaison
/videos/{id}/viewslorsqu’il y a beaucoup de spectateurs - ajout d’une fonction de désactivation des logs HTTP de PeerTube
Suppression de WebTorrent et amélioration du lecteur
- v6 supprime la prise en charge de WebTorrent afin de réduire la dette technique et de se concentrer sur HLS
- WebTorrent et HLS sont des briques techniques permettant le streaming pair à pair dans les navigateurs web
- PeerTube estime que HLS est mieux adapté à la situation actuelle et aux plans futurs
- v6 se concentre sur HLS et WebRTC P2P
- Le lecteur vidéo devient plus efficace
- il n’est plus recréé à chaque changement de vidéo
- il conserve les réglages de visionnage, comme la vitesse ou le plein écran, même après un changement de vidéo
- il ajuste automatiquement sa taille au format de la vidéo
- Le SEO a été amélioré afin que les vidéos hébergées sur des plateformes PeerTube apparaissent mieux dans les résultats des moteurs de recherche
- Des améliorations d’accessibilité ont été apportées à plusieurs niveaux pour améliorer l’expérience des personnes en situation de handicap
- Le changelog complet est disponible dans la release PeerTube v6.0.0
Plans futurs et soutien
- Framasoft estime que PeerTube gagne en intérêt, en reconnaissance et en croissance communautaire, dans un contexte de réaction de YouTube face aux bloqueurs de publicité, d’exploitation croissante des streamers sur Twitch et de prise de conscience de la toxicité des systèmes associés
- Comme les annonces concernant l’avenir de PeerTube sont nombreuses, une actualité séparée sera publiée deux semaines plus tard
- Un live Ask Us Anything destiné à répondre aux questions sur PeerTube est également prévu
- Les actualités PeerTube peuvent être suivies via la PeerTube Newsletter, le compte Mastodon de PeerTube et le Framablog
- Le développement de PeerTube est assuré par 1 développeur salarié à temps plein, 1 stagiaire et la communauté
- Framasoft est une association française à but non lucratif, et 75 % de ses revenus annuels proviennent de dons individuels
- Le financement du développement de PeerTube provient principalement des passionnés francophones de logiciels libres et open source, ainsi que de subventions de NLnet via les initiatives NGI 2021 et 2023
- Framasoft doit réunir 176 425 € en 5 semaines pour équilibrer son budget 2024
1 commentaires
Avis sur Hacker News
PeerTube m’intéresse parce que j’aimerais l’essayer, mais je ne connais pas très bien
L’article dit qu’ils ont supprimé WebTorrent et choisi HLS ; je me demande donc si PeerTube n’est plus P2P
HLS ressemble à quelque chose comme un codec ou un format de conteneur, tandis que WebTorrent donne l’impression d’être une méthode qui permet aux pairs de streamer les données vidéo entre eux pour éviter que le serveur ne soit facilement saturé lors des pics de trafic
Je pensais que c’était l’avantage central de PeerTube par rapport aux autres plateformes, et que son nom venait de là ; je ne sais pas si j’avais mal compris ou si cela a vraiment disparu
L’article dit que HLS est aussi un composant du streaming P2P, mais HLS n’est-il pas plutôt proche d’un format de conteneur qui encapsule les données vidéo, comme MP4 ou MKV ?
Si WebTorrent n’avait pas été supprimé, les données HLS sembleraient plutôt être quelque chose que WebTorrent pourrait justement propager
Elle doit être mise à jour pour refléter la suppression de WebTorrent, mais la partie HLS reste valable
Lorsqu’on utilise le lecteur HLS, le lecteur charge la playlist HLS depuis le serveur d’origine avec hls.js, et PeerTube fournit à hls.js un chargeur personnalisé qui lui permet de télécharger les segments non seulement via HTTP, mais aussi via du P2P basé sur WebRTC
Les segments sont récupérés en HTTP depuis le serveur d’origine et les serveurs qui mettent la vidéo en miroir, et en même temps via WebRTC depuis d’autres navigateurs regardant la même vidéo ; hls.js les streame ensuite vers l’élément HTML
La copie d’origine est hébergée sur un site web, que ce soit le mien ou celui de quelqu’un d’autre, et si suffisamment de gens la regardent, le système de distribution en streaming P2P se met en marche pour apporter de la bande passante
C’est simplement un moyen de ne pas avoir besoin d’une énorme bande passante d’hébergement pour absorber beaucoup de spectateurs
Mais presque personne n’utilise PeerTube. Si l’on regarde la liste des tendances de Hardlimit, la vidéo en première place a 217 vues, et la vidéo que j’ai mise en ligne il y a deux jours pour expliquer un rapport de bug est 9e avec 14 vues. C’est désastreux
Avec une intégration WordPress permettant aux sites WordPress de fournir leurs vidéos via PeerTube, et si davantage de sites auto-intègrent les liens en vidéos lisibles simplement en les collant, cela pourrait décoller
https://video.hardlimit.com/videos/trending
WebTorrent n’est qu’un torrent au-dessus de flux de données WebRTC ; donc quand on parle de “P2P HLS”, cela semble vouloir dire envoyer HLS au-dessus de flux de données WebRTC ou de flux vidéo
La suppression de WebTorrent est regrettable. Dans les vrais clients torrent, c’est encore un chantier en cours, et même si cet écosystème avance lentement à la base, ce n’est pas la faute de WebTorrent
Au final, il disparaît avant même d’avoir eu sa chance dans un écosystème qui avance lentement
Cela rend aussi plus difficile pour les instances PeerTube de faire du P2P avec seulement un infohash partagé et la DHT
La remise en ligne de vidéos entre en conflit avec ce type de solution immuable, mais c’est plutôt un avantage
Saviez-vous que l’ancienne vidéo de Crazy Frog mise en ligne a été discrètement remplacée très récemment par un autre montage ? https://youtu.be/k85mRPqvMbE?t=75 vs. https://hobune.stream/videos/k85mRPqvMbE
Une remise en ligne doit rester une remise en ligne, et l’ancienne version doit rester disponible séparément
Plus largement, cela rend aussi encore plus impossible de créer et de découvrir des archives YouTube interopérables basées sur la même source. Les efforts de préservation et de mirroring restent isolés les uns des autres et se dupliquent
C’est lié à la difficulté de mettre en œuvre le streaming en direct, proposé depuis la v3
La libwebrtc de Google est de fait le standard, et si je comprends bien, même si WebTorrent n’a besoin que de flux de données, il faut tout compiler, y compris les codecs vidéo et audio
Même dans Node.js, webtorrent étant écrit en JavaScript, on pourrait croire que c’est simple, mais les options se limitent plus ou moins à wrtc ou Electron
wrtc est un add-on natif, donc il faut le compiler depuis les sources ou utiliser des binaires précompilés ; webtorrent-hybrid s’en sert, mais il n’a pas été mis à jour depuis trois ans
Electron fournit libwebrtc avec une partie du moteur Blink, et je crois que webtorrent-desktop utilise cette approche
J’aimerais qu’il existe une meilleure API web pour le trafic P2P. Malheureusement, WebTransport ne fait pas de traversée de pare-feu ni de hole punching, donc il n’est pas adapté au P2P
Si une telle API existait, au lieu que tout le monde perde du temps à compiler, utiliser et distribuer libwebrtc, l’écosystème P2P pourrait réellement progresser
Il y a quelques années, j’ai créé un client PeerTube pour Android
J’aime PeerTube et je crois vraiment en ce projet, mais je ne sais pas si les efforts consacrés au client et la réécriture, presque terminée, avec une architecture Jetpack/MVVM en valaient la peine
Ça me fait de la peine de l’abandonner, mais je pense que je vais probablement devoir arrêter
https://github.com/sschueller/peertube-android
Je me demande si c’est parce que PeerTube lui-même n’intéresse pas les gens, ou parce qu’il n’y a pas de demande pour une version Android
Ça ressemble à un problème de poule et d’œuf : faut-il une app Android ou iOS pour PeerTube afin que PeerTube devienne populaire, ou PeerTube doit-il devenir populaire pour qu’une demande d’app Android apparaisse ?
À mon avis, c’est plutôt le premier cas que le second. Je ne peux pas juger de la motivation à abandonner, mais en général, je pense qu’il vaut mieux tenir bon pour le dernier pas, souvent le plus difficile
Quand l’app officielle sortira l’an prochain, il faudra sans doute beaucoup de contributeurs
L’idée de ce projet est vraiment bonne. Mais malheureusement, il existe des raisons économiques qui rendent difficile la victoire de PeerTube
Ce n’est pas à cause du coût de l’hébergement vidéo, et cela vaudrait tout autant même si l’hébergement était gratuit
Imaginez que vous êtes un créateur populaire : vous pouvez publier vos vidéos sur une plateforme sans publicité où les utilisateurs peuvent regarder tranquillement et avec plaisir, ou les publier sur une plateforme financée par la publicité et toucher une douce part des revenus publicitaires
Plus la vidéo devient populaire, plus la deuxième option devient tentante
Résultat : sur une plateforme gratuite, les contenus les plus populaires finissent par partir, et les spectateurs les suivent
Cette logique s’applique aussi plus largement aux plateformes gratuites face aux plateformes commerciales. Je pense que c’est assez proche de la raison fondamentale pour laquelle Internet est devenu aussi médiocre aujourd’hui
S’il existe une façon de résoudre ce dilemme, je ne la connais pas
Dans l’ensemble, les podcasts ont été distribués via des plateformes gratuites, et le contenu a été monétisé par des publicités de sponsoring
Autrement dit, les créateurs passent directement des accords avec des marques et intègrent dans le contenu des segments publicitaires lus par l’animateur
Il existe donc, même sur des plateformes de distribution gratuites, une voie claire et éprouvée pour que les créateurs puissent monétiser
Bien sûr, comme le savent ceux qui regardent beaucoup YouTube, les créateurs peuvent cumuler les revenus en ajoutant des sponsors sur une plateforme commerciale et en partageant aussi les revenus AdSense
Il reste donc un gros avantage à publier aussi sur YouTube. Cela dit, comme la valeur des contrats de sponsoring dépend de la portée globale sur les plateformes, tant que les grandes plateformes commerciales n’imposent pas l’exclusivité, il peut y avoir une incitation à publier sur plusieurs plateformes
Le postulat de départ est faux. Les critères de « victoire » ne sont pas les mêmes, si bien que même utiliser ce mot n’est pas très utile
Les indicateurs de succès de PeerTube et de Framasoft sont le degré de liberté de la société et des communautés
Vu la dynamique du Fediverse et l’augmentation de l’usage des logiciels libres, je pense que la trajectoire est très bonne
Il existe clairement un marché publicitaire en dehors de Google. Toutes les entreprises qui sponsorisent des vidéos en sont un exemple
En pratique, les YouTubeurs semblent gagner davantage avec ces sponsors qu’avec l’argent reçu de Google
Au bout du compte, quelqu’un doit faire cet effort
Je me demande quel est le niveau de difficulté pour installer et exploiter PeerTube
Existe-t-il une façon d’installer PeerTube aussi simplement que l’installation de MediaCMS [0, 1] [2] ?
J’ai évalué des solutions vidéo auto-hébergées, en gros des alternatives à YouTube, et PeerTube m’a paru beaucoup plus mature et populaire que MediaCMS
Mais comme je voulais quelque chose de « simple », j’ai fini par choisir MediaCMS pour l’instant. La viabilité à long terme du projet m’inquiète un peu, mais faute de meilleure option, j’ai mis ce souci de côté pour le moment
J’aimerais savoir s’il est possible de lancer PeerTube avec la même facilité, même sur un serveur unique
Je sais qu’on est sur un site technique, mais je n’ai pas envie de passer beaucoup de temps sur l’exploitation et la configuration, qui sortent de mon domaine d’activité principal
Idéalement, j’aimerais quelque chose qui fonctionne tout simplement, tout en étant auto-hébergé ; du bare metal me va aussi
Je sais que PeerTube peut faire beaucoup plus de choses, mais toute réflexion sur la manière de réduire la complexité liée à l’hébergement, qu’elle soit réelle ou perçue, serait très bienvenue
[0] https://mediacms.io
[1] https://news.ycombinator.com/item?id=25507204
[2] https://github.com/mediacms-io/mediacms/…
Je ne me souviens plus combien de temps cela a pris, mais il me semble que je n’ai pas rencontré beaucoup de gros problèmes
Ajouter une intégration de connexion avec notre serveur LDAP existant a aussi été très facile
Si PeerTube/Mastodon vous intéresse, je recommande de regarder cette vidéo récente
https://urbanists.video/w/n7xyeV1kbW8mUKr4ncchhs
Si vous voulez tester, cette instance est passée en 6.0.0-rc.2 : https://framatube.org/videos/local
Voir aussi la page À propos : https://framatube.org/about/instance
Je n’ai pas trouvé d’instance stable en v6
J’administre aussi une instance PeerTube moi-même, comme on peut le faire avec une instance Mastodon
Mastodon est génial. Une instance personnelle peut se connecter à n’importe quelle autre instance et en récupérer les données ; quand on lance une recherche, mon instance la relaie vers le serveur d’origine
C’est à peine plus contraignant que d’utiliser un gros serveur unique
PeerTube, ce n’est pas ça. Sur le papier, il prend en charge toutes les mêmes fonctionnalités, mais l’accumulation des détails fait que ça ne fonctionne pas correctement
Imaginons qu’on veuille simplement parcourir des vidéos depuis une instance personnelle. Comment trouver du contenu distant ? Le serveur peut « suivre » d’autres serveurs et répliquer leur timeline chez moi. À condition que le serveur distant l’autorise
Côté utilisateur, on peut suivre une chaîne où qu’elle se trouve, et son contenu alimente la timeline locale de mon serveur
Mais la recherche ? Il faut utiliser un index de recherche tiers, qui est en plus opt-in. Sinon, il faut aller directement sur chaque instance distante que l’on connaît pour y chercher
Même si, d’une manière ou d’une autre, beaucoup de contenu arrive sur le serveur, comment trouver quelque chose qui vaille le coup d’être regardé ? On ne peut pas
La plupart des filtres et de la recherche sont inutiles, et seul le flux d’abonnements personnel est à peu près fiable
J’aimerais aimer PeerTube, mais je le déteste vraiment, vraiment. La découvrabilité est tellement mauvaise que l’ensemble de la plateforme en devient presque inutilisable
En pratique, le mieux est probablement de s’inscrire sur la plus grosse instance. Ce qui détruit alors l’intérêt central de l’architecture distribuée et fédérée
Peu importe combien de vidéos le service héberge si personne ne peut les trouver. Si PeerTube ne s’attaque pas sérieusement à ce problème, il deviendra insignifiant d’ici quelques années
Pour une raison quelconque, l’en-tête HTML de la page indiquait la langue fr-FR, si bien que Firefox m’a gentiment proposé de traduire l’anglais
Le travail de Framasoft est vraiment encourageant
J’espère seulement qu’il sera davantage adopté. Je ne sais pas s’il y a encore des gens qui se souviennent de l’époque de Firefox 2 et 3, et du « marketing communautaire », mais un projet de ce type aurait aussi de la valeur ici
Par exemple, ce serait bien que des créateurs influents organisent chaque année un Framasoft February et s’engagent à héberger une partie des vidéos de leur choix sur PeerTube
Imaginons que je publie un Show HN, qu’il suscite des réactions et que je me prenne un afflux massif de trafic venu de HN
En théorie, PeerTube devrait pouvoir absorber la charge vidéo sans dépendre de YouTube, mais quelqu’un y est-il réellement parvenu ?
Je vais demander aux fournisseurs de contenus que j’aime d’y participer absolument