Ange P2PFR.com
Popcorn Time, une application de streaming par bittorrent
Europe/Paris Créée le 15 mars 2014 à 21h42
Par 111110101011
Consultée 39453 fois

Une fois de plus un article rédigé en même temps que je mène l'enquête sur ce logiciel opensource, qui à l'heure d'aujourd'hui a déjà cessé son développement (du moins officiellement), semble t-il par faute d'avoir trop attiré l'attention.

Le nom de cette application est Popcorn Time (ou Popcorn App). Son objectif est de rendre l'usage de bittorrent encore plus simple, en présentant le contenu avec une interface qui ressemble à celle du service de streaming payant américain «netflix». A contrario, Popcorn App est bien entendu gratuite, et sa conception technique est aussi bien différente. Techniquement, le logiciel utilise plusieurs APIs, ainsi que le module «peerflix» de nodejs.
Les torrents listés dans Popcorn App émanent du site Yify-torrents, quant aux métadonnées et sous-titres, ils proviennent de OpenSubtitles et TheMovieDB.

Je ne l'ai pas essayée mais paraît-il que l'application en question est assez réussie.

Quelques liens en vrac:
* Présentation de Popcorn App (eng): http://torrentfreak.com/open-source-tor ... tes-140308
* Popcorn App retiré de l'hébergeur Mega (de Kim Dotcom), et on sait pas pourquoi (eng): http://torrentfreak.com/popcorn-time-de ... ng-140312/
* Ancien dépot Github: https://github.com/popcorn-time/popcorn-app
* Ancien site officiel: http://getpopcornti.me
* Un article de la presse francophone: http://www.numerama.com/magazine/28767- ... rrive.html
* Un article de la presse francophone: http://korben.info/popcorn-time.html

Difficile de croire que l'aventure est déjà finie. Le but du jeu maintenant est de trouver «qui a repris le code source», et il semblerait que ce soit par ici que ça se passe:
* Nouveau dépot Github: https://github.com/isra17/popcorn-app

En bons pratiquants de l'esbroufe, la mission de l'équipe de Popcorn App consiste à s'auto-dissoudre, et à réfléchir à une manière de distribuer ce logiciel de façon décentralisée et qui n'engage la responsabilité d'aucun tiers.
Cela explique que vous aurez quelques difficultés à vous procurer une version avec les tous derniers développements pour le moment (à moins de la compiler vous-même en suivant les instructions laissées dans leur dépot Github)
Sinon, un fichier d'une "ancienne" version est hébergé chez 01net, mais comme on aimerait vous épargner d'installer un adware avec on ne laissera pas le lien.
Et un autre fichier est hébergé chez Mega, mais seulement accessible si vous possédez un compte: https://mega.co.nz/#!cB4FxL6a!uZWeXJ--1 ... qnj05zCip4

Donc en attendant qu'une vraie solution soit trouvée, gardez la référence dans un coin ou bien revenez nous voir car il est fort probable qu'on publie où le trouver dès que l'info aura tourné.

Les choses vont assez vites, car à peine mes flux RSS rafraichis, TorrentFreak publie que Yify Torrents (qui s'appelle désormais YTS) s'est intéressé au logiciel et a décidé d'en reprendre le flambeau.
Le dépot Github est par ici: https://github.com/Yify/popcorn-app
Toutefois il semblerait que ce dépot soit moins entretenu que celui que j'ai donné plus haut.

Vous l'aurez compris, le temps amènera les réponses...

Edité le 16 mars 2014:
En cadeau, la saga Popcorn Time racontée par Framablog:
* http://www.framablog.org/index.php/post ... bittorrent
* http://www.framablog.org/index.php/post ... -deja-fini
* http://www.framablog.org/index.php/post ... t-pas-mort

Aussi, d'après https://github.com/isra17/popcorn-app tout fraîchement mis à jour, l'équipe saute dans le bateau de YIFY-torrents / YTS. Donc le bon dépot est désormais celui de YTS, soit celui-ci: https://github.com/Yify/popcorn-app

Je suis en train de regarder pour si on peut compiler ça sous Debian, il semblerait que «Grunt» soit indispo...

Edité le 22 mars 2014:
... ce qui n'est pas très grave, car node.js dispose de son propre "gestionnaire d'installation", npm.
On peut donc balancer un (en étant root):

Code :
aptitude install npm

Code :
npm install -g grunt-cli

J'avais déjà un environnement Ruby sur ma machine il semblerait, donc:
Code :
gem install compass


Récupérer popcorntime-app: https://github.com/popcorn-team/popcorn ... master.zip
Le décompresser.
Dans le répertoire décompressé, lancer npm install.

Par contre après je bloque. grunt n'est pas accessible via $PATH, et:
Code :
$ /usr/local/lib/node_modules/grunt-cli/bin/grunt
/usr/bin/env: node: Aucun fichier ou dossier de ce type


Edité le 8 avril 2014:
La question de "qui prend la relève" est encore en suspens parmi les forks, patience...
http://torrentfreak.com/popcorn-time-ri ... rt-140406/

5 commentaires
Le 25-03-2014 à 05:37:13
Par GamObs

Donc si j'ai bien compris le développement de l'application est désormais faites par les devs de YIFI ou bien ils ont juste assumer la reprise du dépôt ?

Le 25-03-2014 à 09:51:53
Par 111110101011

Ils ont juste assumé la reprise du dépot, mais rien ne les empêche de filer un coup de main pour la programmation, et ils vont sûrement proposer leurs modifs.

Le modèle de développement de Git (souvent utilisé dans l'opensource) c'est: chacun (donc n'importe qui) travaille dans son coin sur une copie du code ; on décide d'un dépot qui sert de référence, et on lui envoie nos modifications (via des «pull requests») qui sont validées par une ou plusieurs personnes qui gèrent le dépot de référence.
Mais ça fait que le dépot de référence peut changer (par expl: si la personne qui valide les Pull requests gère mal ou ne veut plus gérer l'affaire), et c'est ce qui s'est passé ici, ce qu'on appelle aussi un «fork».

Le 03-05-2014 à 13:25:07
Par 111110101011

Je rattrape un peu mes lectures de fils RSS.

Info n°1:

20 avril - TorrentFreak s'inquiète du mutisme des développeurs de Popcorn Time, qui d'un jour à l'autre tombent de l'enthousiasme vers le silence.
Les dépots Github sont eux-mêmes délaissés.

A creuser.

---

Info n°2:

Un logiciel similaire à Popcorn Time est apparu, il s'appelle Zona. Voir l'article qui en parle sur TorrentFreak (26 avril).
Il ne s'agit pas d'un logiciel libre - gros point négatif.
Il semble un peu plus polyvalent que Popcorn Time (recherche sur d'autres sites, recense la musique...). Il permet le choix des sous-titres, de la langue...
Il est développé par des russes, mais les noms des films restent indiqués en anglais.

TorrentFreak le déclare tout aussi facile à utiliser que Popcorn Time, si ce n'est plus.
Pour ma part à 1ère vue, je ne suis pas enthousiasmé par ce logiciel propriétaire, ni interloqué par les «améliorations» qu'il apporte.

Site officiel de Zona: http://zona.ru/
Lien vers l'installeur: http://dl3.getz.tv/ZonaSetup_latest.exe

---

Info n°3:

Ma propre petite enquête sur Github, en cherchant "popcorn", on trouve un autre dépot avec des mises à jour récentes:
- https://github.com/popcorn-official/popcorn-app

Et yaaaa, un site web:
http://get-popcorn.com/

Et des liens de téléchargement ! Allez, on va se tester ça ...

:evil: :evil: :evil:

Le 03-05-2014 à 16:44:03
Par 111110101011

Sous Debian Jessie, avec la version 2.9 distribuée sur leur site:

Code :
./Popcorn-Time
./Popcorn-Time: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory


... librairie qui est a priori dans Wheezy.
https://packages.debian.org/wheezy/libudev0

On la télécharge, et on l'installe:
Code :
dpkg -i libudev0_175-7.2_amd64.deb


On relance Popcorn Time:

Code :
./Popcorn-Time
[22345:0503/164531:INFO:gpu_info_collector_x11.cc(80)] NVCtrl extension does not exist.
libGL error: MESA-LOADER"ev device for fd 14
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[22381:0503/164534:ERROR:context_group.cc(192)] ContextGroup::Initialize failed because too few texture units.
[22381:0503/164534:ERROR:gles2_cmd_decoder.cc(2207)] GpuScheduler::InitializeCommon failed because group failed to initialize.
[22345:0503/164534:ERROR:breakpad_linux.cc(1225)] crash dump file written to /tmp/chromium-gpu-process-minidump-0d0b84f59ddd6648.dmp
[22366:0503/164534:ERROR:command_buffer_proxy_impl.cc(159)] Could not send GpuCommandBufferMsg_Initialize.
libGL error: MESA-LOADER: could not create udev device for fd 14
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[22386:0503/164534:ERROR:context_group.cc(192)] ContextGroup::Initialize failed because too few texture units.
[22386:0503/164534:ERROR:gles2_cmd_decoder.cc(2207)] GpuScheduler::InitializeCommon failed because group failed to initialize.
[22345:0503/164534:ERROR:breakpad_linux.cc(1225)] crash dump file written to /tmp/chromium-gpu-process-minidump-9714b1a0a4bfb701.dmp
[22366:0503/164534:ERROR:command_buffer_proxy_impl.cc(159)] Could not send GpuCommandBufferMsg_Initialize.
[22345:0503/164534:INFO:CONSOLE(19)] ""Testing if we should check for update..." true", source: app://host/js/updater.js (19)
libudev: udev_device_new_from_syspath: not in sys :/sys/dev/char/226:0
libGL error: MESA-LOADER: could not create udev device for fd 14
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[22393:0503/164534:ERROR:context_group.cc(192)] ContextGroup::Initialize failed because too few texture units.
[22393:0503/164534:ERROR:gles2_cmd_decoder.cc(2207)] GpuScheduler::InitializeCommon failed because group failed to initialize.
[22345:0503/164534:ERROR:breakpad_linux.cc(1225)] crash dump file written to /tmp/chromium-gpu-process-minidump-5c245bb59fc620df.dmp
[22366:0503/164534:ERROR:command_buffer_proxy_impl.cc(159)] Could not send GpuCommandBufferMsg_Initialize.
[22345:0503/164535:INFO:CONSOLE(0)] "event.returnValue is deprecated. Please use the standard event.preventDefault() instead.", source: (0)
[22345:0503/164535:INFO:CONSOLE(96)] ""Testing if we should install update..." false", source: app://host/js/updater.js (96)
[22345:0503/164535:WARNING:simple_index_file.cc(338)] Could not map Simple Index file.
[22345:0503/164535:INFO:simple_index_file.cc(437)] Simple Cache Index is being restored from disk.


Donc il parle de Udev et de Mesa, en gros je pense que l'installation de cette librairie ne suffit pas à résoudre le problème. L'interface de Popcorn Time se lance, mais reste vide dans le volet où les films sont normalement présentés.

Bug rapporté ici.

Le 12-05-2014 à 16:17:48
Par 111110101011

Bon, le bug était «facile» à contourner.
Les instructions données ne sont pas exactement au point (car s'appliquent à "nw", or point de fichier de ce nom sous Debian, ni parmi les fichiers donnés avec Popcorn-Time).
La création d'un fichier symbolique a fonctionné chez moi, mais en tentant de le faire plus proprement je vois que l'application ne fonctionne déjà plus. Ca continue de mouliner sur «Patientez...» sans alimenter la liste des films.

Pour le 1er aperçu que j'ai eu, c'est certes séduisant, mais ça a aussi un côté peu pratique:
- j'ai eu l'impression que ça consomme davantage de CPU, et donc que la lecture des videos est moins fluide
- on peut moins facilement se positionner sur un endroit où un autre du film (faute au streaming)

C'est presque l'heure du popcorn, à voir comment ça se goupille à l'avenir...