Raspberry + OSMC + Filebot automatique

Publié par [Admin] Bastien le

Salut tout le monde nouveau tutoriel sous osmc. Ce week end je me suis rendu compte que ce que j’avais mis sous DSM (Synology) pour rename mes séries et films ne fonctionnent plus …. surement à cause d’une MAJ de synology où je ne sais pas quoi ! bref je me suis donc mis à la recherche d’une autre solution et je me suis dis pourquoi pas installer Filebot sur mon raspberry et faire une tâche cron pour qu’il exécute la tâche toutes les heures dans le but de renommer et déplacer mes fichiers automatiquement (flemme me voici).

Alors si jamais l’aventure vous tente, je vous explique le tout en dessous, cela va donc scanner un dossier choisis puis ensuite renommer et déplacer vos films et série sur un autre dossiers automatiquement !

Prérequis
  • Rasberry sous OSMC à jour.
  • SSH activer sous OSMC
  • Un client SSH moi j’utilise putty
  • Avoir java d’installer
    sudo apt-get install default-jre
  • Un peu de patience. (environ 30 minutes)

 

Installer Filebot sur OSMC
  • Connectez vous en ssh (login par défaut osmc password osmc)
  • Ensuite rentrer les commandes suivantes
    • sudo apt-get update
      sudo apt-get install binutils xz-utils libjna-java  mediainfo
      Mise à jour et installation des dépendances nécessaire
    • Nous allons maintenant ajouter le paquet backports à votre source pour installer openjdk 8, on édite donc les sources.
      sudo nano /etc/apt/sources.list
    • Ajouter la ligne suivante à la fin de votre fichier sources.list : Bien entendu adapter le code si votre version change (ici stretch) : https://backports.debian.org/Instructions/
      deb http://ftp.debian.org/debian stretch-backports main
    • Maintenant on installe openjdk 8
      sudo apt-get update
      sudo apt-get -t stretch-backports install openjdk-8-jdk-headless
    • On va créer un truc propre pour ne pas faire n’importe quoi
      mkdir /tmp/filebot && cd /tmp/filebot
    • Maintenant vous devez télécharger le version compatible de filebot pour le moment la version 4.7.7 soit en passant directement par le site de téléchargement de filebot:  https://sourceforge.net/projects/filebot/files/filebot/ ou alors en rentrant la ligne de commande suivante :
      wget https://bastiendeterpigny.fr/application/debian/filebot/filebot_4.7.7_noarch.ipk
    • Maintenant on installe filebot avec les lignes suivantes :
      ar -x filebot_4.7.7_noarch.ipk
      xz -d data.tar.xz
      tar xvf data.tar
      sudo cp -rf opt/ /
    • Maintenant il faut mettre les informations sur les médias à jour il nous faut jna en 4.0.0 car la version fourni avec openjdk est 3.2.7 (Il faut que java soit installé voir dans les pré-requis)
      mkdir /tmp/jna-4.0.0
      cd /tmp/jna-4.0.0
      wget --no-check-certificate https://maven.java.net/content/repositories/releases/net/java/dev/jna/jna/4.0.0/jna-4.0.0.jar
      wget --no-check-certificate https://maven.java.net/content/repositories/releases/net/java/dev/jna/jna-platform/4.0.0/jna-platform-4.0.0.jar
      jar xf jna-4.0.0.jar
      sudo cp -p com/sun/jna/linux-arm/libjnidispatch.so /usr/lib/arm-linux-gnueabihf/jni/libjnidispatch_4.0.0.so
      cd /usr/lib/arm-linux-gnueabihf/jni/
      sudo mv libjnidispatch.so libjnidispatch_3.2.7.so
      sudo ln -s libjnidispatch_4.0.0.so libjnidispatch.so
      
      cd /usr/share/java
      sudo rm jna.jar
      sudo cp /tmp/jna-4.0.0/*.jar .
      sudo ln -s jna-4.0.0.jar jna.jar
      sudo ln -s jna-platform-4.0.0.jar jna-platform.jar
      java -jar jna.jar
    • Ok maintenant nous allons vérifier le bonne liaison avec mediainfo
      cd /opt/share/filebot
      sudo ln -s /usr/lib/arm-linux-gnueabihf/libmediainfo.so.0 libmediainfo.so
      sudo ln -s /usr/lib/arm-linux-gnueabihf/libzen.so.0 libzen.so
    • Et enfin on vérifie que tout est correctement installé
      sudo ./filebot.sh -script "fn:sysinfo"
    • Le resultat de la commande ci-dessus doit retourner quelque chose dans ce style :
      FileBot 4.7.7 (r4678)
      JNA Native: 4.0.0
      MediaInfo: 0.7.70
      Apache Commons VFS: [zip, rar]
      Chromaprint: java.io.IOException: Cannot run program "fpcalc": error=2, No such file or directory
      Extended Attributes: OK
      Unicode Filesystem: OK
      Script Bundle: 2017-02-10 (r480)
      Groovy: 2.4.7
      JRE: OpenJDK Runtime Environment 1.8.0_121
      JVM: 32-bit OpenJDK Zero VM
      CPU/MEM: 4 Core / 177 MB Max Memory / 12 MB Used Memory
      OS: Linux (arm)
      Package: IPKG
      Data: /opt/share/filebot/data/root
      uname: Linux osmc 4.4.27-7-osmc #1 SMP PREEMPT Tue Jan 24 03:38:31 UTC 2017 armv7l GNU/Linux
      Done ã¾(ï¼ âã¼âï¼ )ã
Paramétré régionaux
  • On va juste vérifier que vos paramètre régionaux sont bien en français car Filebot l’utilise, on sélectionne avec la touche espace *
    sudo apt-get install locales
    sudo dpkg-reconfigure locales
Script automatique :
  • Maintenant le plus drôle, on va créer un script pour faire fonctionner filebot je vous donne en exemple celui que j’utilise :
    #!/bin/bash
    # mount -a 
    #decommenter la ligne au dessus si vous avez des liens symbolique par exemple vers votre nas dans fstab
    DATE_STAMP=` date +%d-%m-%Y-%T`
    echo ${DATE_STAMP}
    FILEBOT="/opt/share/filebot/filebot.sh"
    COMPLETED="/home/osmc/telechargements/Attente/" #Empalcement de votre dossier qui contient les fichier a renommmer
    DESTINATION="/home/osmc/telechargements/" #Emplacement ou on envoi les fichiers renommmer
    LANG="--lang fr" # la langue utiliser
    ACTION="--action move" # l'action faite move déplace le fichier copy garde l'original
    CONFLICT="--conflict skip"
    SCRIPT="-script fn:amc" # script utiliser par defaut fn:amc
    DEF="--def reportError=y clean=y music=y minFileSize=0 minLengthMS=0 excludeList=amc.excludes kodi=localhost:8080"
    LOG="amc.log"
    "$FILEBOT" $SCRIPT $LANG $ACTION $CONFLICT -non-strict --output "$DESTINATION" ${DEF} seriesFormat="Series/{n}/Saison {s}/{sxe} - {t}" movieFormat="Films/{genre}/{n} - ({y})" "$COMPLETED" --log ALL
    #seriesFormat classe la serie sous cette forme Series\Dark Angel\Season 3\3x01 - Labyrinth
    #movieFormat classe les films sous cette forme Films\"Genre\"Nom du film année du filme"
    DATE_STAMP=` date +%d-%m-%Y-%T`
    echo ${DATE_STAMP}
    echo 'coucou' > /home/osmc/telechargements/log/DeniereExecution-`date +%Y-%m-%d-%H-%M`.log #commenter si vous ne voulez pas de log
    find /home/osmc/telechargements/log/ -type f -mtime +1 -delete #commenter si vous avez commenter la ligne au dessus
    find /home/osmc/telechargements/log/cron/ -type f -mtime +1 -delete #commenter si vous avez commenter la ligne au dessus 
    echo "Suppresion des logs terminer - Script OK" #commenter su vous avez commenter la ligne au dessus

    Plus d’information sur les termes par ici : https://www.filebot.net/naming.html 

  • Pour créer le script entrer cette ligne et entrer votre script une fois fini faire CTRL+C et O pour sauvegarder
    sudo nano /usr/local/bin/filebotaction.sh 
  • On ce place maintenant dans le dossier contenant notre script
    cd /usr/local/bin
  • Fait un ls pour verifier que votre script est bien présent
    ls
  • Maintenant on va mettre les bon droits au fichier faite ceci
  • sudo chmod 777 filebotaction.sh
  • Maintenant on va convertir le script pour qu’il fonctionne correctement il nous faut installer un convertisseur dos2unix
    sudo apt-get install dos2unix
  • Ensuite pour convertir votre script faite ceci, vous devez avoir une confirmation que le script est converti
    sudo dos2unix ./filebotaction.sh
  • Maintenant le test, mettre un film ou une serie dans votre dossier, ici pour moi : /home/osmc/telechargements/attente/ cela peut prendre un certains temps. Laissez faire ensuite, vérifier que cela fonctionne si oui on continue si non vérifier bien votre script ou alors laisser un commentaire !
    sudo /usr/local/bin/filebotaction.sh
Automatiser le scripts
  • Maintenant on va automatiser le script en utilisant Cron il faut tout d’abord l’installer, si vous êtes sous OSMC faite le depuis Kodi en vous rendant dans MYOSMC puis sur appstore et ensuite installer Cron, si vous ne le faite pas depuis Kodi cela peut ne pas fonctionner
  • Maintenant que cron est bien installé on va éditer le fichier cron faite ceci
    sudo crontab -e
  • A la fin du fichier mettre ceci pour que le script s’exécute toutes les heures, vous pouvez bien sûr changer la valeur /1 par /2 pour toutes le deux heures ainsi de suite plus d’infos sur cron par ici
    0 */1 * * * /usr/local/bin/filebotaction.sh
  • Si vous voulez avoir un log pour verifier que votre tâche cron passe correctement voici la commande
  • 0 */1 * * * /usr/local/bin/filebotaction.sh >> /"chemin ou le log s'enregsitre"/logcron.log 2>&1

Voilà maintenant vous avez filebot installer avec un fonctionnement automatique !

Bientôt je vous fais un article pour faire un lien symbolique entre votre raspberry et votre nas : par là https://blog.bastiendeterpigny.fr/raspberry-acceder-a-votre-nas-depuis-toutes-les-applications/

 

Problèmes possible :

Edit 09/07/18 – 11h03

  • J’utilise JDownloader et je me retrouve avec des doublons lorsque ce que je télécharge une archive (ZIP RAR etc) : C’est normal Filebot extrait les archives si elles contiennent une vidéo, vous vous retrouvez donc avec l’extraction faite par JDownloaderet celle faites par Filebot, deux solution :
    • Méthode 1 : Vous désactivez dans JDownloader l’extraction automatique des archives (décochez la premiere ligne)
    • Méthode 2 (Conseiller) : Vous demandez à JDownloader de supprimer l’archive après l’avoir extraite.
  • Pourquoi la méthode deux ? car cela va permettre de soulager le raspberry j’ai rencontré lors de l’extraction d’archive un ralentissement sur le raspberry, embêtement s’il le fait pendant que vous regardez un film …

Edit 09-07-18 14h00

  • Troisième méthode non tester encore mais logiquement elle fonctionne ajouter cette ligne au script à l’emplacement DEF=”….”
    skipExtract=n



Un soucis, une incompréhension n'hésitez pas à poser votre question dans les commentaire j'essaye de répondre le plus vite possible vous pouvez vous abonner au commentaire pour être sûr de ne pas rater ma réponse !

Poster un Commentaire

avatar

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

  Souscrire  
Me notifier des