Skywalker13

Diary of an ex-GeeXboX developer…

Un (tout petit) tour d'horizon ~ 🇫🇷

Posted at — Nov 23, 2009

Yop,

un tout petit tour d’horizon s’impose. Le travail sur (et autour de) Enna fait son petit bonhomme de chemin. Le design Ă©tait sans cesse modifiĂ© mais depuis quelques semaines on a enfin quelque chose de relativement stable. Personnellement je n’ai pas beaucoup travaillĂ© sur Enna car je continue Ă  me concentrer sur libvalhalla. Il y a encore deux rĂ©gressions de Enna qui sont dues Ă  l’utilisation de libvalhalla.

Je parle de rĂ©gressions, bien qu’il n’y a jamais eu de sortie officielle et stable. Il faut comprendre par lĂ  qu’avec toutes les modifications qui ont Ă©tĂ© apportĂ©es Ă  Enna, de temps en temps des fonctionnalitĂ©s disparaissent simplement parce qu’elle devraient ĂŞtre gĂ©rĂ©es d’une autre manière.

La première rĂ©gression que je veux souligner est celle de pouvoir reprendre la lecture d’un film Ă  l’endroit oĂą il a Ă©tĂ© interrompu. Dit comme ça, il n’y a rien d’exceptionnel. Mais “Ă  l’Ă©poque”, l’enregistrement se faisait Ă  l’aide de Eet qui Ă©tait Ă©galement utilisĂ© pour stocker les mĂ©ta-donnĂ©es des fichiers audio/vidĂ©os. Depuis l’arrivĂ©e de libvalhalla et donc d’une base de donnĂ©e SQLite, Eet n’avait plus beaucoup de sens et cette partie a Ă©tĂ© simplement supprimĂ©e d’Enna. Mais la lib ne permet pas l’Ă©criture depuis son API publique pour plusieurs raisons. Tout d’abord Valhalla ce n’est pas une bibliothèque pour gĂ©rer une base de donnĂ©e, mais c’est avant tout un scanner de fichiers, des “parsers” et des “grabbers”. Les donnĂ©es sont rĂ©cupĂ©rĂ©es par elle automatiquement. Il est donc possible de les lire depuis l’API publique. Lorsque des donnĂ©es doivent ĂŞtre modifiĂ©es, elles le sont depuis les fichiers (tags ID3 par exemple), ou alors depuis les site internets qui fournissent des informations (les grabbers, ImDB, Amazon, etc, …).

Mais pour rĂ©pondre Ă  certains besoins comme la sauvegarde de la position d’un film, il est nĂ©cessaire de reconsidĂ©rer cette question sur libvalhalla. J’ai donc commencĂ© Ă  travailler sur cet aspect il y a peu de temps. Il y aura ainsi une information qui permettra d’identifier des donnĂ©es venant de l’extĂ©rieur (parser, grabbers, …) et des donnĂ©es venant de l’intĂ©rieur. Pour mieux comprendre pourquoi il est nĂ©cessaire de faire des sĂ©parations, l’exemple d’un champ “playcount” est bien adaptĂ©. Le “playcount” (donc le nombre de fois qu’un fichier est lu), dĂ©pend uniquement de l’utilisateur d’Enna. Si le fichier en question est modifiĂ© (les tags par exemple), ce champ doit rester intacte ce qui n’est pas possible actuellement.

La deuxième rĂ©gression concerne les “snapshots” (ou “fanarts”). Ils servent Ă  avoir une image illustrant une video. Par exemple les images suivantes prĂ©sentent les rĂ©sultats pour quatre “trailers” oĂą des donnĂ©es intĂ©ressantes ont pu ĂŞtre rĂ©cupĂ©rĂ©es par les “grabbers” (j’ai rĂ©cupĂ©rĂ© les “trailers” sur le site d’Apple, merci au blogger en lien ici et ici pour l’astuce).

Dans tous ces exemples les images de fond ont pu ĂŞtre tĂ©lĂ©chargĂ©es sur le site TheMovieDB.org. Mais il peut arriver qu’aucune image ne soient disponibles et donc une alternative est nĂ©cessaire. Actuellement il y a une image de fond par dĂ©faut pour ces cas de figure, mais le but est de crĂ©er un “snapshot” directement avec le contenu de la vidĂ©o. Cette fonctionnalitĂ© Ă©tait disponible Ă  l’Ă©poque oĂą libvalhalla n’existait pas, et libplayer faisait office d’intermĂ©diaire pour rĂ©cupĂ©rer l’image Ă  20% de la vidĂ©o. L’idĂ©e dĂ©sormais est donc d’utiliser le “grabber” FFmpeg (ajoutĂ© il y a peu de temps) pour extraire l’image. Bien sĂ»r, il ne faut pas l’extraire dans les cas oĂą TheMovieDB contient dĂ©jĂ  un “snapshot” de bien meilleur qualitĂ©.

Il y bien entendu toujours un panneau d’informations pour les vidĂ©os. Il va encore probablement subir des modifications, et donc rien de ce qui est montrĂ© dans ces “screenshots” ne peut ĂŞtre considĂ©rĂ© comme dĂ©finitif.

…

Il y a encore d’autres choses qui ont Ă©voluĂ©es aussi bien au niveau de l’audio que de la vidĂ©o, mais mon objectif pour ce billet est uniquement de parler des deux rĂ©gressions. Du cĂ´tĂ© de libvalhalla, les “grabbers” tels que Amazon, Allocine et LyricWiki re-fonctionnent normalement (espĂ©rons que se sois pour encore longtemps). A part ça, une grande partie des modifications sont internes tel que de l’optimisation et des corrections de bugs par exemple.

A bientĂ´t,
Mathieu SCHROETER