Récupérer des enregistrements quand QuickTime a planté

Petite astuce qui peut aider avec QuickTime si vous enregistrez directement avec le logiciel d’Apple. Par défaut, QuickTime Player va garder votre enregistrement dans un dossier et si par mégarde vous fermez QuickTime violemment (sans sauver), avec un peu de chance l’enregistrement est encore là. J’avais vu cette astuce chez Korben, mais il y a quelques subtilité en plus.

C’est assez facile à reproduire : lancez une enregistrement, et fermez QuickTime sans sauver ou arrêter (un clic droit sur l’icône dans le Dock en pressant option, par exemple). Et bien l’enregistrement est encore présent. Il se trouve dans ~/Library/Containers/com.apple.QuickTimePlayerX/Data/Library/Autosave\ Information/. Vous pouvez utiliser le Finder pour y aller : Aller -> Aller au dossier. Il se nomme Document QuickTime Player non enregistré et – attention – il disparaîtra si vous relancez QuickTime. Il faut donc le récupérer avant de relancer QuickTime.

Maintenant que vous avez le fichier, je vous conseille de le copier directement à un autre endroit et de travailler sur une copie. Et QuickTime ne voudra sûrement pas l’ouvrir.

Ensuite, il faut extraire le contenu. Un clic secondaire sur le fichier, Afficher le contenu du paquet. Il y a quatre cas possible avec QuickTime, en fonction de vos choix. De la vidéo en qualité élevée (en H.264), de la vidéo en qualité maximale (en ProRES, compliqué à récupérer), de l’audio en qualité élevée (compression AAC) et de l’audio en qualité maximale (sans compression).

La vidéo

Commençons par de la vidéo. Vous aurez un fichier .mov. Première solution, tenter avec VLC ou un autre lecteur. Si vous n’avez pas peur d’envoyer vos données en ligne, le site mp4repair.org peut fonctionner, même s’il n’aime visiblement la version en qualité maximale et qu’il est payant.

C’est cher

Si ça ne fonctionne pas (probable), il y a untrunc. Ça devrait fonctionner sous Linux, mais impossible de le compiler sous macOS, malheureusement. La version reloue passe par Docker et ce n’est pas grand public. Si vous avez peur de la ligne de commande, abandonnez.

Il faut installer Docker depuis le site.
Ensuite cloner untrunc (git clone https://github.com/anthwlock/untrunc).
Enfin, le lancer dans un container : docker build -t untrunc .

Attention, c’est un peu compliqué. Premièrement, il faut une vidéo qui fonctionne (enregistrée de la même façon, en gros), nous allons l’appeler video1.mov.
La vidéo qui ne fonctionne pas, elle, nous allons l’appeler video2.mov.
Les deux vidéos doivent être dans le dossier Téléchargements.
Voici la ligne de commande qui devrait essayer de récupérer le tout.

docker run -v ~/Downloads/:/mnt untrunc /mnt/video1.mov /mnt/video2.mov

Le fichier en sortie se nomme video2.mov_fixed. Je vous dit tout de suite, ça fonctionne assez mal. Dans le cas d’une vidéo en qualité élevée (H.264), ça fonctionne plus ou moins. Dans le cas d’une vidéo en qualité maximale (ProRes), ça ne marche tout simplement pas.

L’audio

Avec de l’audio, vous aurez un .aifc, si vous enregistrez en qualité maximum. La récupération est normalement assez simple. Avec Audacity, faites Fichier -> Importer -> Données brutes. Les réglages : 16 bits PCM, Gros Boutiste, stéréo, 44100. Normalement, il va récupérer l’audio.

Avec Audacity

Si vous avez un .m4a, vous avez enregistré en qualité élevée, et c’est déjà compressé. La méthode de Korben fonctionne. Il faut donc effacer les zéros en début de fichier, et ensuite convertir le fichier avec faad. Pour l’installer, il y a brew : brew install faad2. Ensuite, il suffit de taper faad nom_du_fichier, ça va le convertir en .wav.

Dans tous les cas, ce sont des solutions de la dernière chance et ça risque de ne pas fonctionner. Mais parfois, ça peut aider.