Datamosh - mode d’emploi
1 – C’est quoi ?
Le datamoshing est le processus de manipulation des données d’un fichier média afin d’obtenir intentionnellement des erreurs de compression à des fins artistiques.
La technique est apparue au début des années 2000, inspirée par les artefacts issus des premiers codecs numériques comme le DivX. Des artistes ont commencé à exploiter ces erreurs de compression et à pirater des vidéos pour générer des effets visuels imprévisibles et organiques.
Personne ne sait avec certitude quand le mot « datamosh » a été utilisé pour la première fois, mais des artistes comme Takeshi Murata, Paper Rad, Kris Moyes ou encore David O’Reilly ont largement contribué à faire connaître cette esthétique.
Voici une sélection chronologique d’œuvres marquantes :
- Owi Mahn & Laura Baginski – Pastell Kompressor – 2003
- David O'Reilly – Venetian Snares – Szamar Madar – 2005
- Kris Moyes – The Presets – Are You the One ? – 2005
- Takeshi Murata – Untitled (Silver) – 2006
- Takeshi Murata – Untitled (Pink Dot) – 2007
- Paper Rad et Paul B. Davis – Umbrella Zombie Datamosh Mistake – 2007
- David O'Reilly – Compression Reel – 2008
- Takeshi Murata – Monster Movie – 2009
Une histoire de glitch avant le numérique
Les combinaisons d’erreurs et d’échecs à but artistique ne datent pas d’hier. Dès les années 60, des cinéastes du cinéma structurel comme Paul Sharits, George Landow ou Tony Conrad filmaient volontairement hors focus, utilisaient des images vides ou manipulaient la pellicule. En parallèle, des pionniers de l’image électronique comme Nam June Paik (Magnet TV), Joan Jonas (Vertical Roll) ou encore Steina et Woody Vasulka (synthétiseur vidéo Rutt/Etra) expérimentaient les distorsions vidéo. Cette exploration de la « matière » visuelle permet de mieux comprendre pourquoi des artistes comme Takeshi Murata ont été séduits par le datamosh.
Appropriation grand public
Le mainstream s’en est emparé rapidement : Kanye West dans Welcome to Heartbreak (2009), ou encore Leos Carax dans Holy Motors (2012). Même Hollywood s’est essayé au glitch avec la bande-annonce de Man of Steel (2013).
2 – I, P, B frames et GOP
Pour comprendre le datamosh, il faut se pencher sur la structure interne d’une vidéo numérique. Elle est composée de différents types d’images :
- I-frame (intra-frame) : image clé complète.
- P-frame (predicted-frame) : encode les différences avec une image précédente.
- B-frame (bi-directional) : encode les différences entre l’image précédente et suivante.
Ces images forment un GOP (Group of Pictures). Supprimer ou corrompre une I-frame entraîne une dérive des images suivantes qui tentent de se baser dessus, ce qui crée l’effet datamosh.
3 – Détournement des I-frames
En supprimant ou corrompant une I-frame, les images suivantes (P-frames) se réfèrent à une base erronée ou ancienne. C’est ce décalage temporel qui génère le glitch.
4 – Les outils
Voici les outils nécessaires pour faire du datamosh :
- ffmpeg : pour convertir les vidéos.
- AVIglitch : pour supprimer les keyframes.
- Moshy : pour réparer la vidéo corrompue.
- (Optionnel) youtube-dl : pour télécharger des vidéos YouTube.
5 – Installation (macOS/Linux)
5.1 Installer Homebrew et ffmpeg
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ffmpeg5.2 Installer Ruby, Moshy et AVIglitch
brew install ruby
gem install moshy
gem install aviglitch5.3 Bonus : youtube-dl
brew install youtube-dl6 – Utilisation
6.1 Terminal
Crée un répertoire pour travailler :
cd Desktop
mkdir datamosh && cd $_6.2 Télécharger une vidéo
youtube-dl -F "URL"
youtube-dl -f 313 "URL"6.3 Conversion en AVI
ffmpeg -i input.mp4 -c:v libxvid -qscale 1 -g 150 -me_method epzs -bf 0 -mbd 0 -c:a copy output.avi6.4 Appliquer le datamosh
datamosh output.avi -o datamoshed.avi
moshy -m bake -i datamoshed.avi -o final.avi
ffmpeg -i final.avi -c:v libx264 -crf 23 -c:a copy final.mp47 – Automatiser avec un script Bash
#!/bin/bash
tempfoo=`basename $0`
TMPFILE=`mktemp /tmp/${tempfoo}.XXX`
TMPFILE1=`mktemp /tmp/${tempfoo}.XXX`
for i in *.mp4;
do
  echo "||| Datamosh... conversion vers AVI avec -g $1 |||"
  ffmpeg -i "$i" -c:v libxvid -q:v 1 -g $1 -me_method epzs -bf 0 -mbd 0 -c:a copy -y $TMPFILE.avi
  echo "||| Datamosh... en cours ! |||"
  datamosh $TMPFILE.avi -o $TMPFILE1.avi
  moshy -m bake -i $TMPFILE1.avi -o $TMPFILE.avi
  echo "||| Datamosh... conversion vers mp4 |||"
  ffmpeg -i $TMPFILE.avi -strict -2 -y "${i%.*}-datamosh.mp4"
  clear
  echo "||| Datamosh... Done! |||"
donePour l’utiliser :
chmod a+x datamosh.sh
./datamosh.sh 100C’est certainement l’un des effets les plus organiques et imprévisibles dans la manipulation d’une vidéo.
- ← Précédent
 Configurer un serveur MQTT avec Raspberry Pi
- Suivant →
 WebP - Le format d'image du futur