Comment prendre des captures d’écran dans Recovery & AROMA sur Android



Nombreux sont les passionnés d’Android qui exploitent les récupérations personnalisées, comme TWRP ou ClockworkMod, pour installer des ROM, des modifications, sauvegarder et restaurer intégralement leur appareil. Ils peuvent aussi gérer leurs fichiers avec le gestionnaire AROMA. Bien que la plupart des utilisateurs n’aient pas besoin de captures d’écran en mode récupération, les blogueurs, développeurs de récupérations et d’applications AROMA, ainsi que les concepteurs de thèmes de récupération, y recourent fréquemment. Ils peuvent ainsi présenter leurs travaux. Cet article détaille une méthode simple pour effectuer des captures d’écran en mode récupération, quelle que soit la récupération personnalisée utilisée.

Contrairement au démarrage normal d’Android, la combinaison classique « volume bas + bouton d’alimentation » ne fonctionne pas en mode récupération. L’outil DDMS du SDK Android était autrefois efficace, mais ce n’est plus le cas depuis les dernières mises à jour.

Jusqu’à présent, la seule solution viable consistait à extraire manuellement les données brutes du framebuffer, puis à les traiter avec la ligne de commande ffmpeg pour obtenir l’image. Cependant, cette approche a une limite majeure : elle n’est pas universelle, car les appareils et récupérations utilisent différents formats de pixels pour le framebuffer. De plus, la commande doit être adaptée à la résolution et au facteur de « foulée » (stride) de l’appareil. Il m’est arrivé de perdre des heures pour configurer ces paramètres lors de la rédaction de guides avec captures d’écran en mode récupération.

Heureusement, un outil développé par un membre de XDA, « makers_mark », simplifie grandement cette tâche, en gérant toutes ces complexités en arrière-plan.

Découverte de « Recovery Screenshot »

« Recovery Screenshot » est un script (actuellement disponible uniquement pour Windows) qui utilise ADB et ffmpeg. Il extrait le framebuffer brut de votre appareil et le transforme en une capture d’écran au format PNG.

Avant de commencer, vous devez configurer l’outil pour votre appareil. Voici les étapes à suivre :

Configuration Initiale

Assurez-vous que votre appareil est démarré en mode récupération, connecté à votre ordinateur via USB, et que les pilotes nécessaires sont installés.

Téléchargez « Recovery Screenshot » et décompressez le fichier ZIP dans un endroit pratique de votre ordinateur. Exécutez ensuite l’outil avec le fichier RUNrs.bat. Le script affiche alors les options suivantes :

Sélectionnez la première option (en appuyant sur « 1 ») pour configurer les paramètres. Vous devrez indiquer les dimensions de l’écran de votre appareil en pixels, en saisissant la largeur (la plus petite dimension) puis la hauteur (la plus grande dimension).

« Recovery Screenshot » extraira le framebuffer de votre appareil, le traitera dans différents formats de pixels grâce à ffmpeg, et sauvegardera les fichiers PNG résultants dans un dossier nommé « Pixel_formats », situé dans le dossier de l’outil.

Examinez les images du dossier « Pixel_formats ». La plupart d’entre elles apparaîtront déformées. C’est normal, car elles ont été traitées avec des formats de pixels différents de celui de votre appareil. Cherchez l’image correcte, notez le nom correspondant à son format de pixel, puis appuyez sur une touche pour continuer.

Si vous avez trouvé l’image correcte, appuyez sur « 1 » pour finaliser vos paramètres. Si ce n’est pas le cas, appuyez sur « 2 » pour que l’outil essaie des formats moins courants. Recherchez à nouveau l’image correcte dans le dossier « Pixel_formats » (qui sera mis à jour), et notez son nom.

Indiquez ensuite le format de pixel correct tel qu’il apparaît dans le nom de l’image, sans l’extension « .PNG ». Par exemple, lors de tests avec un Nexus 5, l’image correcte était « rgb0.png », donc le format de pixel à saisir était « rgb0 ».

Une fois que vous avez validé le format de pixel, la configuration est terminée. Vous pouvez maintenant commencer à réaliser des captures d’écran. Vos paramètres sont sauvegardés, et vous n’aurez plus besoin de configurer le script pour le même appareil lors de prochaines utilisations.

Effectuer des Captures d’Écran

Après la configuration initiale, les options suivantes s’offrent à vous à chaque lancement de l’outil :

La présence de trois options pour saisir le framebuffer peut sembler déroutante. L’explication du système de double framebuffer d’Android dépasse le cadre de cet article. Cependant, l’image que vous recherchez peut se trouver dans l’un ou l’autre framebuffer. Il est donc conseillé de sélectionner la troisième option, c’est-à-dire d’obtenir les deux framebuffers. Appuyez sur « 3 » et « Recovery Screenshot » extraira et traitera les deux.

Les images résultantes sont sauvegardées dans un sous-dossier portant le nom de la date actuelle, à l’intérieur du dossier principal du script. Les images elles-mêmes sont nommées selon l’heure actuelle et le framebuffer (supérieur ou inférieur).

Si vous souhaitez capturer des captures d’écran d’un autre appareil, il peut être nécessaire de reconfigurer l’outil. Pour cela, appuyez sur « 4 » sur l’écran principal pour réinitialiser vos paramètres et recommencer la procédure. La cinquième option, « mode manuel », ne nécessite pas d’appareil connecté en mode récupération. Elle permet de spécifier manuellement les paramètres et de traiter n’importe quel fichier d’image brute.

Résultats

Voici quelques exemples de captures d’écran réalisées en mode récupération avec le script. La première montre l’écran d’accueil de TWRP, la seconde une progression de flash, et la troisième le gestionnaire de fichiers AROMA.



Bien que cela ne concerne pas tous les utilisateurs, car la majorité n’aura jamais besoin de captures d’écran en mode récupération, « Recovery Screenshot » peut être une solution précieuse pour les personnes qui, comme moi, devaient auparavant passer par des manipulations complexes pour extraire et traiter les tampons d’image avec des commandes ffmpeg. Cet outil simplifie grandement le processus, rendant la capture d’écran en mode récupération accessible.

Télécharger « Recovery Screenshot » depuis XDA-Developers