8287d9f4efa746dccfe700e22ab1499de4c9428b
[booh] / www / advanced.fr.html
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">
3
4 <head>
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"
8          <!--
9              pre { background-color: #e0e0e0; }
10              tt { background-color: #e0e0e0; }
11            -->
12   </style>
13 <script type="text/javascript">
14 /* <![CDATA[ */
15     (function() {
16         var s = document.createElement('script'), t = document.getElementsByTagName('script')[0];
17         
18         s.type = 'text/javascript';
19         s.async = true;
20         s.src = 'http://api.flattr.com/js/0.5.0/load.js?mode=auto';
21         
22         t.parentNode.insertBefore(s, t);
23     })();
24 /* ]]> */
25 </script>
26 </head>
27
28 <body bgcolor="#FFFFFF" text="#000000" link="#0000ee" vlink="#551a8b" style="padding: 0em 3em; text-align: justify">
29
30    <table width="100%" cellspacing="0" cellpadding="0">
31      <tr>
32        <td width="25%" align="left" valign="top">
33          <a class="FlattrButton" style="display:none;" rev="flattr;button:compact;" href="http://booh.org/"></a>
34        </td>
35        <td width="50%" align="center">
36          <img src="images/logo.png" alt="booh logo"/>
37        </td>
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"/>
41        </td>
42      </tr>
43    </table>
44
45    <h1 align="center">Booh</h1>
46
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> |
51                        avancé |
52                        <a href="discuss.fr.html">discussion</a> |
53                        <a href="download.fr.html">téléchargement</a> ]</p>
54
55    <a name="performance"><h2>Performance - création de web-albums</h2></a>
56
57    <p>
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.
61    </p>
62
63    <p>
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>
68
69 <pre>
70     Normal     durée : 2:10.81
71     --mproc 2  durée : 2:01.44
72 </pre>
73
74    <p>
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>
79
80 <pre>
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 !)
87 </pre>
88
89    <p>On voit bien ici que le support multi-processeurs de Booh n'est
90    pas une fonctionnalité inutile.</p>
91
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>
94
95 <pre>
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
100 </pre>
101
102
103    <a name="classifierperformance"><h2>Performance - <i>booh-classifier</i></h2></a>
104
105    <p>
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 :
114    </p>
115
116    <ul>
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>
124    </ul>
125
126    <p>
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.
134    </p>
135
136
137
138
139    <h2>Occupation disque</h2>
140
141    <p>
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).
149    </p>
150
151
152
153
154    <h2>Architecture et manipulation des données</h2>
155
156    <p>
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.
173    </p>
174
175
176
177    <h2>Considérations internes</h2>
178
179      <p>
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).
193      </p>
194
195      <p>
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
209        propos.</p>
210
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' :
215    </p>
216
217 <pre>
218 # mkdir ~/.booh-themes
219 # cp -a /usr/share/booh/themes/dark ~/.booh-themes/montheme
220 </pre>
221
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>
224
225      <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>.
230      </p>
231
232
233
234    <h2>Traductions</h2>
235
236    <table>
237    <tr>
238    <td colspan="2">
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 !
243    </td>
244    </tr>
245
246    <tr>
247      <td>
248        Booh est disponible en français, allemand, japonais et
249        espéranto (en plus de l'anglais, bien évidemment).
250      </td>
251      <td align="right" width="1%">
252        <nobr>
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"/>
258        </nobr>
259      </td>
260    </tr>
261    </table>
262
263
264
265 <p align="right"><font size="-1">Wed Jun  1 17:51:26 2011</font></p>
266
267 </body>
268
269 </html>