Histoire du logiciel VLC - Jean-Baptiste Kempf

On est là pour parler de VideoLAN [1]. VideoLAN, c’est une association loi de 1901 qui existe depuis quelques années, mais en fait, c’est un projet qui date d’il y a très longtemps et dont le but c’est que l’icône devienne Les Maîtres du monde !
C’est une histoire complètement débile et complètement délirante qui commence à peu près il y a vingt ans, à l’École Centrale Paris. Ça, c’est le super campus de l’École Centrale Paris, perdu à 20 kilomètres au sud de Paris, avec absolument rien à foutre. L’histoire commence, en fait, dans les années 60. L’École Centrale Paris, qui s’appelait à l’époque l’École Centrale des arts et manufactures était à Gare de Lyon et il n’y avait pas assez de place. L’École Centrale Paris, contrairement à la plupart des autres grandes écoles, c’est une école qui dépend de l’Éducation nationale, et l’Éducation nationale n’a pas d’argent. Ils décident de construire une nouvelle école et puis, comme ils n’ont pas le pognon et que le terrain ça coûte cher en région parisienne, ils décident donc, puisque l’École s’appelle Centrale, de la mettre à Clermont-Ferrand. Ce n’est vraiment pas une blague. C’était vraiment les plans, et là il y a des anciens élèves qui ont fait : « Hou là, là, ça nous fait chier ! » Donc ils sont allés trouver un truc à côté du parc de Sceaux, c’est ce que vous voyez en haut à droite, ils ont acheté un terrain — ne vous inquiétez pas, je parle de VLC, il n’y a pas de souci. Ils ont acheté un terrain, ils arrivent, ils posent leur terrain et ils disent à l’école : « Écoutez, nous on a un terrain, on a construit le campus », c’est ce que vous voyez, tous les bâtiments là, à peu près. Et puis bon, quand même, il faut qu’il y ait des cours, « alors construisez votre machin en haut, grosso modo, allez-y, mais c’est nous qui avons le campus »,e qui est intéressant. C’est une école qui n’a pas son campus parce que le campus appartient, en fait, aux anciens élèves et c’est très important pour la suite.
Qu’est-ce qui se passe dans les années 80 ? Je ne sais pas pourquoi, IBM et Bouygues, qui avaient construit la résidence, arrivent et mettent du réseau qui était du Token Ring [2]. Est-ce qu’il y a quelqu’un qui sait ce que c’est que le Token Ring ?
Public : Ils vont en entendre parler en cours de réseau.
J. B. Kempf : D’accord. Alors le Token Ring, je vous explique. C’est un réseau qui est donc en boucle comme son nom l’indique et l’intérêt c’est, qu’en fait, quand on veut parler sur le réseau, tout le monde est sur la même boucle et on prend le jeton, le token et on parle et voilà.
Dans les années 80, quand c’est pour faire du mail, du Gopher et du Telnet, grosso modo ça va, quoi ! Le problème, c’est que dans le début des années 90 on commence à jouer à Doom. Non, mais je vous raconte vraiment l’histoire de pourquoi on a commencé VLC ! C’est vraiment une histoire de « j’avais envie de jouer à Doom ». Et donc, le problème, c’est que plus tu as de cons qui sont sur ton réseau, plus ta latence est grande. Et donc tu ne peux pas fraguer tranquille, et donc ça fait chier.
91/92/93, régulièrement les étudiants, puisqu’en fait c’est une association qui s’appelait VIA – Centrale réseau, arrivent et qui vont voir l’école en disant : « Écoutez, le réseau Token Ring, c’est vraiment… On pourrait avoir un nouveau réseau ! » Et alors là, l’école dit : « On voudrait tellement vous aider, mais vous comprenez, le campus ne nous appartient pas. On ne peut rien faire pour vous ». Et en fait l’idée c’était, grosso modo, « vous en avez besoin pour jouer aux jeux vidéo ».
Maintenant, c’est peut-être un peu plus logique, mais 93 on est vraiment avant le début du web grand public. Le web grand public c’est 95/96 pour les early quoi, à peu près au moment de l’ordinateur Pentium 75. Donc voilà. Donc ils se font un peu chier et puis il y a quand même quelqu’un qui dit : « Je vais aller voir des industriels. On va voir ce qu’ils peuvent nous dire. » Donc il va voir Bouygues. En fait Bouygues, à ce moment-là, c’était aussi TF1 et le début du satellite, CANALSAT, les anciens de CANALSAT, et il y a un gars de Bouygues qui dit : « Écoute, nous on a commencé à faire joujou sur du numérique avec la télé, mais si jamais vous êtes capables de prendre le flux télé du satellite et de le balancer sur votre réseau, donc de détruire votre réseau parce qu’un truc Token Ring, jamais il ne prendra ça, et de décoder sur chacun des PC, je vous paye un nouveau réseau ». Vous ça ne vous semble pas logique, mais là on est en 95. C’est 12 ans avant YouTube, c’est avec des 486 ou des Pentium 90. Donc faire du décodage vidéo MPEG-2, donc les DVD quoi, audio et vidéo sur un soft, c’est de la science-fiction quoi ! Et les mecs disent : « Mais vous êtes complètement barges ». Et puis les étudiants disent : « OK, on va essayer ». Ils avaient vraiment envie de jouer à Doom !
Là, sur le bâtiment B, en fait, ils installent une antenne satellite et donc ils bossent. Grosso modo il leur faut un an, avec l’histoire de taxe d’apprentissage, taxe professionnelle. Tous ceux qui connaissent un peu ça, c’est un peu compliqué. Et puis ils commencent à coder, et à la fin ils ont donc une démo, au bout d’un an et demi, qui marche. Donc la démo elle dure trente secondes, parce qu’au bout de 40 secondes il n’y a plus de RAM dans le PC parce qu’il y a forcément des…, mais ça on ne le dit pas. Et ils sont capables, sur une sorte de Linux, de faire fonctionner ce truc-là. Et c’est un succès et ils sont trop contents. Et le projet s’appelait donc « Projet Network 2000 ». Hou ! Et c’est comme ça, en fait, qu’arrive à Centrale Paris, le projet VideoLAN.
Voilà hop ! C’est ce que je vous disais, le premier projet. Et puis ils décident, en fait en 98, de recommencer le projet, mais avec plusieurs idées en tête. La première idée c’est qu’ils veulent que ce soit open source et que ce soit réutilisable à l’extérieur, parce qu’ils disent qu’il y a d’autres gens qui peuvent en avoir besoin. Que ce soit modulaire et que ce soit cross-platform. Attention, je vous calme, cross-platform, là l’idée c’était d’être à la fois sur BeOS et Linux. Le reste on s’en foutait.
Network oriented, ça c’est super important parce que c’est une des décisions qui va faire que VLC va devenir hyper populaire. C’est un lecteur qui doit un être lecteur pour lire des flux réseau. Et puis c’est un projet étudiant.
Ça leur prend à peu près deux ans à se battre avec l’école pour transformer tout ça en GPL, puisque l’école avait comme seule idée, l’idée de récupérer le décodeur MPEG-2, de le revendre, licence, etc. Sauf que c’était des étudiants qui faisaient ça sur leur projet de deuxième année. Ils faisaient 150 heures, ils n’avaient pas envie de bosser gratos pour l’école, grosso modo. Je ne vais pas dire que c’est pas des gentils, mais en tout cas…
Voilà. VideoLAN, en fait, ça fait plein de projets, et c’était donc un groupe de projets. Il y a plein de projets qui sont morts. Ça fait partie du deal. Mais il y en a deux qui sont, enfin, il y en a deux qui étaient assez connus à l’époque. Il y avait donc VideoLAN client, qui est devenu donc VLC, et puis VLC Media Player. Et puis il y avait serveur qui s’appelait VideoLAN Server et donc qui s’appelait VLS. Et puis il y avait plein d’autres trucs complètement délirants, notamment une façon de faire du multicast sur un réseau qui ne supporte pas du multicast avec DVLAN. Si un jour il y a des gens qui ont de l’estomac, je vous raconterai.
Voilà. Il y a plein de bibliothèques, de décryptions DVD, décryptions de Blu-ray, etc., et donc c’est plein de projets qu’on hausse. Évidemment le projet que les gens connaissent bien c’est VideoLAN, c’est VLC.
Et le deuxième projet que les gens connaissent bien c’est 264, qui est donc le meilleur encodeur au monde de vidéo, qui est utilisé par tout le monde, aussi bien par les pirates, évidemment, que par YouTube, Facebook et tous ces gens-là qui n’utilisent évidemment que ça.
Ça, c’est le schéma qui avait été fait en 2003. C’est assez intéressant parce qu’en fait rien n’a changé, à part qu’il y a certains projets qui sont morts. Vraiment, l’idée c’était on prenait tous les inputs que ce soit en fichiers, en DVD, le satellite, ou la TNT. On prenait avec VLC. Soit on le ré-encodait et on l’envoyait sur le réseau, soit avec VLS. Et puis on voyait, et puis on avait des clients. Ça c’était le projet VideoLAN, c’était vraiment l’ensemble de la solution. VLC en fait c’était à l’origine juste un des clients, et puis ensuite c’est devenu la chose… plus connue.
Juste un petit point. L’idée d’open source c’est clair pour tout le monde ? Ouais ?
Public : Inaudible.
J. B. Kempf : Alors tu me tutoies parce que je ne suis pas vieux et je vais le prendre hyper mal, ça c’est clair. La différence entre open source et free software ? Ouais. Bon ça commence à être un peu plus compliqué !
Alors c’est quoi l’open source ? L’open source, c’est comme la cuisine. La seule façon d’expliquer aux gens facilement, c’est la cuisine. Qu’est-ce qui se passe quand vous faites de la cuisine ? Grosso modo, vous avez une recette qui arrive. On vous dit : « Prenez 100 grammes de sucre, 20 grammes de beurre, etc., du chocolat », et vous suivez la recette de façon assez basique, et à la fin ça vous fait un gâteau au chocolat. C’est, grosso modo, assez facile.
Et puis quand vous allez au restaurant, en fait vous allez chez un grand maître, et là, il sort une sorte de moelleux au chocolat avec des trucs, des copeaux, etc., vous voyez le truc ? Et vous n’avez absolument aucune idée de comment il l’a fait. Parce que d’abord, il y a les trois quarts des ingrédients, on ne sait pas ce que c’est, et ensuite avec votre four, jamais vous n’arriverez à faire ça.
C’est exactement la même chose pour l’informatique. En fait les programmeurs écrivent du code qui est transformé en instructions élémentaires, mais qui est, finalement, juste une très longue recette de cuisine. Il faut faire ça, c’est juste qu’on vous donne tous les ingrédients, toutes les instructions, on vous donne même les paramètres du four qu’on compile là-haut et en fait, ça marche.
Et donc, pendant très longtemps, des grosses boîtes comme Bill Gates dont on parlait tout à l’heure, vous donnent juste le résultat final, le gâteau, un word.exe. Vous double-cliquez. Ça marche, ou pas, mais en tout cas, vous n’avez jamais accès à la recette.
L’idée du logiciel libre c’est de se dire que tous ensemble on peut améliorer la recette. Par exemple, vous arrivez, votre grand-mère vous a donné une recette de gâteau au chocolat et puis vous dites : « Ah, il n’est pas assez salé quand même, pas assez sucré, je vais rajouter 20 grammes de plus de sel et 30 de sucre. » On s’en fout, c’est complètement débile, mais ce n’est pas grave. Il y a un mec qui va dire : « Tiens essaye », et puis un autre qui va dire : « Ah ce n’est pas mal, mais au lieu de mettre ton four à 222 degrés, mets-le à 212 ». Et en fait, comme ça, chacun va améliorer et transmettre la recette, pour que tout le monde soit capable de faire le meilleur gâteau au chocolat.
C’est super important parce que, finalement, toute votre vie va passer devant des écrans ou derrière des écrans. De toutes façons, je pense qu’il n’y a quasiment plus aucune activité aujourd’hui, que vous faites, à part la pêche, quand vous y allez, et encore, puisque de toutes façons les gars qui ont conçu votre canne à pêche, ils l’ont fait derrière un PC. En fait, l’intégralité de ce qui va se passer est numérisée, tous vos loisirs sont numériques, une bonne partie de votre boulot, finalement, est numérisée. Donc c’est super important de comprendre ce qui se passe. Parce que, malheureusement, un ordinateur c’est complètement débile, mais ça le fait très, très vite. C’est vrai ! Le nombre de fois où tu vois des gens qui s’énervent devant leur PC : « Ah il ne fait pas ce que je dis ! » Non, non, il fait ce que tu dis, ça c’est sûr, par contre, tu le fais mal. C’est super important, parce que la seule façon de savoir, par exemple, qu’il n’y a pas du cyanure dans votre gâteau au chocolat, c’est d’avoir la recette. D’accord ?
Donc l’open source, il y a des mecs absolument géniaux, notamment Richard Stallman, je trolle parce que c’est quand même un mec, un philosophe génial qui a donc ouvert la voie. Je pense juste, personnellement, qu’il est un peu has been, mais ce sont des gens qui ont justement vu. Et vous lirez, je vous conseille de lire, par exemple, Le Droit de lire [3] qu’il a écrit il y a dix ans (NdT, en 1997 donc presque 20 ans). C’est une dystopie et on y arrive, mais en courant.
Qu’est-ce que c’est le logiciel libre ? Là on commence déjà à être un peu plus technique. Donc l’open source, en fait, c’est juste qu’on donne la recette. Mais juste donner la recette, ça ne veut pas dire qu’on vous donne tous les droits associés. Par exemple on peut dire : « Tiens regarde la recette, comme ça tu peux vérifier que tu peux faire bien le gâteau, mais on ne te donne pas, par exemple, le droit de revendre le gâteau ». Le logiciel libre, c’est vraiment une idée de liberté et de capacité d’étudier, de modifier, d’améliorer, de faire vraiment ce que vous voulez avec le logiciel. Et donc c’est aller plus loin, et c’est ce qui est assez important. Mais pour beaucoup de gens, la différence entre open source et logiciel libre est vraiment trop ténue.

Le multimédia

VideoLAN c’est donc un projet qui fait de l’open source et du multimédia. Qu’est-ce que c’est le multimédia ? Une définition ? Quelqu’un ? Non ? Si vous voulez, le multimédia c’est la lecture synchronisée d’un ensemble de flux qui vous permettent de recréer plusieurs sens. Ça veut dire que, potentiellement, vous avez de façon temporelle, du son, de la vidéo, pour vos oreilles, mais aussi, par exemple, on pourrait avoir un truc qui diffuse des odeurs. Ou quand vous avez les Emacs 4K, 4 dimensions, du toucher, des choses comme ça. Et tout ça, c’est synchronisé. Ça peut être beaucoup de choses, notamment si vous voyez des trucs d’artistes, très compliqués. Souvent, quand on parle multimédia, maintenant, on parle vraiment de la partie vidéo, c’est-à-dire on joue une piste de sous-titres, une piste d’audio et une piste vidéo en même temps, comme quand vous allez au cinéma.
Le problème du multimédia c’est que c’est n’importe quoi ! Le multimédia c’est n’importe quoi pour deux raisons. Il y a deux règles, c’est que dans le multimédia, s’il y a une façon de faire un truc complètement idiot, il y a quelqu’un qui va le faire et qui va se plaindre jusqu’à ce que ce soit un standard. Vous regarderez, tous les standards que vous voyez dans le multimédia, c’est tous entre du complet what the fuck à du catastrophique n’importe quoi. Pour plein de raisons, notamment des raisons économiques où, grosso modo, ils n’ont pas réfléchi à ce qu’ils voulaient faire et puis « on a notre encodeur vidéo qui produit ce format-là, ça coûte 100 000 euros de changer mon encodeur ! Eh bien ce n’est pas grave, on va modifier tout le reste ! Après ça va être n’importe quoi, mais ce n’est pas grave, ce n’est pas mon problème, ce n’est pas moi qui les lis, les vidéos. »
Et le deuxième point c’est, dans le multimédia tout le monde pense qu’il sait tout alors qu’en fait, il ne sait pas grand-chose. Le nombre de gars que tu vois : « Ah ouais j’ai trouvé un tuto. Je prends ce format, cet encodeur, je le mets, je vais mettre ça dans ce format, du MP4. Ah c’est de l’AVI, ah ce n’est pas grave parce, etc. ». Il y en partout. Alors ça c’est un peu calmé, quand même, mais dans les années 90/2000, notamment au moment où on a commencé à faire pas mal de piratage et les DivX et les tutoriels, etc., c’était absolument n’importe quoi ! Le résultat, c’est qu’en fait, c’est globalement le bordel.
Donc il y a un syndrome not invented here absolument partout. Il y a 42 façons de faire tout et bien sûr, les meilleures façons ne sont jamais celles qui sont utilisées. Tout ce qu’on appelle les formats vidéos, c’est-à-dire MP4, AVI, OGG, MKV, etc., ils sont tous absolument catastrophiques, voire calamiteux. Là on vient de se taper 10 ans de web avec un format qui s’appelle le FLV, qui est encore moins fonctionnel que l’AVI qui, quand même, date du début des années 80. Il faut quand même le faire ! Les mecs de l’open source adorent un format qui s’appelle OGG, qui est absolument catastrophique, calamiteux et complètement pourri. Pour vous donner une idée, juste pour être capable de connaître les temps de la vidéo dans de l’OGG, ça dépend du codec, donc le conteneur, en fait. C’est donc finalement votre petite boîte qui vous donne, grosso modo, une longue timeline en vous disant « voila toutes les secondes » et qui vous donne les blocs à décoder et à afficher. Dans de l’OGG, par exemple, il faut aller dans le décodeur pour être capable de l’afficher.
Des codecs, dans VLC, il y en a, je ne sais pas, trois, quatre cents, cinq cents peut-être, avec, bien sûr, chacun, notamment le HD 6.4, une douzaine de profils et à peu près six ou sept levels. Voilà. Et puis, bien sûr, il y en a de tout. C’est le bordel mais c’est bien pour nous parce que nous, on est capables de le faire et c’est pour ça que VLC, c’est connu.
Je continue. Il y a encore plein d’exemples de trucs tout pourris et en plus on a les gens du web qui sont géniaux. Qui, bien sûr, n’ont jamais fait de vidéo de leur vie, mais ils savent tout et ils nous ont pondu de trucs géniaux comme le WebVTT, ou le HLS et l’adaptive streaming qui sont, bien sûr, de la merde ! Bon, bref !
Le multimédia, c’est le bordel, mais c’est cool parce que le résultat, c’est ça qui est intéressant. Notamment dans le multimédia, il y a des choses qui sont très mathématiques, donc qui sont finalement très compliquées mathématiquement, avec des transformées de Fourier, des transformées en cosinus discrètes, des onglets. Plein de choses très intéressantes mathématiquement, donc c’est très compliqué et en plus c’est très complexe parce que, comme vous avez vu, il y a 28 milliards de formats, 28 milliards de… Et donc, réussir à faire une solution qui marche à peu près partout, c’est quand même super chaud ! Et là arrive le cône, le VLC.
Souvent ça arrive, j’arrive et je dis : « Bonjour !

  • Qu’est-ce que tu fais dans ta vie ?
  • Moi je bosse sur VLC.
  • Non, non !
  • Si, si, le cône-là, le truc-là sur ton PC qui lit les vidéos.
  • Ouais ! Le cône qui lit les vidéos.
  • Ouais ! »
    Alors évidemment, c’était une idée complètement débile de choisir un cône pour une application, mais en fait c’est génial, parce que personne de sain d’esprit ne prendrait ça et donc, résultat, c’est hyper reconnaissable. Tu vas partout : « Ah oui le cône qui lit les vidéos ». C’est impossible d’en changer, même si tous les mois on a un mec qui nous dit : « Il faut en changer », et bien sûr, on ne le fera pas !
    VLC ça a été connu parce que ça lisait tous les formats et notamment… Ouais, je ne sais pas, il y a des gens qui ont utilisé Kazaa, eMule ? Ouais un peu ? Ouais ? Edonkey ? Ouais voilà. On est en 2003/2004, on a des 56 K ou des ADSL « pourraves ». Télécharger un film de 700 mégas ça te prend à peu près 24 heures. Il y a des gens encore ?
    Public : Ça prend ça encore !
    J. B. Kempf : Je suis désolé ! Bref ! Donc je commence à télécharger mon truc et qu’est-ce qui se passe ? Eh bien en fait, au bout de 50 mégas, tu as quand même envie de savoir si, alors que tu étais en train de télécharger ton Disney, c’est bien ton Disney et pas un gros « boulard » de film adulte, etc. Ou l’inverse : si tu télécharges ton film adulte, tu n’as pas envie de te retrouver avec ton Disney. Et en fait, la raison pour laquelle VLC a été utilisé, c’est que, comme vous avez écouté tout à l’heure et je vous ai dit que VLC était un lecteur network oriented. Les DivX, c’est dans l’AVI, en fait les informations sont à la fin du fichier. Quand tu utilises Windows Media Player ou même la plupart des autres lecteurs, ils arrivent et ils font : « Eh bien je vais à la fin du fichier. Eh bien non tu ne l’as pas téléchargé ». Ils te font :« Eh bien désolé, tu ne peux rien faire. »
    VLC, comme c’est un lecteur réseau, dès le début il te fait :« OK, je n’ai pas toutes les informations, mais je vais voir ce que je peux faire », puisque dans le réseau, les choses elles arrivent le long. En fait VLC, très rapidement, était capable de lire les fichiers avant que tu aies fini de les télécharger et donc c’est quand même globalement pas mal. Évidemment ça marche toujours, même avec BitTorrent ou d’autres choses comme ça. Mais bon, pour certaines personnes c’est un peu plus rapide. Peut-être pas pour d’autres !
    Ça, c’est une des raisons pour lesquelles VLC est devenu très connu. Et la deuxième raison c’est que, comme justement on voulait que ça soit cross-platform, ça a été très vite porté sous Mac OS et sous Windows. En fait, c’est devenu ouvert en 2001, en GPL, et en 2002, ça marchait déjà sous Mac OS et sous Windows, et notamment, c’était finalement la seule façon de lire des DVD sous Mac. C’est pour ça qu’on a eu… Bon ! VLC, ça marche. Comme je l’ai dit juste avant, ça lit tout et ça marche partout ! Mac, Windows, Linux, BeOS.
    Public : Ça ne marche pas sur menu iOS.
    J. B. Kempf : On vient de voir, tout à l’heure, que ça ne marchait pas sur menu iOS. On va travailler là-dessus. Mais par exemple, le port actuel de VLC marche très bien sous OS/2. Donc les cinq gars au monde qui utilisent OS/2 sont très contents. Évidemment, on marche sur toutes les formes de BSD, Solaris et autres trucs comme ça. Dernièrement évidemment, sur Android, iOS, AppleTV. On va en reparler.
    VLC est un logiciel qui est quand même très téléchargé. On parle à peu près d’un million de téléchargements par jour. Deux tiers ça doit être des mises à jour et un tiers ça ne l’est pas. Sur notre site web on a compté plus de deux milliards et demi de téléchargements. Ça, c’est à l’extérieur des distributions Linux ou des telecharger.fr et tous ces gens qui, évidemment, ont le droit puisqu’ils ont le droit de redistribuer VLC. C’est installé sur un Mac sur six et c’est dans le top 15 des logiciels sous Windows, ce qui n’est quand même pas mal pour un projet logiciel qui a été géré par des étudiants pendant très longtemps. Et puis, comme j’aime bien le dire, c’est donc le logiciel français le plus utilisé au monde et le moins rentable !
    Rires. Applaudissements
    VLC lit tous les formats. Comme je le disais tout à l’heure, ça lit les DVD depuis très longtemps, ça lit les Blu-ray, mais pas chiffrés. Je ne sais pas si vous avez suivi dans la presse, je ne me suis pas mal battu avec HADOPI pour ça. Ça a été assez marrant. Évidemment tout ce qui est Network et tous les fichiers, c’est non seulement tous les formats, mais aussi toutes les sources.
    Je vais vous montrer quelques petites versions de VLC dans le passé. Là si vous regardez bien, vous voyez qu’il y a encore écrit « VideoLan Client » et si vous êtes fort, vous voyez que c’est ? C’est quoi le film ?
    Public : C’est un James Bond.
    J. B. Kempf : Ouais, c’est un James Bond et c’est lequel ? Donc ça, c’est GoldenEye et c’est, en fait, le premier DVD qu’on a réussi à lire avec VLC. Là, si vous voyez bien, c’est un Gnome, un Gnome 1 quoi, un truc absolument inutilisable. C’est surtout important parce que c’était le premier DVD qu’on avait sous la main et c’est pour ça que toutes les versions de VLC ont été nommées par des noms de James Bond.
    Là, ce sont les premières versions. Ça, c’est un Gnome 2, non, un truc comme ça, un 2.4, ça ressemble pas mal à ça. Et donc, c’est la première lecture de fichier TS en distant. La première version sous Mac avec un joli look glossy, complètement has been.
    Ça, c’est la version que la plupart des gens ont connue, c’est la 08.4 ou les 08.6, qui est écrite en wxWwidget, une bibliothèque de widgets qu’il ne faut absolument pas utiliser ! Mais voilà ! C’est à ce moment-là, en fait 2004, que les gens ont commencé vraiment à utiliser VLC. Il y a eu un million de téléchargements en 2005. C’est la première version qui a dépassé le million de téléchargements. C’est sûr, aujourd’hui c’est un peu ridicule.
    Public : Inaudible.
    J. B. Kempf : Donc là, c’est la version sous Mac, ça doit être un Mac OS 10.2, 3, un peu plus moderne comme look. Et puis là, c’est la première version sous Qt sous Windows.
    Ça c’est évidemment la meilleure version parce que c’est celle qui joue les poneys. On a évidemment quelques brownies dans l’équipe des développeurs. Ça, ça doit être un Gnome 3 à peu près.
    Ce qui est important c’est que, pendant très longtemps, ça a été géré des étudiants sur leur temps de deuxième année, sur leur temps libre. Et puis, eh bien, le reste ça a été ensuite géré par une communauté de gens qui faisaient ça sur leur temps libre. Les gens ont tendance un peu à oublier quand on voit le nombre de gens qui utilisent VLC.
    Ça c’est M. Sam Hocevar [4] qui est un des papas de VLC. Cette photo elle est bien ridicule. J’aime bien.
    Avant c’était donc à l’École Centrale Paris, géré par l’association du réseau de Centrale Paris. Moi, j’ai commencé à bosser sur VLC en 2005. Et en 2008 j’ai créé l’association VideoLan et j’ai sorti ça de l’École Centrale, pour plein de raisons. Mais évidemment, maintenant, on arrivait à un moment où il y avait plus de développeurs à l’extérieur de l’école qu’à l’intérieur de l’école. Et puis que l’école, grosso modo, nous a un peu mis dehors, ce qui est quand même con, parce que quand je me balade et que je parle de l’École Centrale Paris, ils n’ont aucune idée. Aux États-Unis, ils n’en ont jamais entendu parler quoi ! Alors que quand je parle de VLC ! Clairement ! Donc c’est intéressant parce que c’est comment un projet étudiant devient plus connu que l’école qui l’a fait naître !
    Voilà. Donc l’association, le but c’est de faire du logiciel libre et du multimédia. Et les membres ce sont des développeurs, principalement de VLC.
    Alors comment on bosse ? Grosso modo on se voit deux fois par an. Une fois au FOSDEM [5], en février, à Bruxelles, dans la neige, dans le froid et dans la pluie. Pour ceux qui sont allés au FOSDEM, ils savent que c’est l’habitude. Et puis sinon, les VideoLan Dev Days [6], que maintenant on organise en septembre. On fait venir pas mal de gens de la communauté et grosso modo tous les gens du multimédia, autour de VLC.
    On travaille, on a toujours travaillé sur IRC et par mailing-liste. On est passés à Git. en 2007, donc plus tôt, un peu plus tôt que les gens. Et on utilise absolument uniquement des logiciels libres pour fonctionner et ça, c’est important.
    Voilà une petite photo des gens.
    La Cathédrale et le Bazar [7] c’est clair pour les gens ? Ça vous évoque quelque chose ? Un autre grand monsieur de l’open source et aussi un gros con, qui s’appelle Eric Raymond, a écrit un truc qui s’appelait La Cathédrale et le Bazar. Grosso modo, l’idée c’était que, à gauche, on a vraiment des cathédrales, on arrive, c’est planifié, c’est du Windows, en fait. On arrive, il y a un plan, il y a la gestion de projet. Et puis il y a l’autre partie, qui est donc la partie finalement open source, où on arrive et puis on va bien s’en sortir ! Ouais. Il y a de l’énergie qui va être perdue, mais au moins, elle ne sera pas perdue en réunions et puis on va fonctionner comme ça. Et puis, au milieu, il y a plein de gens. Par exemple Mozilla, ils font du Libre, mais grosso modo ils ne sont pas vraiment dans le bazar. C’est-à-dire que ça marche comme une grosse boite quoi ! C’est une boite qui a 500 millions d’euros de chiffre d’affaires. Ils arrivent, ils ont du marketing qui décide et ils font comme ça. C’est sûr, c’est bien parce que ce qu’ils produisent c’est bien sûr du logiciel libre, mais ce n’est pas la même la chose que nous ce qu’on fait, c’est-à-dire, grosso modo, il n’y a pas de direction et en fait ce sont des développeurs qui arrivent.
    C’est important, parce que ça veut en dire que sur VLC, ce sont toujours les devs qui ont le pouvoir. C’est-à-dire tu codes ou tu fais quelque chose pour l’association, tu as ton mot à dire. Et notamment, c’est une des raisons pour lesquelles on voit absolument des trucs complètement débiles dans VLC. Je ne sais pas si vous avez déjà essayé la fonction puzzle de VLC. Vous irez regarder dans les options, il y a donc une petite façon de lancer votre vidéo, et puis ça se met comme un puzzle. Donc la vidéo est cassée. Ensuite vous cliquez et vous drag and droppez pour refabriquer votre vidéo. C’est absolument génial quand vous regardez des films français sur un trio amoureux géré par je ne sais pas qui, des trucs trop chiants. Très, très bien ! Complètement inutile ! C’est absolument inutile, mais ce n’est pas grave !
    Dans la dernière version de VLC on a rajouté un filtre VHS pour les gens qui sont un peu nostalgiques, et donc, de façon aléatoire, il y a des artefacts qui apparaissent.
    Public : C’était ça qu’on a regardé tout à l’heure !
    J. B. Kempf : Voilà, exactement. Il y a une photo juste après, ne t’inquiète pas. Pourquoi ? En fait la réponse, on ne fait pas les choses parce que les gens ont besoin. On fait les choses parce que, un, ça nous amuse et deux, parce que c’est maintenable. Et ça, c’est super important ! C’est que VLC, malgré tout, c’est un logiciel qui a une qualité de code très élevée, alors qu’on fait des choses quand même assez chaudes, c’est-à-dire on fait du C, de l’assembleur. Les mecs, quand on parle de C++, on parle déjà de haut niveau. C’est sûr que quand tu codes en Python, les mecs ! Mais, en même temps, tu as 25 millisecondes pour afficher un truc. Tu as 25 millisecondes, pas une de plus ! Un décalage de 3 millisecondes entre l’audio et la vidéo, vous allez le voir. Donc on n’a pas le choix. Je ne vais pas avoir un langage avec un garbage collector qui va décider de poser tout pendant 120 millisecondes. Donc ça, c’est quand même très important.
    Le code, il est mergé. Bien sûr, tu vas me dire que tu vas rester toute la vie à aider à voir ton code ! J’en ai vu à peu près 700, parce qu’il y a 700 personnes qui ont contribué sur VLC. Les gens, au bout de 6 mois, ils partent. Ils ont changé de boulot, ils ont changé d’endroit, ils ont trouvé une femme, ils ont whatever, ils ont des vies et ils s’arrêtent. Donc l’important, le critère d’acceptation du code pour savoir si je vais le faire rentrer dans VLC c’est « est-ce que je vais pouvoir le maintenir ? Est-ce que ton code, je vais pouvoir le maintenir ? » Et donc, si tu fais un filtre qui ne sert complètement à rien, je n’ai pas vraiment de raison de t’empêcher de le faire. C’est un truc qui est très facile à maintenir et donc ça va fonctionner.
    Voilà. Bon, pour les fans de Git, nous on ne fait que du rebase, on ne fait absolument pas de merge. Ça permet d’avoir un historique assez clean, C’est assez important quand dans un projet comme VLC. oon a plusieurs centaines de commits par semaine, c’est quand même assez intéressant.
    Pourquoi est-ce que VLC est devenu assez populaire ? Les gens qui étaient sous Linux, un petit peu avant, pendant très longtemps ils ont utilisé MPlayer et finalement, pourquoi est-ce que c’est VLC, qui est arrivé finalement plus tard, qui est connu ? Plusieurs raisons. La première raison, en fait, c’est que ce sont des modules. Dans VLC, le corps ne fait absolument rien et tout est fait dans les modules. Vous me dites : « Je ne vois pas trop, là, l’intérêt ». L’intérêt c’est que, quand vous voulez faire un logiciel qui soit cross platform, vous avez deux solutions. Soit vous faites un système de modules, où vous prenez le meilleur de chacune des plates-formes. Sous Linux vous allez sortir en Xvidéo, sous Mac vous allez sortir en OpenGL, sous Windows vous allez sortir en Direct3D pour afficher l’écran. Soit vous dites : « Je vais utiliser la technologie la plus commune et je vais essayer que ça fonctionne ». Ça c’est très joli sur le papier. Dans la vraie vie, pour les gens qui ont fait un peu de jeux vidéos, ils ont essayé d’installer Open GL sous Windows XP et ils en sont revenus. C’est absolument impossible ! Évidemment, quand on fait des trucs de précision comme de la vidéo, souvent ça merde quoi !
    La deuxième raison c’est, qu’en fait, on fait un truc qu’on appelle du C+ - (C plus moins) ou C— (C moins moins), c’est-à-dire qu’on fait, en fait, une sorte d’objet en C, en abusant des pointeurs de fonctions et des structures de structures de pointeurs de fonctions. Et c’est finalement assez élégant parce que ça marche assez bien. Ça permet de ne rien mettre dans le corps et de gérer tout dans des modules. Et vos modules sont chargés au runtime et ils réécrivent les pointeurs sur les fonctions, et ça marche pas mal.
    Et le dernier c’est le network oriented pour regarder vos films adultes comme je vous l’ai expliqué tout à l’heure.
    VLC, en fait, on a un corps qui assez petit, c’est cent mille lignes de code, ce n’est pas ouf. Et le corps sert juste à faire l’abstraction entre plates-formes, à gérer des modules, à gérer le réseau, grosso modo, et puis c’est tout. Ensuite, tout est fait dans des modules, et l’interface est un module. Donc vraiment, dans VLC, on peut rajouter et faire un peu ce qu’on veut et ça c’est une des forces de VLC.
    Voilà. C’est ce que je vous racontais. Maintenant il y a un truc qui s’appelle LibVLC pour faire votre propre application, pour prendre le moteur de VLC, pour ne pas avoir à tout recoder, et c’est ce qu’on utilise.
    Je vous disais de l’objet C. Par exemple, pour une sortie audio, on n’a quasiment que des pointeurs sur fonctions et, même les call back, ce sont des structures de pointeurs sur fonctions. Ouais, ça fait un peu peur, mais après c’est assez simple. Et puis on a pour tous les objets VLC ce qu’on appelle les VLC common members, et ça permet de faire une sorte d’introspection assez rapide et que ça marche bien, et ça évite d’avoir à déployer des grosses machineries. Alors c’est sûr, coder maintenant en C++ c’est plus facile. Au début des années 2000, les « compilos » C++, ce n’était quand même pas ça, surtout sur toutes les plates-formes.
    La dernière slide technique pour vous montrer comment ça marche… Grosso modo… Quand vous lisez une vidéo, le protocole, c’est http, file, DVD… Donc c’est, grosso modo, l’explication de où aller récupérer les données. D’accord ? Genre vous avez une URL http://fichier.avi. C’est récupéré et là, vous avez donc le format. Donc ça c’est AVI, MKV, donc c’est la boite et dans la boite, vous allez en extraire plusieurs pistes : une piste de sous-titres, une piste vidéo, une piste audio, des métadonnées, et puis les sous-titres. Vous allez rendre ça. Les vidéos, vous allez les filtrer et puis les sortir. Et puis ici c’est votre œil et là c’est votre oreille. Et potentiellement vous pouvez ré-encoder et renvoyer sur le réseau.
    Est-ce qu’il y a quelqu’un qui voit un truc bizarre sur ce schéma ? La synchronisation ouais, c’est le corps qui fait ça entre tous. À ce niveau-là. C’est juste pour vous montrer. Donc c’est plutôt, qu’est-ce ça veut dire ça ? Pourquoi cette flèche va dans ce sens-là ? C’est quand même bizarre non ? En fait VLC, quand vous allez sur YouTube, vous allez voir, alors pas pour tout le monde désolé, mais grosso modo ça arrive, ça télécharge tout, tout, tout ce que ça peut. Résultat, eh bien ils ont des algorithmes au niveau des serveurs pour ne pas t’envoyer trop de données. En fait, ils ne savent pas du tout quelle est la consommation de données. Si jamais tu arrives, ça se lance et finalement tu quittes ta page 10 secondes après, eh bien tu as téléchargé 50 mégaoctets de vidéo pour rien.
    Dans VLC, c’est l’inverse en fait. C’est le format qui sait où il en est avec la synchronisation et qui dit : « Attention j’arrive à une seconde de la fin de mon buffer. » En fait c’est un buffer constant en temps où on dit : « Donne-moi un peu plus de données, donne-moi un peu plus de données, donne-moi un peu plus de données. » Ça veut dire que c’est très économe au niveau réseau puisque ça ne demande que ce dont on a besoin. Mais résultat, c’est un peu plus compliqué.
    Ça c’est un peu trop technique, on s’en fout !
    On a changé la licence du moteur de VLC qui est passé de GPL à LGPL pour que des gens puissent l’utiliser dans d’autres applications qui ne sont pas forcément avec des licences compatibles avec la GPL.
    Je vais vous montrer des trucs complètement inutiles avec VLC.
    Vous voyez VNC, RealVNC et rdesktop. Ouais ? Eh bien VLC est capable d’être client rdesktop et VNC. En fait, vous pouvez lancer votre VLC pour aller faire durer le mode desktop sur des machines très loin. Ça marche même avec la souris. Complètement inutile ! Génial ! Il y a des façons dans la playlist à vous avoir de l’intégration de contenus, de podcasts et de choses comme ça, que vous pouvez naviguer. Vous pouvez évidemment faire du Screengrab. C’est super cool le Screengrab, mais en général c’est assez lent, sauf quand on a des solutions vraiment spécifiques. Mais par contre, ça permet de faire une mise en abyme absolument inutile et complètement géniale. Tous les trois mois, sur Reddit il y a tout, des e-learns, « je peux faire une mise en abyme géniale ». Voilà. Complètement inutile ! Génial !
    On peut faire des mosaïques. Comme je l’ai dit tout à l’heure, VLC ça permet de faire plus que juste lire de la vidéo, et donc en fait là c’était la mosaïque que vous aviez chez Free il y a quelques années, et on peut lire plein d’entrées. VLC va faire le mixing de toutes les entrées et les afficher voire les ré-encoder. Et pendant très longtemps les gens qui étaient chez Free voyaient ça et c’était VLC de l’autre côté.
    Aussi ça nous permet de faire du pitch on picture ou du wall. Donc le wall, l’intérêt c’est que vous pouvez splitter la vidéo sur plein… et vous faire des murs complets d’écrans. Vous prenez vos écrans LCD, vous enlevez les bezels, vous accrochez tout ça, ça paraît un truc super beau et ça ne vous coûte absolument rien. Et en plus, on peut faire ça à travers le réseau avec une synchronisation qui s’appelle NetSync, où en fait on envoie les times stampscomme ça, ça vous permet de ne pas acheter un truc qui coûte une fortune.
    Évidemment on sait lire du karaoké et du MIDI, parce que ! Évidemment il y a une interface en ligne de commande qui est en NCurse avec, évidemment l’écran lui ne l’est pas, mais si vraiment vous voulez on a évidemment la sortie en ASCii.art !
    Rires
    Alors quand même, on ne déconne pas, c’est de l’ASCii.art, ce n’est pas de l’Unicode. Donc le mec c’est Sam Hocevar, celui dont a parlé tout à l’heure, qui est un des seuls génies qu’on ait en France, et ça marche, et donc c’est du 256 couleurs. Pas plus. Vraiment incroyable !
    On a évidemment une interface web et bien sûr plein d’autres trucs dans VLC qu’évidemment vous ne connaissez pas et probablement moi non plus.
    Qui a un Android dans la salle ? OK ? Qui a une téléphone autre que Android dans la salle ? Ah ? iPhone ? Non ! Windows Phone ? Waouh ? OK. Autre chose que ? Non ça, il ne compte pas ça. Tu as quoi toi ?
    Public : Inaudible
    J. B. Kempf : Alors on a porté VLC sur Tizen [8] mais Bada [9] !… Faudrait pas déconner quand même ! Voilà on a porté VLC sur Android. Ce qui est important c’est qu’on continue à avoir une version qui marche depuis Android 2.1, alors que tout le monde est en train de droper le support pour 4.0. Évidemment, tout est open source et contrairement à la version desktop, on a vraiment une base de données multimédia pour faire de l’audio et de la vidéo. Voilà.
    Bon, historique… Donc ça c’était la première version ; ce n’est pas très joli. Pendant très longtemps on avait cette espèce de warning qui vous disait : « Attention ça va tuer votre chat, détruire votre maison et démarrer l’apocalypse mania ». On a dû enlevé ce warning parce que les gens étaient vraiment flippés. C’est-à-dire qu’on a eu vraiment des gens qui nous ont envoyé des mails en disant : « Mais je n’ai pas envie que ça brûle chez moi ». OK. Donc moralité : il est impossible de faire de l’humour avec un million de personnes en même temps. On ne peut pas faire mille fois mille personnes et de l’humour… Après ça a pas mal évolué jusqu’au moment où est passé au mode Holo, c’était la version Holo et quand on a fini d’être Holo, eh bien Google a décidé qu’il ne fallait plus faire du Modern UI, donc évidemment c’était trop tard.
    Ça c’est la version que les gens ont actuellement. Pour la version 3.0, on a une version qui marche sur Android télé, une version qui est un peu plus moderne, qui a été portée sur ChromeOS, un truc qui n’est pas très utile en France. On a évidemment une version sur iOS qui existe depuis quelques années sur iOS 6 et sur les iPads et, évidemment, une extension sur les watches. Alors on ne peut pas regarder son film depuis sa montre. On y bosse, ça va arriver bientôt. Mais c’est quand même pas mal pratique pour faire du contrôle.
    Ça c’est la version sur l’AppleTV qui est sortie, et pour les gens qui sont sur Windows Phone voici la version WinRT qui fait en C-Sharp Unìversal Platform, qui va permettre de porter VLC sur la Xbox One rapidement. Donc en juillet vous pourriez avoir VLC pour regarder vos films que vous achetez légalement, évidemment, sur votre Xbox.
    Comme je le disais on n’a pas vraiment de version sous Bada, mais on a une version sous Tizen, qui marche à peu près comme la version sous Android.
    Ce qui est important c’est qu’il faut que vous nous aidiez, parce que c’est facile de contribuer. La façon la plus simple de contribuer, en fait, c’est d’utiliser VLC et d’en parler à vos amis, leur installer sur leurs ordinateurs et enlever les autres merdes qu’ils ont. Mais surtout faire de la pub.
    Ensuite, coder, en fait. Rapporter des bugs, des traductions, mais surtout coder. Ça a été quand même commencé par des gamins. C’est un projet qui a été commencé par des gamins qui avaient votre âge, pour la plupart, 20 ans, 21 ans, qui étaient en école d’ingénieur, qui n’étaient pas plus intelligents que vous, qui étaient juste plus bornés et qui y croyaient. On peut vraiment faire des trucs incroyables et on n’a pas besoin d’être à Paris ou dans une grande école pour le faire. C’est comme ça que ça marche le logiciel libre et ça, c’est quand même top !
    Qu’est-ce qu’on va faire ? Voilà. La prochaine version c’est la version 3. On a déjà fait plus de 6300 comits, plus quelques milliers sur les versions portables. L’idée c’est de réussir à faire une version sur toutes les plate-formes en même temps. Pourquoi ? Parce qu’en fait, si vous regardez bien, maintenant on a un peu une bataille entre Google, Apple et Microsoft. Et la question c’est « est-ce qu’on peut se trouver à chaque fois sur leur desktop, sur leur mobile et sur leur télé avec une bonne version de VLC ? » Eh bien on en train de le faire, c’est en train d’y arriver. Évidemment tout le monde se moque de moi quand je vais réussir une version 3.0 en une seule fois. Ça veut dire, quand même, qu’il faut faire deux versions pour Windows (32, 64 bits), une version sous Mac, un nombre important pour des distributions Linux, une dizaine de versions sur Android, puisqu’il y a évidemment une dizaine d’architectures sur Android, une version sous ChromeOS. Apple iOS 32 bits, 64 bits et Arm 64, AppleTV, évidemment Android TV, Windows Phone, Windows Phone 10, c’est Windows mobile 10 et la version Windows RT, plus la version Xbox One, en même temps, avec des gens qui sont bénévoles. Bon. OK. On y croit.
    Pas mal de travail a été fait sur le browsing de vos NAS [10], directement depuis de VLC, pour tous les films que vous avez légalement téléchargés et mis sur votre NAS et pas du tout que votre Freebox a téléchargé en Torrent directement. Ce n’est pas du tout le genre !
    Vous ça ne vous intéresse pas, mais on a un nouveau moteur de sous-titres qui a été développé par un Syrien, qui est à Alep, donc une histoire complètement délirante. Je vous conseille de regarder la vidéo [11] où je raconte ça au FOSDEM cette année, et qui nous a permis, en fait, d’afficher les sous-titres en malayalam qui est donc une langue indienne, correctement. Voilà.
    C’est tout pour ce soir. Et maintenant je prends vos questions.
    Applaudissements
    Allez-y. Questions. Il n’y a pas de questions auxquelles je ne réponds pas. Enfin presque ! Allez-y.
    Public :
    Inaudible.
    J. B. Kempf :
    Je réponds à ça après le micro. OK. D’autres questions ?
    Public :
    Inaudible.
    J. B. Kempf :
    Ouais. Notamment tu as un filtre gradient de Cel-shading. Tu as l’impression, en fait, d’avoir une sorte de dessin animé sur tous les films. Allez-y. Je ne mange pas.
    Public :
    Les modes de financement ?
    J. B. Kempf :
    L’association VideoLan est financée par des dons. Ouais. On a pas mal de dons, mais en même temps c’est ridicule. Un ingénieur français coûte 100 000 euros à l’année. On n’a pas 100 000 euros de dons par an. L’argent sert jute à acheter le serveur et à faire des conférences.
    Public :
    Quelle est la motivation maintenant, vu que ça fonctionne bien sur beaucoup de plates-formes ?
    J. B. Kempf :
    En fait ça ne fonctionne jamais bien ! Ça c’est l’envers du décor. Mais surtout ça fonctionne bien parce que c’est mis à jour en permanence. Il y a toujours des nouveaux formats vidéos. Il y a toujours des nouvelles versions de Windows, Mac OS, Linux, un système V qui arrive à gauche, qui casse tous tes trucs, etc. En fait, la maintenance est quand même assez importante. Et deuxièmement, tout ce qui est téléphones portables, iPads, tablettes et les télés connectées font qu’il y a beaucoup de chemin et il y a beaucoup de choses à faire sur ces plates-formes, donc il y a quand même beaucoup de boulot. Allez d’autres questions.
    Public :
    Pourquoi sur Android ça a été aussi long ?
    J. B. Kempf :
    En fait parce qu’Android c’est de la merde !
    Public :
    C’est à cause de VLC ! C’est VLC qui n’est pas standard !
    J. B. Kempf :
    Ouais, bien sûr, parce qu’en fait, ça c’est un peu l’envers de la médaille. Quand on commence à faire des choses un peu techniques comme VLC, on se rend compte que des gens incompétents il y en partout, même s’ils sont chez Google et même s’ils sont payés 300 0000 dollars par an et qu’ils sont capables de calculer le meilleur moyen pour faire marcher un gars sur neuf ponts à cloche-pattes et être capables de faire un sorting de un téra de données sur un mégabit de RAM. Les trucs dont on s’en tape parce que, de toutes façons, la plupart des gens ce sont des ingénieurs et il faut prendre des solutions. La première version sur Android, elle était en 2012, et pendant très longtemps elle a été bêta parce que c’était quand même particulièrement buggé. Il y avait deux façons de faire. Soit, première façon, qui est on ne fait que un player pour Android, donc ça va être assez facile. Soit on porte un truc correctement open source, en avançant correctement et en ayant le même core qui marche partout. Nous, on fait les choses bien, donc ça a pris du temps. Mais évidemment, la LibC d’Android, ce n’est même pas descriptible tellement elle est mauvaise. C’est-à-dire que même la MSVCRT 4 qu’il y avait sous Windows 95 était moins « pourrave ». Il faut le faire quand même ! Non, non, il faut le faire. Ouais ?
    Public :
    Vous avez de la concurrence ?
    J. B. Kempf :
    Il n’y a pas de concurrence ! Non. Non, je rigole, mais en vrai non. En fait, sur chaque plate-forme tu as un concurrent quoi ! Sur Android, tu as un truc qui s’appelle MX Player, qui est le truc qui est le plus connu, mais ils ne font que ça. Et puis là, la version qu’on sort maintenant, elle est plus rapide, d’ailleurs, dans la plupart des cas que eux et voilà. Sous Windows tu as encore des puristes qui utilisent MPCHT avec des filtres directshow et qui passent des heures et des heures à paramétrer leur machin. Mais le problème c’est que ça ne marche plus sous Windows 10, tu vois. Voilà. Mais il n’y a pas vraiment de concurrence cross platform. Allez d’autres questions…
    Public :
    Est-ce que vous allez simplifier le menu de synchronisation des pistes ? Pour régler plus ou moins par rapport à la vitesse des pistes. Parce qu’on ne sait jamais, si on affiche un moins ou un plus, si ça va la décaler… C’est confirmé.
    J. B. Kempf :
    C’est tout le problème en fait. Comment tu expliques à quelqu’un si le plus c’est une augmentation du délai ou une augmentation… ? Et surtout est-ce que ta piste principale, c’est la vidéo ou l’audio ? Alors je ne sais pas. Je pense qu’on a fait un peu mieux. Notamment maintenant, il y a une fonction où tu marques le son et ensuite tu marques la vidéo et ça se cale automatiquement. Voilà. D’autres questions ?
    Public :
    Pourquoi c’est facile d’utiliser VLC en tant qu’utilisateur, mais quand on veut l’intégrer dans un logiciel, c’est hyper complexe ?
    J. B. Kempf :
    Non, ce n’est pas hyper complexe.
    Public :
    Ce n’est pas hyper complexe ? C’est une usine à gaz !
    J. B. Kempf :
    À intégrer dans un logiciel ?
    Public :
    Ouais. Au niveau de la librairie.
    J. B. Kempf :
    Évidemment. Attends, ce n’est pas mon PC, donc trente secondes.
    Public :
    Pas la peine !
    J. B. Kempf :
    Non, non. Ne t’inquiète pas, ne pars pas ! Tou dou dou ! Je ne l’ai pas dans cette présentation-là. Ah si ! Évidemment ! Alors c’est hyper simple pour créer une utilisation de libVLC. Tu fais lib VLC new’’, tu crées ton VLC. Tu fais ’’lib VLC media new from location’’ grosso modo. Tu crées ton média player et tu fais ’’play. Strictement, en moins de cent lignes, tu as ton lecteur multimédia. Ça marche sur toutes les plates-formes, c’est de la même façon. Vraiment c’est hyper simple. C’est beaucoup plus simple que tous les autres frameworks que tu peux avoir en vidéo. Et ça marche sur toutes les plates-formes. Et on a plein d’exemples en WX, en GTK, en Qt, sur Android, en Java, on a la même chose sur iOS. Donc non, non, il y a vraiment de quoi faire tout, et puis surtout, ça utilise libVLC qui est déjà utilisé par VLC. Donc il n’y a pas de raison que vous ne puissiez pas faire la même chose que ce qu’on fait avec VLC.
    Public :
    Moi ce que je voulais faire, c’est que là on arrive à bien se débrouiller et à faire un play dans le sens en avant, mais dès qu’on veut faire image par image en reculant, alors là !
    J. B. Kempf :
    En fait c’est juste que VLC n’est pas fait… Ce n’est pas un moteur de montage vidéo.
    Public :
    Ça ne vient pas du codec ? En fait dans l’autre sens ce n’est pas évident.
    J. B. Kempf :
    Non. En fait il faut utiliser desframeworksde montage comme MLT.
    Public :
    MLC, voilà.
    J. B. Kempf :
    Mais ce n’est pas pour faire un player. OK. D’autres questions ?
    Public :
    Si j’ai des fichiers conservés sur mon serveur distant, comment je peux faire pour les lire avec VLC sur mon réseau local ?
    J. B. Kempf :
    Tu donnes l’URL en http. Voilà.
    Public :
    Pas d’installation de serveur spécial. Avant il y avait VideoLan Server ?
    J. B. Kempf :
    Non, non. Mais c’est quoi ton serveur distant ?
    Public :
    Ben, un linux, un Debian par exemple…
    J. B. Kempf :
    Avec un webdav par exemple ? En plus dans la version 3.0, c’est un des gros boulots, c’est qu’en fait maintenant on est capables de browser directement depuis VLC des FTP, SFTP, FTPS, NFS. Si tu veux le faire à la old way, du http, du webdav, du samba. Et donc tu mets ton URL et ça permet de browser et tu as quasiment un explorateur de fichiers dedans. D’autres trucs sur lesquels on bosse, tu peux faire aussi ça, en fait on est en train de bosser sur le support du Torrent. Alors évidemment, ceux qui n’ont pas beaucoup de bande passante, ça va être un peu dur. Désolé ! Mais en fait on va avoir une intégration où tu droperas juste ton Torrent et ça partira et ça te mettra à le steamer directement ton Torrent. Ouais. Bon. Il faut avoir du réseau !
    Public :
    Si le fichier est en X265 par exemple, on a besoin d’avoir moins de réseau j’imagine !
    J. B. Kempf :
    Ouais. Mais plus de CPU. En fait le streaming ça ne veut rien dire. Ça veut juste dire récupérer des données sur un réseau. Les gens s’imaginent que c’est très compliqué. Allez, dernière question et après je me barre. D’autres questions ? Rien ? Questions personnelles ? Non ? Qu’est-ce que je fais ?
    Public :
    Inaudible.
    J. B. Kempf :
    Oui. Bien !
    Public :
    Toi tu comptes nous faire virer…
    J. B. Kempf :
    En fait nos serveurs étaient à l’école et prenaient beaucoup de bande passante. On s’est fait hoster par Free, par la fondation Free. Mais l’école est complètement con. C’est qu’à partir du moment où le cœur, c’est-à-dire le truc, tu faisais les release, tu t’occupais de ton serveur FTP parce que c’était le truc important, en fait part de ton école et tes étudiants, eh bien les étudiants se sentent beaucoup moins proches et donc évidemment ça a juste accéléré les départs. Ouais ?
    Public :
    Pourquoi un cône de chantier comme logo ?
    J. B. Kempf :
    Je réponds après.
    Public :
    À part VLC, sur quoi tu bosses ?
    J. B. Kempf :
    Maintenant moi j’ai monté ma start-up autour de la vidéo et de VLC.
    Public :
    Inaudible.
    J. B. Kempf :
    Ce genre de choses. Ouais. Réparation de bugs, etc. Ouais.
    Public :
    Quel est le système d’exploitation actuel de ton mobile ?
    J. B. Kempf :
    Android ! En fait tous les trois mois je change de plate-forme, à peu près. Parce que de toutes façons il faut tester. Donc tu me verras sous Mac, tu me verras sous Linux, tu me verras sur Windows. Je suis un expert Windows. C’est horrible à dire, mais finalement avec VLC, je suis maintenant un expert Windows. J’en connais beaucoup plus sur les internals Windows que pas mal de gens. Je suis vraiment ouvert sur toutes les plates-formes. J’ai codé sur quasiment toutes les plates-formes, à part menu OS, je n’ai pas encore fait ça. En fait Android, tu peux très bien avoir Android et dire « j’utilise Android pour des raisons », mais tu peux quand même accepter que c’est de la merde techniquement. Les dernières versions, c’est quand même beaucoup mieux. Pareil. Tu es sur Android, tu as un téléphone qui fait quand même un multi quad-core ou un Galaxy S6 avec 8 cores, sauf que le moindre touch que tu fais, il met quand même plus de 300 millisecondes à être processé. C’est chaud quoi ! Ouais non. Ils ont pris des décisions techniques qui sont des décisions qui ne sont pas techniquement justes, mais pour des raisons de business. Ça ne veut pas dire qu’ils ont tort, mais ça ne veut pas dire que c’est bien. Et même ton système de mise à jour sous Android, on n’est même pas dans le mode calamiteux. Calamiteux ça ne commence même pas à décrire tellement catastrophique que c’est. C’est bon ?
    Public :
    Apportez-vous votre contribution à la réalisation de standards vidéo ?
    J. B. Kempf :
    Alors je ne fais plus jamais de comités de standard. Qu’ils aillent se faire foutre ! Ça ne m’intéresse pas. Les mecs, ils sont tous là, ils ont tous leur agenda. Ils ont tous envie de faire des trucs pour leurs raisons, pour des questions de pognon, etc. « Ah oui, mais j’en ai besoin parce que je veux, j’ai mon encodeur ». Ouais, mais ton encodeur il est pourri, ce n’est pas de ma faute quoi ? Tout le monde tire son bout de gras et c’est question de pognon. Ça ne s’intéresse pas. Moi je préfère de la techno qui marche.
    Public :
    VLC ne pourrait t-il pas proposer un standard de format vidéo idéal ?
    J. B. Kempf :
    Non. Déjà, il faut avoir envie. En fait c’est très compliqué parce qu’il n’y a pas de bons standards. On est dans le cas où il n’y a pas de bons standards.
    Public :
    C’est quoi le moins pire ?
    J. B. Kempf :
    Le moins pire ça va être du MKV, HT-64 ou du VP9. Et je pense qu’on va s’arrêter là-dessus.

    Applaudissements
    [footnotes /]