cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu
đŸ˜€ Ce billet a Ă©tĂ© Ă©ditĂ© le : 2043-04-04

scrcpy (« screen copy ») est un logiciel gĂ©nial, libre et open source permettant de cloner l’affichage de son smartphone Android sur son ordinateur. Plus prĂ©cisĂ©ment scrcpy permet d’obtenir l’audio et la vidĂ©o de votre smartphone via USB ou TCP/IP sans nĂ©cessiter l’accĂšs root du tĂ©lĂ©phone.

Votre tĂ©lĂ©phone devient alors pilotable depuis votre PC. Cela permet par exemple d’utiliser sur son PC des applications qui sont purement Android, sans faire appel Ă  un Ă©mulateur Android.

D’autres cas d’usages :

  • Faire un tutoriel,
  • Configurer certaines applications en copiant-collant des paramĂštres.

ඏ

Prérequis sur le smartphone

  • Le smartphone doit ĂȘtre hĂ©bergĂ© le systĂšme Android (version 5.0 ou plus) ou l’un de ces dĂ©rivĂ©s.
  • Le mode dĂ©veloppeur et le mode dĂ©bogage doivent ĂȘtre activĂ©s sur le tĂ©lĂ©phone.
  • Activer le dĂ©bogage USB

    Si vous n’avez pas activĂ© le dĂ©bogage USB (mode dĂ©veloppeur / ADB) sur votre smartphone, scrcpy ne fonctionnera pas.

    Sur votre téléphone :

    • Aller dans « ParamĂštres » > « SystĂšme » > « À propos du tĂ©lĂ©phone » > et tapoter 7 fois sur le « numĂ©ro de build » : Cela permet de faire apparaĂźtre le menu « options pour dĂ©veloppeurs » apparaĂźt dans les paramĂštres.

    • Aller dans « ParamĂštres » > « SystĂšme » > « options pour dĂ©veloppeurs » > activer « dĂ©bogage USB ».

Attention, il y a quelques considĂ©rations de sĂ©curitĂ© Ă  prendre en compte lors de l’activation du dĂ©bogage USB.

AprĂšs certaines mises Ă  jour majeur d’Android, vous devrez dĂ©sactiver le dĂ©bogage USB et le rĂ©activer pour celui-ci fonctionne.


ඏ

PrĂ©requis sur l’ordinateur

  • Un systĂšme Linux dĂ©rivĂ© de Debian tel que Linux Mint. L’application scrcpy tourne Ă©galement sur d’autres plateformes, mais ce ne sera pas traitĂ© par ce billet (il est probable que mise Ă  part l’installation, tout le reste fonctionne Ă  l’identique sur Windows).
  • Disposer des Droits de super utilisateur, pour l’installation de l’application et des dĂ©pendances.
  • Disposer d’une connexion internet.
  • Un cĂąble permettant de relier votre smartphone a votre ordinateur, au moins pour simplifier la premiĂšre connexion.

ඏ

Installation

En dehors de l’activation du « dĂ©bogage USB », il n’y a pas Ă  installer quoique ce soit sur le smartphone.

Sur l’ordinateur :

sudo apt install scrcpy

ඏ

Utilisation

Pour la premiÚre connexion, utilisez un cùble USB, cela sera plus simple. Depuis un terminal (« CTRL+ALT+T ») commencer par simplement :

scrcpy
scrcpy 1.21 <https://github.com/Genymobile/scrcpy>
* daemon not running; starting now at tcp:5037
* daemon started successfully
error: no devices/emulators found
ERROR: "adb get-serialno" returned with value 1
ERROR: Could not get device serial
ERROR: Server connection failed
scrcpy 1.21 <https://github.com/Genymobile/scrcpy>
/usr/share/scrcpy/scrcpy-server: 1 file pushed. 4.0 MB/s (39473 bytes in 0.010s)
[server] INFO: Device: OnePlus GM1913 (Android 11)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 22.2.5
INFO: Trilinear filtering enabled
INFO: Initial texture: 1080x2336
INFO: Device clipboard copied
INFO: Device clipboard copied

En cas d’erreur, commencer par vous assurez-vous que :

  • le mode dĂ©bogage soit bien activĂ© sur le smartphone,
  • le cĂąble USB soit bien connectĂ© entre l’ordinateur et le smartphone.

ඏ

Utilisation avancée

Pour commencer pensez à consulter l’aide :

man scrcpy
scrcpy --help

 Quelques options utiles

  • --always-on-top : Faites en sorte que la fenĂȘtre scrcpy soit toujours au-dessus des autres fenĂȘtres.
  • -f, --fullscreen : DĂ©marre l’application en plein Ă©cran.
  • --disable-screensaver: DĂ©sactive l’économiseur d’écran, trĂšs utile si vous faite une prĂ©sentation.
  • -n,--no-control : DĂ©sactive le contrĂŽle du smartphone, mode miroir uniquement.
  • -r,--record=mon-enregistrement.mp4 : Enregistre l’écran dans un fichier. Le format est fixĂ© par l’option --record-format s’il est dĂ©fini ou par l’extension du fichier (.mp4 ou .mkv).
  • --rotation=valeur : Force la rotation initiale de l’écran. Les valeurs possibles sont 0, 1, 2 et 3. Chacune incrĂ©mente de 90° la rotation dans le sens des aiguilles d’une montre.
  • -S,---turn-screen-off : Éteint l’écran du smartphone au dĂ©marrage de scrcpy.
  • -w,--stay-awake : Garde l’appareil allumĂ© pendant que scrcpy est en cours d’exĂ©cution, lorsque l’appareil est branchĂ©.
  • --tcpip[=ip[:port]] : Configure et reconnecte l’appareil via TCP/IP. Si une adresse de destination est fournie, alors scrcpy se connecte Ă  cette adresse avant de commencer. L’appareil doit Ă©couter sur le port TCP donnĂ© (la valeur par dĂ©faut est 5555). Si aucune adresse de destination n’est fournie, alors scrcpy tente de trouver l’adresse IP de l’appareil actuel (gĂ©nĂ©ralement connectĂ© via USB), permet mode TCP/IP, puis se connecte Ă  cette adresse avant de dĂ©marrer. Une fois la connexion Ă©tablie vous pourrez retirer le cĂąble USB.
  • --window-title=text : DĂ©fini un titre de votre choix pour le titre de la fenĂȘtre.

Usages spéciaux :

  • --push-target path : Permet de dĂ©finir le rĂ©pertoire cible pour envoyer les fichiers vers l’appareil par glisser-dĂ©poser. Il est passĂ© tel quel Ă  adb push. La valeur par dĂ©faut est /sdcard/Download/. Cette option permet de modifier le comportement du « Glisser-dĂ©poser d’un fichier non-APK ».

Exemples

  • Prendre la main sur un smartphone dont on connaĂźt l’adresse IP :
scrcpy --tcpip=192.168.1.73
  • Prendre la main sur un smartphone via la connexion USB, en plein Ă©cran sur l’ordinateur, en Ă©teignant l’écran et en dĂ©sactivant l’économiseur d’écran cĂŽtĂ© smartphone :
scrcpy -S -f --disable-screensaver # Débloquer le téléphone avant cette opération
                                   # (En général `ALT`+'F' permet de sortir du plein écran, voir les raccourcis)
  • Cas de plusieurs smartphones :

Vous aurez un message d’erreur pour vous informer qu’il y a plus d’un pĂ©riphĂ©rique : « more than one device/emulator »

Regardez la liste des pĂ©riphĂ©riques Ă  l’aide de :

adb devices
List of devices attached
8B2TE9ZM01371256    device
192.168.1.72:5555   device

Ensuite pour vous devrĂ© spĂ©cifier l’identificateur choisi Ă  l’aide de :

scrcpy -s 8B2TE9ZM01371256
scrcpy -s 8B2TE9ZM01371256 --tcpip
  • Cas du son et de l’enregistrement :

A priori, la capture du son ne fonctionne que dans le cas de l’enregistrement, mais pour cela vous devez avoir une version ≄ 2 de *srccopy.

Pour récupérer votre numéro de version :

scrcpy -v

Note : la version actuellement disponible dans les dépÎts Debian est trop ancienne.

Pour faire fonctionner ce qui est dessous, vous devrez vous inspirer de Install Latest version.

scrcpy 1.21 <https://github.com/Genymobile/scrcpy>
scrcpy 1.21

dependencies:
 - SDL 2.0.16
 - libavcodec 58.134.100
 - libavformat 58.76.100
 - libavutil 56.70.100
 - libavdevice 58.13.100

Ensuite pour avoir le son dans vos captures, vous pourrez utiliser la syntaxe suivante :

scrcpy --tcpip=192.168.1.73 --record=mon-enregistrement.mp4

Avec une version < 2, cela gĂ©nĂ©rera une vidĂ©o sans l’audio.


 Les raccourcis

Dans la liste suivante, MOD est le modificateur de raccourci. Par dĂ©faut, c’est « Alt » (gauche) ou « Super » (gauche), mais il peut ĂȘtre configurĂ© par --shortcut-mod.

  • « MOD+f » : Passe en plein Ă©cran.
  • « MOD+Left » : Rotation de l’écran Ă  gauche.
  • « MOD+Right » : Rotation de l’écran Ă  droite.
  • « MOD+g » : Redimensionner la fenĂȘtre Ă  1:1 (pixel parfait).
  • « MOD+w » ou Double-clic sur les bords noirs : Redimensionner la fenĂȘtre pour supprimer les bordures noires.
  • « MOD+h » ou Home ou clic-du-milieu : Simule un clic sur HOME.
  • « MOD+b » ou « MOD+Backspace » ou clic-droit (lorsque l’écran est allumĂ©) : Simule un clic sur BACK.
  • « MOD+s » : Simule un clic sur APP_SWITCH.
  • « MOD+m » : Simule un clic sur MENU.
  • « MOD+Up » : Simule un clic sur VOLUME_UP.
  • « MOD+Down » : Simule un clic sur VOLUME_DOWN.
  • « MOD+p » : Simule un clic sur POWER (allume ou Ă©teint l’écran).
  • Right-click (lorsque l’écran est Ă©teint) : Allume l’écran.
  • « MOD+o » : Éteint l’écran de l’appareil (mais pas sur l’ordinateur).
  • « MOD+Shift+o » : Allume l’écran de l’appareil.
  • « MOD+r » : Tourne l’écran de l’appareil.
  • « MOD+n » : DĂ©veloppe le panneau de notification.
  • « MOD+Shift+n » : RĂ©duire le panneau de notification.
  • « Mod+c » : Copier dans le presse-papier (injecte le keycode COPY, Android â©Ÿ 7).
  • « Mod+x » : Couper dans le presse-papier (injecte le keycode CUT, Android â©Ÿ 7).
  • « MOD+v » : Copie contenu du presse-papier de l’ordinateur vers le smartphone, et le colle (injecte le keycode PASTE, Android â©Ÿ 7)
  • « MOD+Shift+v » : Injecter le texte du presse-papiers de l’ordinateur sous la forme d’une sĂ©quence d’évĂ©nements clĂ©s.
  • « MOD+i » : Activer/dĂ©sactiver le compteur FPS (imprime le nombre d’images/seconde dans le journal).
  • « Ctrl+cliquer et dĂ©placer » : Pincez pour zoomer depuis le centre de l’écran.
  • Glisser-dĂ©poser un fichier APK : Installe le fichier APK depuis l’ordinateur sur le smartphone.
  • Glisser-dĂ©poser un fichier non-APK : Copier le fichier sur le smartphone (voir --push-target).

ඏ

Liens

  • Le site de scrcpy,
  • Le code source ou vous trouverez de la documentation intĂ©ressante en anglais,
  • Documentation de Scrcpy sur <Ubuntu-fr.org>.

኿


â„č 2006 - 2023 | 🏠 Accueil du domaine | 🏡 Accueil du blog