1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
5 <title>Booh - Le Web-Album de choix pour les utilisateurs de Linux distingués</title>
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
7 <style type="text/css" media="screen"
9 pre { background-color: #e0e0e0; }
10 tt { background-color: #e0e0e0; }
13 <script type="text/javascript">
16 var s = document.createElement('script'), t = document.getElementsByTagName('script')[0];
18 s.type = 'text/javascript';
20 s.src = 'http://api.flattr.com/js/0.5.0/load.js?mode=auto';
22 t.parentNode.insertBefore(s, t);
28 <body bgcolor="#FFFFFF" text="#000000" link="#0000ee" vlink="#551a8b" style="padding: 0em 3em; text-align: justify">
30 <table width="100%" cellspacing="0" cellpadding="0">
32 <td width="25%" align="left" valign="top">
33 <a class="FlattrButton" style="display:none;" rev="flattr;button:compact;" href="http://booh.org/"></a>
35 <td width="50%" align="center">
36 <img src="images/logo.png" alt="booh logo"/>
38 <td width="25%" align="right" valign="top">
39 <a href="advanced.html"><img src="images/en.png" alt="this page in english"/></a>
40 <img src="images/fr.png" alt="cette page est en français"/>
45 <h1 align="center">Booh</h1>
47 <p align="center">[ <a href="index.fr.html">page principale</a> |
48 <a href="themes/cardu/">exemple de web-album</a> |
49 <a href="video-demo.fr.html">démo vidéo</a> |
50 <a href="tutorial.fr.html">tutoriel</a> |
52 <a href="discuss.fr.html">discussion</a> |
53 <a href="download.fr.html">téléchargement</a> ]</p>
55 <a name="performance"><h2>Performance - création de web-albums</h2></a>
58 Afin d'améliorer la performance à la création des vignettes - une
59 étape longue et pénible quand on crée des web-albums - Booh
60 bénéficie des avantages des ordinateurs multi-processeurs.
64 Les valeurs suivantes ont été obtenues sur un Pentium-4 avec
65 hyperthreading à 2.8 GHz, avec Linux 2.6.6 SMP 4G (notez que ce
66 n'est en aucune manière une vraie machine multi-processeurs) avec
67 la même série de vignettes à créer :</p>
70 Normal durée : 2:10.81
71 --mproc 2 durée : 2:01.44
75 Ce n'est pas si mal, mais montre clairement qu'un ordinateur
76 hyperthreading n'est de loin pas une vraie machine SMP !
77 Maintenant, regardons le résultat avec un Pentium-3 Cascades 700
78 MHz avec 6 processeurs :</p>
81 Normal durée : 2:58.07
82 --mproc 2 durée : 1:32.48
83 --mproc 3 durée : 1:03.34
84 --mproc 4 durée : 0:49.12
85 --mproc 5 durée : 0:40.86
86 --mproc 6 durée : 0:39.03 (j'aurais du tuer ces processus apache inutiles !)
89 <p>On voit bien ici que le support multi-processeurs de Booh n'est
90 pas une fonctionnalité inutile.</p>
92 <p>Des tests plus récents (pas les mêmes photos), sur un Core i5
93 650 (dual core HT) 3.2 GHz avec Linux 2.6.33.7 x86_64 :</p>
96 Normal durée : 0:48.79
97 --mproc 2 durée : 0:27.87
98 --mproc 3 durée : 0:20.38
99 --mproc 4 durée : 0:16.96
103 <a name="classifierperformance"><h2>Performance - <i>booh-classifier</i></h2></a>
106 Un test a été effectué sur un p4 2.8 GHz avec 1 Go de
107 mémoire, avec GTK+ 2.12.9 : le chargement de 134 photos
108 en 3456x2304 en provenance d'un Canon EOS 350D, faisant
109 un total de 396 Mo. Après que tous les fichiers soient
110 dans le cache du système de fichiers, la durée nécessaire
111 pour afficher une vignette pour toutes les photos est
112 mesurée avec <i>booh-classifier</i> en comparaison d'autres
113 programmes utilisés couramment :
117 <li>booh-classifier 0.9.0: 18.9 secondes</li>
118 <li><a href="http://gthumb.sourceforge.net/">gthumb</a> 2.10.8: 22.5 secondes</li>
119 <li><a href="http://www.gnome.org/projects/eog/">eog</a> 2.22.0: 28 secondes</li>
120 <li><a href="http://www.konqueror.org/">konqueror</a> 3.5.9: 1
121 minute et 40 secondes (konqueror est apparemment très lent pour
122 des photos aussi grandes, alors qu'il est raisonnablement rapide
123 pour des photos plus petites)</li>
127 Il faut garder à l'esprit en plus, que gthumb et eog ne
128 préchargent pas les photos environnantes (konqueror non plus,
129 mais ça ne fait pas de sens pour lui) ; eog n'est pas capable de
130 montrer les vidéos ; et konqueror ne montre même pas les photos
131 portrait (qui contiennent la bonne orientation EXIF) tournées
132 dans le bon sens - même si je soupçonne un problème avec la
133 compilation ou la configuration que je n'ai pas pu trouver.
139 <h2>Occupation disque</h2>
142 Pour réduire l'occupation disque, les web-albums incluant les
143 images originales utilisent des liens durs (<i>hard links</i>)
144 entre l'image d'origine dans le répertoire source et dans le
145 répertoire destination. Bien sûr, cela nécessite l'utilisation de
146 la même partition du même disque pour les deux répertoires ; si
147 cela n'est pas le cas, l'image sera simplement copiée (c'est
148 totalement transparent pour l'utilisateur).
154 <h2>Architecture et manipulation des données</h2>
157 La génération du web-album est complètement effectuée par un
158 programme en ligne de commande qui
159 s'appelle <tt>booh-backend</tt>. Il génère et/ou manipule un
160 fichier XML. L'édition est faite par un programme en mode
161 graphique (utilisant GTK+) appelé <tt>booh</tt>. Par conséquent,
162 on peut générer un web-album sans aucun travail d'édition (et en
163 fait aucune entrée manuelle)
164 <a href="tutorial.fr.html#fastest">uniquement avec le programme
165 en ligne de commande</a> si nécessaire, ou au contraire, utiliser
166 seulement le programme en mode graphique (ce qui est la manière
167 la plus simple et recommandée de procéder). L'utilisation d'un
168 fichier XML entre les deux permet un "scripting" ou l'"extention"
169 des résultats avec n'importe quel outil de traitement XML. Le
170 fichier XML a une DTD "logique", il est en fait constitué d'un
171 arbre d'éléments similaire à l'arbre des répertoires du web-album
172 sur le système de fichiers.
177 <h2>Considérations internes</h2>
180 Le web-album généré par Booh fait une utilisation intensive du
181 javascript pour être capable d'effectuer un préchargement
182 intelligent des images suivantes/précédentes, et pour montrer
183 toutes les images au sein d'une seule page HTML (cela élimine
184 un download et évite de changer votre position de défilement
185 dans le navigateur). Cela devrait fonctionner correctement avec
186 le navigateur buggué le plus répandu actuellement, mais a été
187 développé avec Galeon. De plus, notez que l'album généré est
188 visible sans problème sans javascript (des pages HTML
189 spécifiques sont générées dans ce but), de telle manière que le
190 javascript n'est pas obligatoire pour parcourir les albums (un
191 navigateur avec le javascript désactivé sera tout de même
192 capable de parcourir les albums).
196 Le thème par défaut, 'simple', a été écrit dans le but d'être
197 simple et concis, et il pourrait probablement avoir un meilleur
198 look (les contributions sont les bienvenues). Il possède
199 plusieurs tailles de vignettes et de plein écran, forgées avec
200 soin pour remplir le maximum sur un écran en 800x600, 1024x748,
201 1280x1024, 1400x1050 ou 1600x1200 (vous pouvez sélectionner la
202 liste des tailles que vous désirez pour vos web-albums -
203 ensuite, lorsque les utilisateurs parcourent les albums, une
204 autodétection en javascript de la taille optimale pour la
205 taille réelle de la fenêtre du navigateur est utilisée). Les
206 personnes intéressées par l'HTML et le CSS sont les bienvenues
207 pour créer de nouveaux thèmes - jetez un coup d'oeil au fichier
208 THEMES dans le tarball pour obtenir de la documentation à ce
211 <p>Si vous voulez créer un nouveau thème, ou bien faire une
212 modification locale à un thène, il vous suffit de mettre des
213 thèmees dans votre répertoire <tt>~/.booh-themes</tt> (Booh en version
214 0.9.2 ou plus récente). Par exemple, pour partir de 'dark' :
218 # mkdir ~/.booh-themes
219 # cp -a /usr/share/booh/themes/dark ~/.booh-themes/montheme
222 <p>Utilisez un nom différent des noms des thèmes originaux (ici j'ai choisi
223 au hasard 'montheme', choisissez un meilleur nom).</p>
226 Les thèmes actuellement disponibles : <a href="http://booh.org/themes/simple/">simple</a> -
227 <a href="http://booh.org/themes/cardu/">cardu</a> -
228 <a href="http://booh.org/themes/dark/">dark</a> -
229 <a href="http://booh.org/themes/sbs/">sbs</a>.
239 Booh a un support complet de l'internationalisation. De plus,
240 Booh peut générer des web-albums avec la navigation disponible en
241 plusieurs langues, de telle manière que les web-albums s'adaptent
242 automatiquement à la langue de la personne qui les parcourt !
248 Booh est disponible en français, allemand, japonais et
249 espéranto (en plus de l'anglais, bien évidemment).
251 <td align="right" width="1%">
253 <img src="images/en.png" alt="drapeau anglais"/>
254 <img src="images/fr.png" alt="drapeau français"/>
255 <img src="images/de.png" alt="drapeau allemand"/>
256 <img src="images/ja.png" alt="drapeau japonais"/>
257 <img src="images/eo.png" alt="drapeau espérantiste"/>
265 <p align="right"><font size="-1">Wed Jun 1 17:51:26 2011</font></p>