Améliorer la vitesse d’affichage d’une visite virtuelle grâce aux tiles et au streaming

Une question récurrente sur les visites virtuelles concerne le temps d’attente avant d’avoir un premier rendu s’afficher à l’écran.

Pour des fichiers multimédias de types vidéo et son, la solution à ce type de contrainte (télécharger un fichier volumineux sans faire attendre l’internaute) possède un nom : le « streaming », ou lecture en continu en français. Le navigateur charge progressivement la vidéo, et très rapidement, lorsque le buffer est un minimum chargé, la vidéo et le son se lancent.

Pour une visite virtuelle, généralement, on procède différement.

La contrainte du poids de fichier est là : plusieurs mégas sont nécessaires pour afficher une visite virtuelle d’une définition correcte. Le navigateur charge toutes les images avant de pouvoir naviguer, ce qui entraine un temps d’attente plus ou moins long de l’internaute. Cela dépend notamment du poids des images, de la compression jpg, et du nombre de détails dans l’image (une image chargée en détail se compresse moins bien).

Une barre de progression est indispensable pour faire patienter la personne, mais pourquoi ne pas afficher un premier rendu de prévisualisation, puis de charger les images petit à petit en fonction de ce que regarde l’utilisateur ?

krPano permet ce type de rendu. J’ai exploré ses possibilités et j’ai tout de suite adopté la solution. La page d’accueil du site utilise maintenant cette technique de streaming.

Le principe est le suivant :

D’abord, on télécharge l’image de prévisualisation.

preview

Ensuite, des images de moyennes résolutions sont mises en mémoire.

l1_b_1_1

Et enfin, lorsque l’internaute zoom dans une partie de l’image, des fichiers jpg sous forme de tiles (des bouts d’images) de plus hautes définitions sont chargées, et cela seulement pour les parties de l’image visionnée.

l2_b_2_1

Cela permet d’avoir un premier aperçu très rapidement et de télécharger selon les besoins les zones plus détaillées.

Le seul inconvénient d’avoir une visite virtuelle en streaming est la charge supplémentaire demandée au serveur. Mais étant donné la différence d’ergonomie entre une visite virtuelle en streaming et l’autre sans, il est clair que le jeu en vaut la chandelle.

Je proposerai à partir de maintenant ce type de rendu pour tous mes actuels et futurs clients. Si vous souhaitez en savoir plus sur mes prestations, n’hésitez pas à me contacter sur la page devis de visite virtuelle.

5 commentaires

  1. Vincèn : site

    Oui enfin la charge serveur est négligeable puisque c’est juste du chargement de fichiers images, ce ne sont pas des scripts ni rien :D

    28 avril 2009 à 19:43
  2. Nicolas Burtey : site

    Certes, le processeur ne sera pas plus sollicité, mais par contre le disque dur lui, oui !

    Je suis passé d’un ensemble de 6 images de 300 ko à plus de 120 images dont leur poids varient entre 5ko et 20ko.

    On multiplie quand même par 30 le nombre de fichier lu par le disque dur du serveur, et je suis sur qu’il y a un impact : si tu copies 1000 fichiers de 1 ko, ce sera beaucoup plus long (dans quel ordre de grandeur je ne serai pas trop dire) que si tu copies 1 fichier de 1 Mo.

    29 avril 2009 à 9:24
  3. Vincèn : site

    Oui c’est clair que cela fera travailler le disque dur un peu plus du serveur masi en général les serveurs disposent de systèmes RAID avec des débits très importants donc à moins d’héberger des panoramas qui font des milliers de visites par jour cela n’est pas trop gênant. Perso j’héberge sur mes serveurs plusieurs sites de panoramistes travaillant sous KRPano sans aucun soucis de charge serveur :-D

    29 avril 2009 à 9:38
  4. Nicolas Burtey : site

    En raid ? Tu parles d’un serveur mutualisé ou dédié ?

    Un serveur dédié avec du raid 0 hardware, ça commence à couter cher !

    http://www.ovh.com/fr/produits/eg_best_of.xml

    En serveur mutualisé, oui c’est une solution, mais j’imagine qu’il ne faut pas dépasser un certain nombre de visiteurs / jours alors.

    4 mai 2009 à 16:09
  5. Vincèn : site

    Ben honnêtement à moins de s’appeler 360Cities, cela ne pose pas de soucis particulier en mutualisé :-P

    8 mai 2009 à 9:55