La position d’un hélicoptère dans le son d’une vidéo YouTube

Comme je parle pas mal des choses cachées dans le son des CD et autres vinyles, je me suis rappelé un truc écrit dans un numéro de Canard PC Hardware (le 26, en octobre 2015) : des coordonnées géographiques d’hélicoptères cachées dans le son de vidéos YouTube.

TL;DR : En filtrant le son, il devient possible de suivre l’hélicoptère sur une carte.

Je ne suis absolument pas à l’origine de la découverte : c’est la blogueuse finlandaise Oona Räisänen qui a découvert ça en 2014. Pour la page dans Canard PC Hardware, je m’étais contenté d’appliquer ses découvertes.

Si vous vous demander ce que je raconte, je m’explique. Vous avez sûrement déjà vu les poursuites filmées en direct depuis un hélicoptère sur un BFM TV américain ? Les vidéos de ce type sont courantes sur YouTube et dans certains cas, on peut entendre une sorte de grésillement en arrière-plan. Ce grésillement est en fait la position de l’hélicoptère, transmise en direct. Si vous ne comprenez pas, la vidéo est assez éloquente, on entend bien le grésillement en question.

L’extraction de la position nécessite un peu de boulot. Il faut extraire une des deux voies, filtrer l’audio pour ne garder que les bonnes fréquences (entre 1 200 Hz et 2 200 Hz, par exemple avec Sox) et essayer d’interpréter le code . Le codage utilisé est le Bell 2020 (de l’ASCII en 7 bits) et il est donc possible de transformer la porteuse en texte lisible avec un programme comme minimodem. Heureusement, la compression audio de YouTube n’a pas trop d’impact sur ce genre de choses.

Le texte récupéré, une fois passé dans une moulinette qui nettoie un peu, et en supprimant manuellement les quelques erreurs de décodages, donne des lignes de ce type : 39°06'90"N 94°44'65"W. Bingo, des coordonnées géographiques. Ensuite, il suffit de mettre ça dans un fichier standard et d’envoyer le tout vers Google Maps (par exemple).

Bon, c’est la version résumé que je vous fais, ça avait demandé un peu de réflexion. Mais du coup, à la fin, on peut obtenir ça. L’image que vous voyez montre les différentes positions de l’hélicoptère durant la vidéo.

Les déplacements de l’hélicoptère

Je pense qu’il est possible d’obtenir un résultat valable en temps réel en utilisant un script, même si les erreurs inhérentes au décodage peuvent poser des soucis. Tout du moins, un script devrait permettre, au pire, de faire toutes les étapes automatiquement. Ce qui est finalement assez intéressant, ce n’est pas le décodage lui-même, mais le fait que des données a priori sensible peuvent se retrouver sur YouTube (ou sur le Net en général) via des canaux parfois étonnants.