Scrcpy, controla tu dispositivo Android desde el escritorio de Ubuntu
En el siguiente artículo vamos a echar un vistazo a scrcpy. Se trata de una aplicación gratuita y de código abierto que nos va a permitir ver y controlar dispositivos Android conectados mediante USB o de forma inalámbrica, pero con un rendimiento más bajo. La comunicación entre el servidor y el cliente se realiza a través de adb. El servidor transmite el vídeo H.264 de la pantalla de Android al cliente para decodificarlo y mostrarlo, sin almacenamiento en búfer para minimizar la latencia. Los eventos del ratón y el teclado se capturan y transmiten al servidor.
Scrcpy intenta ser ligero, ofreciendo rendimiento y calidad. Ofrece 30 ~ 60 FPS con una resolución que podemos configurar. Para que funcione la versión de Android tendrá que ser 5.0 como mínimo y la depuración de adb debe estar habilitada en el dispositivo Android. No requiere acceso de root.
Características generales de scrcpy
- Podremos controlar dispositivos Android desde el escritorio, con un ratón y un teclado.
- Se puede trabajar a través de USB o WiFi, aun que desde Wifi disminuye el rendimiento.
- Permite grabar la pantalla de Android.
- Es posible limitar el ancho y el alto de la resolución de Android.
- Se puede controlar el teléfono utilizando las teclas del ordenador.
- Permite cambiar la velocidad de bits del vídeo.
- La aplicación se puede iniciar directamente a pantalla completa (Ctrl+f).
- Para presentaciones, la aplicación puede mostrar los toques físicos en el dispositivo Android.
- Vamos a poder instalar APK arrastrándolos y soltándolos en la ventana de scrcpy, o insertar en el dispositivo arrastrando y soltando un archivo que no sea APK.
- El reenvío de audio no funciona debido a una limitación de Android.
Estas son solo algunas de las características, se pueden ver todas más en detalle en la página de GitHub del proyecto.
Instalar scrcpy en Ubuntu
Aun que este programa se puede instalar tanto en Windows, MacOS o Gnu/Linux, para este ejemplo vamos a ver la instalación en Ubuntu 18.04. Las instrucciones de instalación oficiales se pueden consultar en su página de GitHub.
Para empezar vamos a instalar las dependencias necesarias para compilar y ejecutar la aplicación en Debian, Ubuntu y Linux Mint. Abrimos una terminal (Ctrl+Alt+T) y escribimos:
sudo apt install adb ffmpeg libsdl2-2.0.0 make gcc pkg-config meson ninja-build libavcodec-dev libavformat-dev libavutil-dev libsdl2-dev
A diferencia de las instrucciones de compilación oficiales, OpenJDK no se incluye porque vamos a utilizar el .jar de scrcpy-server precompilado, para facilitar las cosas.
Descargar e instalar el servidor .jar
Continuamos descargando el último scrcpy-server-v*.jar desde la página de versiones de la aplicación. Para este ejemplo el archivo descargado lo voy a guardar en mi carpeta home.
Seguimos creando la carpeta /usr/local/share/scrcpy para copiar a ella el archivo scrcpy-server-v*.jar desde la carpeta home:
sudo mkdir -p /usr/local/share/scrcpy sudo mv scrcpy-server-v*.jar /usr/local/share/scrcpy/scrcpy-server.jar
Descargar la última versión de la aplicación
Para este ejemplo voy a descargar el archivo .tar.gz que se puede encontrar en la página de lanzamientos de la aplicación. Después lo voy a extraer en el directorio home, en una carpeta llamada scrcpy. Elimina el número de versión del nombre de la carpeta de scrcpy, para mayor comodidad.
Compilar e instalar
Partiendo de la carpeta home, primero vamos a establecer la ruta del servidor con la variable server_path a la ruta donde copiamos el scrcpy-server.jar:
server_path='/usr/local/share/scrcpy/scrcpy-server.jar'
Para compilar scrcpy nos vamos a dirigir a la carpeta scrcpy:
cd scrcpy
Ahora compilaremos e instalaremos la aplicación:
meson build --buildtype release --strip -Db_lto=true -Dbuild_server=false -Doverride_server_path="${server_path}" cd build ninja sudo ninja install
Tras esto si quieres, ya puedes eliminar la carpeta scrcpy del directorio home.
Controlar o grabar tu dispositivo Android
Para que funcione de manera correcta necesitaremos un dispositivo móvil con Android 5.0 como mínimo. Además, tendremos que tener habilitada la depuración de adb en el dispositivo Android. En algunos dispositivos, es posible que también se deba habilitar la opción de ‘Depuración USB’.
Iniciar scrcpy
Para utilizar scrcpy, conecta primero tu dispositivo Android a través de USB. Después ejecuta la aplicación en una terminal (Ctrl+Alt+T):
scrcpy
Cuando ejecutes scrcpy por primera vez, asegúrate de que la pantalla del teléfono esté desbloqueada para autorizar la aplicación con el aviso que aparecerá en el teléfono.
Grabar la pantalla de Android
Se puede grabar la pantalla de Android fácilmente mientras utilizas el teléfono desde el escritorio ejecutando la aplicación con la opción –record. Tras ella hay que indicar un nombre para el archivo y una extensión (mkv o mp4) como se puede ver a continuación:
scrcpy --record file.mp4
Desinstalar scrcpy
Si has instalado la aplicación siguiendo las instrucciones de este artículo, la podrás eliminar ejecutando estos dos comandos:
sudo rm /usr/local/share/scrcpy/scrcpy-server.jar sudo rm /usr/local/bin/scrcpy
Para saber cómo controlar el dispositivo Android de forma inalámbrica o más en detalle desde el escritorio, se pueden seguir las instrucciones de la página en GitHub del proyecto.
El artículo Scrcpy, controla tu dispositivo Android desde el escritorio de Ubuntu ha sido originalmente publicado en Ubunlog.