MasterClass 2020 avec le co-fondateur de VLC

Jean-Baptiste Kempf

Lundi 27 janvier à 18h30, le co-créateur de VLC fait une conférence en Grand Amphi. Le service communication de l’Efrei a convié Jean-Baptiste Kempf pour la 2e MasterClass de l’Efrei. Une trentaine de personnes sont venues assister à l’événement.

Organisé par l’Efrei, cette rencontre avec le créateur du célèbre logiciel VLC a attiré plus d’une trentaine de curieux et curieuses au Grand Amphi. Jean-Baptiste Kempf, révélé au grand public lors d’un interview avec Konbini, a donné une conférence sur l’histoire du logiciel le plus téléchargé au monde. Sabri M’barki, le comédien de l’Efrei, a aussi été invité pour animer la 1ère MasterClass de l’année. Seb Andréa, quant à lui, était le photographe de la soirée.

Sabri M’barki (gauche) et Jean-Baptiste Kempf (droite) au pupitre (Photos : Seb Andréa de la communication)

Du haut de ses 36 ans, de son côté geek et de sa passion pour les poneys, Jean-Baptiste Kempf est un redoutable pionner dans le monde de l’open-source. Sa session, longue de 1h30, racontait l’incroyable histoire du projet VLC. Son co-créateur a su captiver l’audience du début jusqu’au moment des questions. Quelques personnes présentes en ont aussi profité pour aller à sa rencontre à la fin de la session.

L’histoire de VLC

Dans les années 60, l’école Centrale déménage à Clermont-Ferrand (dans le centre, petit jeu de mot) pour avoir plus de place. Ça n’a pas du tout plu aux anciens élèves de l’école. Ils achètent donc un terrain à Châtenay-Malabry dans les Hauts-de-Seine (92). Le campus est alors géré par les étudiants et des associations, dont le réseau interne.

La technologie de l’époque reposait sur le token ring : un utilisateur qui voulait envoyer un message le faisait par paquets en anneau. La latence était monstrueuse, et les jeux en FPS comme Doom en pâtissaient. Lorsque les étudiants ont demandé un meilleur réseau, l’école les a renvoyés vers ses partenaires. Ils se sont alors tournés vers Bouygues.

On aimerait bien vous aider pour le réseau… Mais allez voir nos partenaires car il nous appartient pas vraiment

L’admin du campus de Châtenay-Malabry à l’époque

L’entreprise voulait améliorer son service d’envoi d’images par satellite. Il leur fallait un réseau pour recevoir la télévision, grâce à du décodage en temps réel. Ils ont alors proposé Network 2000 (car tout ce qui avait 2000 dans son nom était cool à l’époque). Ils ont ainsi pu faire une démonstration avec pour résultat 2ms de latence. Un exploit, avec un ordinateur sous Linux n’ayant presque rien en RAM. Ils ont alors pu upgrade leur réseau, mais l’équipe derrière le projet a souhaité le poursuivre pour le grand public.

Pourquoi VLC existe ?

En 2001, VLC ou VideoLan Client, devient officiellement open-source. C’est dans un contexte de codecs propriétaires et de diffusion multimédia à réinventer que le logiciel est créé. Son principal concurrent, Windows Media Player, ne fournit que très peu de codecs et les autres sont payants et non libres. VLC, et son co-fondateur Jean-Baptiste Kempf, avaient pour ambition de changer le jeu.

Vint alors l’occasion de faire le logo du logiciel, un cône orange venu d’un délire étudiant récurrent. C’était aussi l’occasion de se démarquer des autres services (bouton play, pellicule de film, note de musique…).

L’i-cône-ique logo de l’organisation VideoLAN

Le programme promet d’être multi-plateforme (Mac, Windows, Linux, Android, Symbian… Et même OS/2) et multi-codecs. Dans une période d’avènement du piratage (eMule, LimeWire, Napster…), un lecteur multimédia universel était le bienvenu.

De l’open-source pour le premier logiciel mondial

Bien que ce ne soit plus le cas aujourd’hui, faire son logiciel en open-source était bien coté. Rendre le code source accessible au public a permis à VLC de devenir le logiciel le plus téléchargé du monde. Jean-Baptiste Kempf annonce les chiffres affolants de 1 million de téléchargements quotidiens pour 3,2 milliards de téléchargements sur son site.

Jean-Baptiste Kempf présente le fonctionnement de VLC (Photo : Seb Andréa)

Son développement, bénévole, s’est fait grâce à 800 contributeurs, dont 150 par année. 10 personnes sont au cœur du projet. Il y a 10 ans, cette association créée pour améliorer les connexions réseau entre joueurs en est à près de 15 millions de lignes de code, dont 1 million sans ses bibliothèques. Toutefois, le projet reste un « wrapper autour d’un framework » . Si on le compare avec Linux (30 millions de lignes de code), VLC reste humble.

Vous pouvez tous faire un OS. Linus Torvalds, créateur de Linux, l’a fait en 5 ans. On peut tous en faire un, aussi petit soit-il.

Jean-Baptiste Kempf à propos du nombre de lignes de code de VLC

libVLC, la librairie derrière VLC créée en 2001, a été portée en l’espace de 2 mois sur MacOS et Windows. Les fondations du projet sont elles aussi en open-source. Les contributeurs communiquent en chat IRC, utilisent PHP BB pour le forum et partagent leur code avec GitLab.

VLC, le logiciel le plus complet au monde

Jean-Baptiste Kempf se vante d’être à la tête d’un projet codé en « C– » . La plupart des structures du projet sont anonymes, et l’héritage est utilisé à foison. La raison : dans les années 98, le C++ étant effroyablement lent, séparer le corps du reste du code était une solution d’optimisation. « La compilation ne se fait que sur un module et pas sur l’ensemble » , nous affirme-il.

Photo : Seb Andrea

VLC étant basé sur la disponibilité réseau, il a parfois des « fonctionnalités débiles » . On peut commencer par la fonctionnalité Remote desktop. « À quoi ça sert ? À rien » , nous dit avec autodérision le maître de conférence. Tout comme l’option mosaïque qui montre simultanément 20 flux vidéos, le support du karaoké (très prisé au Japon), le MIDI… On peut même voir une vidéo en ASCII art, grâce à la libCaca. Le logiciel est aussi compatible avec l’Apple Watch, « mais c’est inutile car il n’a pas le droit d’être dans l’App Store ».

La version 3.0, dernière en date

La dernière version, la 3.0, a bénéficié d’une énorme refonte. « C’est une update importante, ayant pour principal but l’unification mobile/desktop » . Elle représente environ 18.000 commits sur le GitLab officiel.

Capture d’écran de VLC 3.0.0 sur Windows 10

L’une des principales difficultés était le rendu de texte pour les sous titres. Par exemple, le Malayalam, de l’état du Kerala, consiste en la fusion de deux caractères. D’autres langues, notamment l’arabe, se lisent de droite à gauche, ce qui ajoute de la complexité aux sous-titres.

L’une des petites anecdotes est celle de Salah, un contributeur vivant à Alep Est, ayant 2h d’internet et d’électricité par jour. « J’aimerais contribuer car je me fais chier » , dit-il à la team. Il a été accepté, et 6 mois après aucun signe de vie, il envoie un patch pour le rendu en arabe. « Le code est crado, mais ça se nettoie » .

Content du résultat, Jean-Baptiste Kempf lui propose alors l’hébreu, une autre langue bidirectionnelle. Il réalise son erreur : « je demande ça à un mec en train de se faire bombarder en Syrie » , mais celui-ci accepte. Finalement, très content de son travail, l’équipe lui demande ce qu’il voudrait. Celui-ci répond simplement : « J’aimerais un mail en @videolan.org » .

Le futur de VLC

VideoLan concentre aujourd’hui ses efforts sur la version 4.0, voulant refaire l’intégralité du logiciel en interne et en externe. Quelqu’un du public, face à une capture d’écran du futur logiciel, s’exclame : « C’est ARCHI beau » .

Photo : Seb Andrea

L’équipe travaille aussi sur de nombreux projets, comme le lancer dans un navigateur avec VLC.js grâce au projet Web Assembly. « C’est lent, mais ça marche » . Il est aussi question de sandboxer chaque couche de VLC pour éviter les failles, ce qui n’est pas simple car VLC a besoin de nombreux éléments d’action. Un projet ayant réalisé ça est Chromium, qui compte énormément de modules.

Mais pour ce qui est de la rémunération, VLC étant à but non lucratif, l’équipe a adopté un modèle B2B. Par exemple, Free a financé le port du moteur sur leur box, et YouTube a pu collaborer avec eux sur le développement de codecs.

VLC est un projet open-source, c’est pourquoi n’importe-qui peut travailler dessus. Que ce soit pour la traduction (même pour le Corse !), pour les modules ou pour les ports sur mobile, c’est une immense équipe qui est derrière le projet.

Jean-Baptiste Kempf veut rassurer, dans le monde du travail, n’importe-qui a ses chances. C’est la théorie des avantages comparatifs : personne ne sait rien faire. Avec plus d’un million d’étudiants sur le marché, « personne ne vous attendra » . Pour lui, aucun projet, aucune start-up n’a de succès avec la chance. Seul le travail porte ses fruits.

Laisser un commentaire