Skip directly to content

JukeBox RSS

Portrait de zozodesbois
on jeu, 03/03/2011 - 00:38

Présentation

enlightenedNouvelle version du Jukebox RSS (inspirée par Mikka), un script d'indexation qui se lance sur le HMB.

Voici un petit projet en phase de développement, ce qui veut dire qu'il y a des choses qui ne marchent pas.

C'est surtout pour vous montrer ce que l'on peut faire.

D'ailleurs, je viens de découvrir qu'il y a d'autres projets similaires en cours (merci Hellboy pour l'info), je vais voir comment améliorer les choses.

Par exemple sur ce lien Mikka a fait quelque chose de similaire, mais son script de conception se lance sur le HMB, il envisage même une mise à jour automatique http://www.acryan.com/forums/viewtopic.php?f=98&t=11697

Ce que je vous propose moi ressemble, mais les scripts de conception du fichier de flux RSS vont être lancés sur vos ordinateur.

Le principe de ces scripts, c'est qu'une fois installé et configuré, tout va être en local sur votre HMB, donc pas besoin d'avoir une connexion Internet pour voir votre mur vidéo (movie wall) et jouer vos Films.

Voici ce que donne notre script

Problèmes connus

  • Les Films avec des accentués ne marchent pas et leur jaquettes ne s'affichent pas (j'ai une piste, la version Linux marche, je pense que c'est lié au format du texte "Ansi" de Windows)
  • Les .flv et .wmv ne marchent pas

Prérequis

  • Avoir installé le Firmware C748 (c'est possible avec une version antérieure, mais il faut y aller en Telnet... voir si je me lance dans d'autres explications... ou si le passage au C748 suffit).
  • Avoir mis un paquet IMS (par exemple sur le site Ellion prenez le paquet IMS(German) et copiez les deux dossiers IMS_scripts et IMS_image à la racine de votre disque (ou clé Usb)
  • Dans le setup de votre HMB, allez dans système et activez la fonction IMS Scripts (à l'endroit où vous avez mis vos dossiers IMS).

Scripts joints en bas de page

Version Windows: JukeBox_RSS_v1_win.zip

Version Linux : JukeBox_RSS_v1.1_Linux.zip

Utilisation

  • Il faut récupérer ses jaquettes par exemple avec Yamj
  • Dans un dossier que vous mettrez sur votre disque dans le HMB (ou sur une clé Usb), copiez-y tous les fichiers "_small.png" (ce sont les jaquettes format réduit de Yamj avec de la transparence. Si vous voulez le faire avec des .jpg, il faut modifier la variable IExt dans le paramétrage du script)
  • Dans ce même dossier ajoutez une image que vous nommerez "Defaut.jpg" pour avoir une image générique si des jaquettes sont manquantes

Configuration Windows

  • Configurez le script pour les chemins windows, et les chemins internes du HMB, en renseignant les variables en rouge dans la section "Assignation variables"
'----------------- Assignation variables ---------------------
Set fso    = CreateObject("Scripting.FileSystemObject")
ChW        = fso.GetParentFolderName(WScript.ScriptFullName)
ChHF    = "/tmp/public/ZOZO(usb)/Film"            'Chemin des Films, nom de chemin HMB
ChHJ    = "/tmp/public/ZOZO(usb)/Jaquettes"        'Chemin des Jaquettes, nom de chemin HMB
ChWF    = "\\192.168.0.12\Geo(USB)\Film"        'Chemin Windows des Films, nom de chemin Win
ChWJ    = "\\192.168.0.12\Geo(USB)\Jaquettes"    'Chemin Windows des Jaquettes, nom de chemin Win
JDos    = "Defaut.jpg"                            'nom de l image generique pour un dossier complet, se met dans le dossier des films concernes
JDef    = ChHJ &"/Defaut.jpg"                    'Image par defaut, si une image n existe pas, nom de chemin HMB
Findx    = ChW &"\JukeBox.rss"                    'Fichier RSS genere
IExt    = "_small.png"                            'Extention des Jaquettes

ChHF et ChHJ sont des chemins interne au HMB, si vous n'en êtes pas sûr, il faut se connecter en telnet et passer la commande

ll /tmp/public/

ChWj et ChWF sont des chemins depuis Windows pour trouver vos fichiers vidéos et Jaquettes.

Configuration Ubuntu

  • Configurez le script pour les chemins Linux, et les chemins internes du HMB, en renseignant les variables en rouge dans la section "Assignation variables"

Pour retrouver un montage automatique Samba, cherchez vos lecteurs dans /home/$USER/.gvfs

CH_HF="/tmp/public/ZOZO(usb)/Film"               #Chemin des Films, nom de chemin HMB
CH_HJ="/tmp/public/ZOZO(usb)/Jaquettes"          #Chemin des Jaquettes, nom de chemin HMB
CH_F="/home/zozo/.gvfs/zozo%28usb%29 sur 192.168.0.12/Film"         #Chemin des Films, pour traitement
CH_J="/home/zozo/.gvfs/zozo%28usb%29 sur 192.168.0.12/Jaquettes"    #Chemin des jaquettes, pour traitement
FIC_RSS="Juke.rss"                               #Fichier RSS
FIC_TMP="rss.tmp"                                #Liste temporaire des fichiers
JDOS="Defaut.jpg"                                #nom de l image generique pour un dossier complet, se met dans le dossier des films concernes
JDEF="${CH_HJ}/Defaut.jpg"                       #Image par defaut, si une image n existe pas, nom de chemin HMB
IEXT="_small.png"                                #Extension Images

CH_HF et CH_HJ sont des chemins interne au HMB, si vous n'en êtes pas sûr, il faut se connecter en telnet et passer la commande

ll /tmp/public/

CH_F et CH_J sont des chemins depuis Linux pour trouver vos vidéos et Jaquettes.

Lancement

  • Lancez le script sur votre ordinateur

Le fichier JukeBox.rss est alors généré au même endroit que votre script.

Copiez-le dans le dossier IMS_scripts

Modifiez le fichier menu.rss qui se trouve déjà dans le dossier IMS_scripts, pour qu'il prenne en compte votre fichier JukeBox.rss:
Repérez le mot "Mediathek" et ajoutez les lignes en rouge.

<item>
<title>Mediathek</title>
<link>rss_file://./scripts/video_guide.rss</link>

<media:thumbnail url="image/podcast.png" width="128" height="128" />
<mediaDisplay name=threePartsView showNestedHeader=no showDefaultInfo="no"/>
</item>

<item>
<title>JukeBox GeekyHMB</title>
<link>rss_file://./scripts/JukeBox.rss</link>

<media:thumbnail url="image/weather.png" width="128" height="128" />
<mediaDisplay name=photoView />
</item>

Pour visualiser votre mur, allez dans le Navigateur et normalement dans le menu qui apparaît, vous avez un choix "JukeBox GeekyHMB"
Il n'est pas nécessaire de connecter le HMB à Internet puisque tous les fichiers sont en local.

Et voilà...

Commentaires

Portrait de hellboy

est ce que l'affichage est plus rapide et réactif ?

Portrait de zozodesbois

Oui, c'est plus réactif que l'affichage avec la vignette, c'est instantané !
L'idée que j'ai, c'est de faire des menus alphabétiques, ce qui permettrait un gain au niveau de la navigation.
Le nombre d'images à l'affichage est configurable dans le script.
Et toutes les jaquettes sont regroupées dans un même dossier.

Portrait de zozodesbois

j'ai une piste pour les noms de fichiers avec les accentués, la version de script Linux marche, je pense que c'est lié au format du texte "Ansi" de Windows

Portrait de HardManBlue

Ceci veut dire que l'on peut lire ou exécuter des shells directement sur nos HMB ? Dans le topic de Mikka, il dit que l'on pourrait faire la génération par catégorie si j'ai bien compris aussi ?...

HMB Movie Palace, 1 To en Interne, 2 x 2To en externe, Firmware V2.1 C757, of Course !

Portrait de hellboy

J'ai essayé le mur de jaquette.
ça marche bien mais malheureusement après un plantage de mon boitier, la lettre du lecteur a changé (sda1 => sdb1 il me sembe). Résultat le mur de jaquette ne marche plus .
alors j'ai essayé d'ajouter des lien relatif du style ../movie/toto.mkv mais ça ne fonctionne pas;
avez vous réussi à utiliser des chemins relatifs ?

Portrait de zozodesbois

Salut
C'est marrant ça, Hellboy, je suis justement en train de me prendre la tête avec ce pb sur le nouveau sujet que je vais sortir... le sda1 devient sdb1 si une clé est branchée avant reboot. Je n'ai pas trouvé de solution pour le moment. Et pour les chemins relatifs, oui ça marche, mais il faut que tu saches où tu es positionné. Et là je crois que le script est positionné là /usr/local/bin/scripts/ alors je ne vois pas comment aller sur une clé ou un disque en relatif à partir d'ici...

Et pour répondre à Hardmanblue, oui on peut lancer un script à partir d'un menu.
Zozodesbois

Portrait de hellboy

c'est rageant car dans les flux rss utilisés pour le ac ryan on peut utiliser les chemins relatifs. quel dommage.
il n'est pas possible d'utiliser des variables d'environnement du style $home dans ce type de Linux ?

Portrait de zozodesbois

Salut Hellboy,
Ca y est je suis tombé dessus. Et bien sûr c'est tout bête !
Il y a moyen d'adresser les clés USB par leur nom, ce qui règle le problème des lecteurs qui changent de nom si on les débranche/rebranche ou en redémarrant le HMB.
On trouve ces chemins en Telnel avec la commande

ll /tmp/public/

Ca retourne les mêmes noms que l'on a lors des partages Samba

drwxrwxrwx    2 500      500             0 May 18  2011 .
drwxr-xr-x   18 root     root            0 May 18  2011 ..
lrwxrwxrwx    1 root     root           21 May 18  2011 ZOZO(usb) -> /tmp/ramfs/volumes/C:
lrwxrwxrwx    1 root     root           21 May 18  2011 partition1(sata) -> /tmp/ramfs/volumes/D:

Voilà donc, il faut utiliser ces chemins à la place de ceux que l'on trouve avec la commande df

Ca va donner ce qui suit (il faut utiliser les " )

"/tmp/public/ZOZO(usb)/"

Zozodesbois

Portrait de HardManBlue

Faut que je regarde ça mais ça pourrait solutionner "mon" pb de films sur DD externe ?

HMB Movie Palace, 1 To en Interne, 2 x 2To en externe, Firmware V2.1 C757, of Course !