Août 2005.
Je me rends au 20525 Mariani Avenue, à Cupertino — le bâtiment connu sous le nom de Mariani One, ancien siège social d’Apple Inc
Le siège social officiel est déjà au campus de One Infinite Loop, mais Mariani One abrite encore l’équipe de développement de QuickTime.
Le 1er août 2005, Current TV est entrée en ondes. L’un de ses cofondateurs est Al Gore, membre du conseil d’administration d’Apple. Notre architecture de diffusion repose largement sur des technologies Apple : SAN, RAID Apple, serveurs Xserve, lecture via QuickTime 7.
La couche de playout repose sur BUG.TV (Broadcast Unifying Gears), un concept que j’avais développé avec Dacian Pitic. Je connaissais parfaitement l’architecture et ses interactions avec QuickTime.
Et en ondes, un problème apparaît.
Désynchronisation audio-vidéo.
Reproductible. Toujours sur certains segments précis.
Apple affirme que le problème vient de BUG.TV.
Je refais les tests en utilisant uniquement les outils de développement d’Apple, hors de toute dépendance BUG.
Même segment.
Même RAID.
Même Xserve.
Même désynchronisation.
L’escalade mène à Cupertino.
Je charge un Xserve et le RAID dans une voiture de location et je me rends au Mariani One.
La réunion a lieu au sous-sol. Salle sans fenêtre. Pleine. Product managers, ingénieurs, développeurs.
Parmi eux, un développeur principal du cœur de QuickTime, un Français.
Il est clair qu’il ne voulait pas être là.
Au lieu de s’asseoir autour de la table, il s’installe par terre, adossé à un mur.
Ses jambes repliées servent de support à son laptop.
Position fermée. Presque défensive.
Je branche le serveur.
Je lance le segment problématique.
La désynchronisation apparaît.
Silence.
Puis il porte ses deux mains à sa tête.
Il la tient fermement.
Il la secoue lentement de gauche à droite.
« It’s impossible.
It’s impossible.
It’s impossible. »
Il le répète en boucle.
Ce n’est pas de la mauvaise foi.
C’est de la dissonance.
Pour lui, l’architecture ne pouvait pas produire ce comportement.
Mais devant nous, elle le produisait.
Quelques semaines plus tard, Apple nous fournit un paramètre interne non documenté, forçant QuickTime 7 à utiliser la logique de synchronisation audio de QuickTime 6.
Solution temporaire.
Imparfaite.
Mais stable.
Il faudra environ un an et demi pour qu’un correctif officiel soit intégré proprement dans une mise à jour de QuickTime 7.
Ce moment au Mariani One reste marquant.
Pas parce que j’ai « gagné » un argument.
Mais parce que j’ai vu, en temps réel, la frontière fragile entre la théorie d’un système et sa réalité.
À grande échelle, les architectures sont complexes.
Mais la vérité technique est simple :
Si le problème est reproductible,
il existe.
Même si quelqu’un, assis par terre contre un mur à Cupertino, répète que c’est impossible.