Nouvelle application iPhone !

Après près de deux mois de chantier, nous sommes à deux doigts de pouvoir envoyer à Apple la toute nouvelle application WE totalement réécrite en natif. Pour mémoire, la première application pour iPhone était développée comme une « web’app », donc en utilisant beaucoup de ressources réseau et avec des désavantages décrits dans ce post.

Marco Scheurer et son équipe de Sente ont travaillé en lien avec Nicolas Goy pour développer les aspects suivants:
– écrire l’application en mode natif, pour pouvoir maximiser les chances que l’application puisse être validée chez Apple et qu’elle puisse être plus réactive et maîtrisable;
– nous avons décidé de centraliser un maximum de processus dans le téléphone pour éviter d’être trop dépendants du réseau et de permettre une autonomie plus grande à l’utilisateur. Ainsi, le moteur de montage et la base de données sont installées puis synchronisées sur le téléphone, c’est juste le flux audio qui est envoyé depuis le serveur (dans le nuage chez Amazon) au téléphone;
– actuellement, pour des raisons de fiabilité de débit nous avons décidé de limiter la qualité audio à 48kbit/sec – c’est un compromis en attendant que Zencoder nous mette à disposition de l’adaptive streaming pour la mi février;
–  l’application est encore au stade beta, et la première version qui pourra être envoyée à Apple sera encore très basique et limitée autant dans les fonctionnalités que dans l’interface graphique. Nous n’avons pas encore pu implémenter la fameuse interface à bulles – là nous avons juste une playlist qui défile et qui permet d’avoir une idée plus précise des médias joués (durée, nom artistique, thématique);
– afin de donner une idée à l’utilisateur des contraintes techniques existantes (signal GPS et fiabilité du réseau 3G DATA), nous avons ajouté deux petites indications de couleur pour signaler si tout est ok (indicateurs au vert) ou s’il y a un problème avec le GPS ou le canal DATA (indicateurs en rouge);
– tout le système est actuellement prêt à pouvoir automatiser toute la chaîne depuis le déclenchement de l’enregistrement du parcours à la sauvegarde du film (avec un nom personnalisé) visible directement après sur le site internet.

Les limitations qu’il faut connaître:
– il faut désactiver la mise en veille du téléphone (mise en veille = jamais), sinon dès que l’appareil se met en veille ça coupe le son (et tous les processus); nous cherchons encore la manière de continuer les processus (écriture du tracé via le GPS, sélection des médias via le moteur de montage) et l’écoute du flux audio;
– après 3 à 5 minutes, il arrive souvent qu’au milieu de la lecture d’un média le son s’arrête, mais le compteur temporel du média continue: il faut simplement arrêter le film (clic sur stop), puis le sauver et recommencer un autre film;
– en dessous de 5 médias joués, il n’est pas possible de sauver le film (pour éviter d’avoir trop de films avec juste 2 à 3 médias)
– et comme décrit plus haut, la qualité audio est actuellement mauvaise du fait de la forte compression; cela va être amélioré dès la mi février avec la fonction de l’adaptive streaming;
– avant de marcher son premier film il faut créer son utilisateur sur une page spécifique (à venir).

Pour l’utilisation, veiller aux conditions suivantes:
– bien charger son téléphone avant de faire une ballade: l’application est très gourmande de batterie et va la vider très vite (à cause du GPS et des accès réseaux intensifs)
–  désactiver le WIFI (être sûr que l’on reste en 3G lors de la ballade, le fait de switcher du WIFI au 3G peut parfois entraîner des perturbations)
– utiliser le dispositif dehors: l’application marche seulement avec un bon signal GPS (le voyant position doit être vert, cela veut dire qu’il y a une précision d’au moins 100 mètres, ce qui n’est pas le cas si la position est calculée via les antennes de téléphonie) et il faut aussi avoir un bon signal DATA (le voyant vert audio doit aussi être vert, ce qui signifie que le flux audio est transporté via le réseau cellulaire).
– si l’application reste capricieuse (surtout avec les anciens modèles d’iPhone, le 3G par exemple), il faut désinstaller l’application du téléphone et la réinstaller.

Attention aux « pièges » suivants:
– selon l’état du réseau, il se peut que lorsque l’on clique sur Stop ou Sauver (le film) la commande prenne du temps à être prise en compte; il faut donc éviter de recliquer sur le bouton. Si l’on clique sur le bouton démarrer après avoir cliqué sur stop, on redémarre un film et le  film marché est irrémédiablement perdu!
– il faut au minimum 5 « médias » (plans joués) pour pouvoir sauver; il est conseillé de faire des enregistrements entre 2 minutes et 20 minutes. Au delà, risque de bug et sans doute aussi film trop long à regarder après…

Toute personne intéressée de tester l’application peut me contacter par mail dès le 24 janvier 2011.

Un grand merci à Marco et Nicolas pour leur travail de qualité et leur patience !

État des lieux du dispositif technique

Quelques lignes pour décrire dans les grandes lignes le travail qui se fait « sous le capot » afin de rendre ce dispositif fonctionnel pour le public. Il faut savoir que jusqu’à ces jours, presque tout se faisait « à la main » et tournait sur un petit serveur basé dans la région de Lausanne – il n’était pas envisageable de garder cette structure pour permettre d’automatiser les processus et de permettre à un plus grand public d’utiliser le dispositif.

La suite…

Tests du logiciel iPhone

Ce chantier qui est en cours depuis plusieurs mois est proche d’arriver à des premiers résultats utilisables – gros soupir de soulagement de voir que ça commence à fonctionner dans les grandes lignes, mais il y a encore plein de petits détails à affiner.
Un grand merci déjà à Nicolas Goy et Lionel Tardy pour leur travail assidu.

Voici quelques captures d’écran du mode d’enregistrement:

L’interface avec les bulles fonctionne plutôt bien, le mouvement est assez fluide et la réactivité sur un iPhone 3G encore correcte (l’expérience sera meilleure sur un 3Gs ou un 4G).

La suite…

Etat des lieux des chantiers techniques

Une prise de vue réalisée par Alexa Andrey

Dans la perspective des présentations à Paris (mi septembre 2010) et à Genève (décembre 2010), nous devons acheminer les chantiers suivants dans un état qui soit fonctionnel:

Le CMS. Il s’agit du gestionnaire collaboratif qui permet principalement d’indexer les vidéos de la base de données et de faire des réglages du moteur de montage. C’est la pièce maitresse de tout le dispositif, la plaque tournante autour de laquelle s’articule l’application pour iPhone, notre travail de catalogage, les films qui sont présentés sur le site, la gestion des utilisateurs etc… Une des difficultés est de gérer de manière séparée les diverses adaptations tout en centralisant un certain nombre de données (les utilisateurs, les listes de tags, la génération de films etc). Après une refonte globale du CMS, une nouvelle version va voir le jour fin juillet.

– L’application iPhone. Elle existe déjà en version bêta, mais il faut encore résoudre des bugs visible sur certain téléphones de la génération 3G (les appareils d’il y a 2 ans). En gros, cette application « de base » permettra de démarrer l’enregistrement d’un parcours et donc la génération en temps réel d’un film en pouvant choisir son moteur de montage. En marchant, on entend le son du film en temps réel et on a la liste de vidéos jouées. A la fin du parcours on pourra nommer le film, que l’on verra ensuite apparaître dans la page de son compte. Le but est de pouvoir aboutir à une version 1.0 qui sera envoyée pour validation à Apple à la mi août afin de pouvoir permettre son téléchargement public et gratuit depuis iTunes mi septembre.

Les autres chantiers techniques (moteur de montage, amélioration des fonctionnalités du site et perfectionnement du workflow de production) sont repoussés pour pouvoir terminer ces chantiers là dans les temps.

Mise à jour de la présentation des films

Après quelques mois de chantier technique (nouveau CMS et moteur de montage intégré dans un « écosystème » modulable et géré de manière centralisée), nous pouvons enfin montrer quelques résultats des efforts déployés surtout par Nicolas Goy, le programmeur du projet:
– les films sont donc maintenant recalculés sur la base de notre nouveau moteur de montage (mais il y a encore du travail à effectuer pour améliorer la continuité narrative et la transposition plus fine entre la forme du parcours et la forme du film);
– les images vidéos sont présentés dans une meilleure qualité technique (plus de flash);
– il y a à nouveau la possibilité de naviguer dans le film via la tête de lecture du film mais aussi de la position du visiteur sur le tracé enregistré;

– la fonctionnalité de commentaire et de login a été complètement remaniée et permet donc à chaque personne inscrite de laisser un commentaire sur les films et de pouvoir s’inscrire pour pouvoir marcher un film…

Et tout bientôt, une version bêta de l’application WE pour iPhone sera disponible pour tests (à Renens et à Paris)…

Module embarqué – quelques tests et nouvelles directions

Grâce au talents de programmateur de Nicolas Goy, nous avons pu dompter le module embarqué (simple touch PC) et lui ajouter les fonctionnalités suivantes:

  • driver pour la carte graphique (encore un problème de performance lié à l’openGL, mais à voir)
  • affichage d’une carte vectorisée et raster
  • driver pour un module GPS ainsi que conversion des données GPS vers le système métrique suisse
  • fonctionnalité d’enregistrement du flux du GPS
  • affichage en temps réel de la position sur la carte
  • driver pour implémenter le touch screen
  • ajout d’un bouton d’enregistrement start / stop sur l’écran
  • driver pour un accéléromètre (terminé mais pas encore testé)

Voilà 2 images du module embarqué avec son alimentation (transportable…) ainsi que le GPS Holux relié en USB. Le bouton rouge tout en bas à gauche est pour enregistrer (en cours à ce moment); le bouton est vert lorsque le système n’enregistre pas (en pause):

module embarqué large

module embarqué serre

On voit qu’on est encore loin d’une solution ergonomique – mais ce n’est pas le but de cette première étape qui vise à tester mécaniquement les composants et interactions entre données brutes, code, base de données puis au final le film.

Quelques réflexions sur des choses à améliorer, faire évoluer:

  • on le voit sur les images: trouver un écran qui « résiste » au beau temps et qui fonctionne dehors;
  • réactivité du système (surtout si l’on implément des commandes et boutons sur l’écran), ce problème est lié aux performances de la carte graphique;
  • portabilité (poids, encombrement) et ergonomie de l’ensemble (pas de câbles qui pendouillent etc).

Ci desssous le résultat d’un test GPS avec la configuration sur la photo:

Test parcours 120508

A part quelques mètres qui sont justes, il y a beaucoup de décrochages qui sont pas de bonne augure – le GPS a tendance à perdre ses satellites et à mettre très lontemps avant de retrouver le bon endroit.

A télécharger la traduction pour google earth du test parcours holux.

Suite à ces premiers résultats, les pistes suivantes ont été (ré)ouvertes:

Abandon des coordonnées métriques Suisse, ceci pour une meilleure interportabilité avec des logiciels comme Google Earth et des cartes d’autres villes / pays. La trop grande précision n’était finalement pas nécessaire ici;
Abandon de la carte de swisstopo. La carte swisstopo contient beaucoup trop de points, et certaines routes qui peuvent être intéressantes (chemin d’accès à une usine…) n’y sont pas indiquées;
Remplacement de la carte swisstopo par une carte home made (style map.search ou google ou…);
Dessiner des « rails » qui vont magnétiser les positions du GPS sur les routes – cela va aider à mettre le parcours correctement sur les tracés des routes et éviter de passer à travers des cuisines inconnues… Il va clairement être mentionné au visiteur que son parcours ne sera que restitué correctement s’il suit les tracés des routes marquées sur la carte du module;
– Utilisation d’une image raster pour les bâtiments et les décors (arbres, rivières…), personnalisation de cette carte avec des layers à définir (routes et nom des routes, bâtiments; zones forêt et aquatique; nuages thématiques; etc)

UF 14.05.2008