Journal TMDBPHP ou comment créer des metas pour ses films avec MediaTomb

Posté par  (site web personnel) . Licence CC By‑SA.
9
1
déc.
2013

TMDBPHP (The Movie DB PHP) est un petit projet que j'ai commencé à écrire pour organiser ma collection de films avec MediaTomb. Pour se faire, j'ai réalisé une petite interface web en PHP et jQuery avec une modification du fichier import.js de MediaTomb. TMDBPHP n'est pas encore très évolué, mais il sait récupérer les informations provenant de l'api de themoviedb.org, enregistre les informations dans un fichier XML et copie la jaquette dans un répertoire. L'utilisateur à le choix entre différents résultats, et peut renommer le fichier s'il ne correspond pas au titre du film. Pour le reste, le script de MediaTomb s'occupe de récolter les informations contenus dans les fichiers XML afin d'organiser les films par année, acteurs, genre, studios, origine etc.

TMDBPHP est fonctionnel, mais aura certainement besoin de modifications pour s'adapter à votre configuration. Vous pouvez me proposer votre contribution, le git est en place à cette adresse : https://github.com/shingo-san/tmdbphp. Toutefois, pour que le script puisse récupérer les fichiers XML, il faut posséder js (spidermonkey) compilé avec l'attribut JS_HAS_FILE_OBJECT=1. Rien de bien compliquer.

Par la suite, je prévois d'améliorer l'interface web avec d'avantages de fonctions pour gérer et trier ses films tout en exploitant la base de données de MediaTomb. Du coté du script de MediaTomb, il n'y a pas vraiment grand chose à ajouter, le moteur SpiderMonkey est plutôt limité, mais si quelqu'un à envie de trouver des améliorations, merci de me les soumettre.

Pour information, TMDBPHP est utilisé sur un NAS DLINK 320 sous Squeeze.

Voici la structure type d'un fichier XML :
 XML
Voici quelques captures d'écrans présentant l'interface web et le résultat obtenu.

L'interface Web
Les fichiers XML
Titre de l'image

Concernant l'installation, rien de bien compliquer, il suffit de posséder MediaTomb, un serveur Apache avec PHP5 et de modifier les différents fichiers de configurations au besoin.

  • # Les goûts et les couleurs

    Posté par  . Évalué à 4.

    Sur le screenshot du milieu, c'te vidéothèque pourrie :-)

    • [^] # Re: Les goûts et les couleurs

      Posté par  (site web personnel) . Évalué à 3.

      A l'exception peut être des Aliens et de Black Belt ?
      Et puis c'est pas vraiment le sujet du post :-D

      kentoc'h mervel eget bezan saotred

    • [^] # Re: Les goûts et les couleurs

      Posté par  (site web personnel) . Évalué à 2.

      Ah les gouts et les couleurs ^

      Cependant, je t’accorde que certains films ne sont pas terribles et mériteraient d'être effacé. Cependant, la quasi-totalité de ma collection est constitué de films asiatiques, après faut aimer hein ^

  • # Détails sur l'application

    Posté par  . Évalué à 1.

    Bonjour et merci pour ce logiciel qui m'a l'air sympathique.

    Malheureusement, bien que j'ai l'impression que ça pourrait m'intéresser, la description est trop limitée pour m'inciter à l'installer et il n'y a pas de README.md sur ton dépôt github pour détailler la procédure d'installation et le contenu du logiciel, dommage.

    Pourrais-tu répondre aux questions suivantes stp ? :
    - Est-ce que les jaquettes sont alimentées au fur et à mesure sans passer par l'interface web (ex: si j'ajoute des vidéos dans le répertoire de ma vidéothèque)
    - Je n'ai pas compris la partie sur Spidermonkey. Il faut avoir javascript activé dans son navigateur ? (ou un moteur javascript en plus installé en plus sur le serveur avec Mediatomb)
    - Où changer la valeur de JS_HAS_FILE_OBJECT=1 ? En recompilant quoi ?

    Merci beaucoup pour tes réponses, et bon courage pour ton logiciel :-)

    • [^] # Re: Détails sur l'application

      Posté par  (site web personnel) . Évalué à 1.

      Salut ! Alors pour le moment, je n'ai pas eu le temps de créer un fichier README car le projet est trop jeune pour vraiment avoir une installation type d'autant plus qu'il faut modifier un peu les fichiers pour que le tout s'adapte à ce que tu veux. Mais je vais prochainement peaufiner le tout pour permettre à TMDBPHP de s'installer facilement et de façon générique.

      Si tu veux essayer TMDPHP, il te faut dans un premier temps MediaTomb, libjs (SpiderMonkey), apache2 et PHP5. L'idéal serait d'avoir le tout installé sur un serveur. La modification du script "import.js" requiert que libjs soit compilé avec l'argument JS_HAS_FILE_OBJECT=1. Le plus simple est de récupérer le source de la version 1.70 ou 1.80 de libjs sur le ftp de Mozilla : http://ftp.mozilla.org/pub/mozilla.org/js/ et de le compiler soit même.

      Ce qui nous donne :
      make -f Makefile.ref BUILD_OPT=1 JS_HAS_FILE_OBJECT=1 JS_THREADSAFE=1 DIST=/path/to/nspr

      Par la suite, il faudra copier libjs.a et libjs.so dans /usr/lib et le binaire js dans /usr/bin.

      Si tu as déjà SpiderMonkey installé tu peux essayer cela :

      root@dlink-A0296C:~# js
      js> var file = new File()
      js> 
      

      Pour répondre à ta question concernant un autoscan, cela est possible de l'ajouter mais, si je n'ai pas travaillé sur cette fonction c'est qu'il serait dommage de récolter des données sur un mauvais film. C'est le cas de XBMC qui récupère automatiquement les informations sur les films sans rien te demander, et du coup, tu peux te retrouver avec des jaquettes et info qui ne correspond pas du tout à ton film. Dans tous les cas, je vais créer un binaire qui pourra récupérer et enregistrer les données en ligne de commande accompagné d'un service pour ceux qui souhaitent que ça se fasse de manière automatique.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.