Главная >> Инструкции >> Как пользоваться scrcpy для вывода экрана Android на ПК

Как пользоваться scrcpy для вывода экрана Android на ПК

Иногда может понадобиться вывести экран Android-смартфона на экран компьютера. Например, это может быть нужно для отладки какого-либо Android-приложения, для презентации или просто в качестве зеркала. Это довольно нетипичная задача, но существует несколько способов ее решить. Можно установить одну из сторонних программ на телефон или воспользоваться инструментами разработчика и утилитой scrcpy.

В этой статье будет рассмотрено, как пользоваться scrcpy, чтобы вывести экран Android на компьютер. Данная инструкция ориентирована в первую очередь на Linux, но большинство команд будут работать и в других операционных системах, отличаться будут только пути к файлам.


Содержание статьи

Что такое Scrcpy

Scrcpy - это Open Source-инструмент, который позволяет зеркалировать видео и аудио с Android-смартфона на ПК, используя режим отладки по USB или Wi-Fi. Программа устанавливается только на ПК и не требует дополнительных приложений на телефоне. Работает в Windows, Linux и macOS. На стороне смартфона должен быть Android 5 или выше.

Помимо изображения с экрана смартфона, здесь можно получать аудио, видео с камеры, виртуальные экраны, использовать смартфон как веб-камеру (драйвер v4l2loopback в Linux), управлять смартфоном с помощью мыши и клавиатуры, копировать текст с ПК на телефон и с телефона на ПК и тому подобное.

Как установить Scrcpy

Для работы программы вам понадобится непосредственно сама программа, а также adb для связи с Android-устройством. Программу можно установить из официальных репозиториев многих дистрибутивов. Но поскольку речь идет об Android, где новые версии инструментов выходят довольно часто, в репозиториях часто будет устаревшая версия.

Установка из репозиториев Ubuntu

Если вы используете Ubuntu, то можете установить всё необходимое, выполнив команду:

sudo apt install scrcpy

Если вы планируете подключать смартфон к компьютеру по USB, этого будет достаточно. Но если нужно подключаться по Wi-Fi, вам понадобится версия adb не ниже 37, которая в репозиториях пока недоступна. Также для этой функции требуется Android 11+.

Установка с помощью бинарных файлов

На странице программы на GitHub можно найти архив программы для Windows, Linux и MacOS. Причём в архиве уже поставляется самая свежая версия adb, так что вам не нужно будет загружать её отдельно. На момент написания статьи самая свежая версия scrcpy - 4.1, и её можно загрузить, выполнив такую команду:

wget https://github.com/Genymobile/scrcpy/releases/download/v4.1/scrcpy-linux-x86_64-v4.1.tar.gz

Далее остается распаковать архив и скопировать исполняемые файлы в /usr/local/bin:

tar -xvzf scrcpy-linux-x86_64-v4.1.tar.gz -C ./ sudo cp ./scrcpy-linux-x86_64-v4.1/adb /usr/local/bin/adb sudo cp ./scrcpy-linux-x86_64-v4.1/scrcpy /usr/local/bin/scrcpy sudo cp ./scrcpy-linux-x86_64-v4.1/scrcpy-server /usr/local/bin/scrcpy-server

После этого стоит проверить версии adb и scrcpy:

adb --version scrcpy --version

Настройка смартфона Android

Для работы программы понадобятся параметры, доступные только в режиме разработчика Android. Если режим разработчика у вас ещё не активирован, необходимо открыть настройки, перейти в About Phone, найти там Build Number и тапнуть по этому пункту 7 раз. Нужно будет ввести свой PIN-код, после чего в настройках, в разделе System, появится пункт Developer Options:

Подключение Android по USB

Перед тем как начать, убедитесь, что смартфон и ПК подключены к одной WiFi-сети. Откройте настройки, затем System, затем Developer Options и найдите там и включите USB Debugging:

Телефон может запросить подтверждение, что вы уверены, что эту функцию необходимо включить. После этого подключите телефон к компьютеру по USB и выполните команду:

adb devices

На телефоне появится запрос на отладку, после подтверждения которого ваш смартфон появится в списке устройств:

Если телефон подключить не удаётся, попробуйте использовать порт USB 2.0, а если для установки вы использовали официальные репозитории, обновите версию adb до самой свежей.

Подключение Android по WiFi

Этот способ немного сложнее, но более удобен, поскольку не требуется, чтобы телефон был подключен к ПК. Откройте настройки, System -> Developer Options и включите там Wireless Debugging. И подтвердите, что нужно разрешить отладку по WiFi для этой сети:

Далее тапните по Wireless Debugging, чтобы открыть доступные опции. И там выберите Pair Device with Pairing Code:

Для создания пары на компьютере необходимо выполнить следующую команду, указав IP-адрес телефона и порт, который будет показан рядом с кодом:

adb pair 192.168.1.100:42047

Далее необходимо ввести на ПК код, который отображается на телефоне, и подтвердить создание пары:

После этого ваш смартфон появится в списке устройств adb:

adb devices

И если смартфон отображается, можно переходить к использованию scrcpy.

Как пользоваться scrcpy

У программы нет графического интерфейса, а только команда, которую можно выполнить в терминале. Ее синтаксис довольно прост:

$ scrcpy опции

С помощью опций необходимо настроить, к какому устройству будет подключаться программа и какие возможности следует использовать. Вот некоторые опции, которые могут вам понадобиться:

--serial - адрес устройства, к которому нужно подключиться. Если к компьютеру подключено только одно устройство, программа выберет его по умолчанию. Если устройств несколько, нужно будет указать, какое из них использовать.
--no-control - не управлять смартфоном с компьютера, только показывать изображение
--no-audio - не передавать аудио с устройства
--no-video - не передавать видео с устройства
--stay-awake - отключить режим сна смартфона на период взаимодействия с программой
--show-touches - показывать касания экрана смартфона
--start-app - запустить программу на смартфоне
--new-display - использовать виртуальный экран
--record - записать в файл
--no-playback - не выводить окно с видео на экран
--max-size - ограничивает максимальное разрешение видеопотока, позволяет повысить быстродействие, не передавая изображение в полном разрешении.
--video-source - указывает, откуда брать видео, доступные значения: display и camera
--audio-source - указывает, откуда брать аудио, доступные значения: output и mic
--camera-id - указывает определенную камеру, с которой следует брать данные
--camera-facing - позволяет выбрать фронтальную (front) или основную (back) камеру
--video-codec - указывает, какой кодек использовать для видео, по умолчанию h264
--max-fps - максимальное количество кадров в секунду
--orientation - указав значение 0, 90, 180 и т. д., можно выбрать альбомную или портретную ориентацию экрана, а также повернуть изображение.

Параметры, которые позволяют просмотреть информацию об устройстве:

--list-apps - показать список приложений, установленных на устройстве
--list-cameras - показать список доступных камер
--list-camera-sizes - показать список доступных размеров с камеры
--list-displays - показать список дисплеев

Вывод экрана Android на ПК

Чтобы просто вывести изображение с телефона на ПК без трансляции аудио и без управления, выполните следующую команду:

scrcpy --no-audio --no-control

Поскольку к компьютеру подключено только одно устройство, программа подключится к нему и откроет окно, в котором будет отображаться видео с телефона:

С помощью опции --max-size можно ограничить размер передаваемого видео. По умолчанию видео передается в полном качестве, а затем масштабируется до размера окна. Часто в этом нет необходимости, и можно сразу передавать только то, что нужно. Опция ограничивает высоту или ширину в зависимости от ориентации экрана:

scrcpy --no-audio --no-control --max-size=800

Если убрать опцию --no-control, то можно управлять устройством прямо с компьютера:

scrcpy --max-size=800 --no-audio

Причем здесь есть несколько горячих клавиш, которые могут вам понадобиться:

  • Клик правой кнопкой - вернуться назад
  • Клик средней кнопкой мыши - перейти на главный экран
  • Alt + стрелка вправо или влево - повернуть экран на 90 градусов
  • Alt + Shift + стрелка вправо - отзеркалить экран горизонтально
  • Alt + Shift + стрелка вверх - отзеркалить экран вертикально
  • Alt + S - открыть просмотр запущенных программ
  • Alt + M - открыть меню программ
  • Alt + R - изменить ориентацию экрана между ландшафтной и портретной

Это далеко не все сочетания клавиш, а лишь самые полезные. Остальные можно найти в официальной документации.

Ориентация экрана

Для того чтобы ориентация изображения изменилась с альбомной на портретную, нужно воспользоваться сочетанием клавиш Alt+R. Это сработает только если нужная ориентация поддерживается активным приложением:

Также можно использовать опцию --orientation:

scrcpy --max-size=800 --no-audio

Если вы меняете ориентацию экрана сочетанием клавиш со стрелками или опциями, либо с помощью опции --capture-orientation, то ориентация будет изменяться только для окна scrcpy. На телефоне всё останется как было.

Параметры видео

До этого мы запускали программу с параметрами видео по умолчанию. Но их можно настроить, чтобы получить лучшую производительность или качество. По умолчанию используются следующие параметры:

  • Кодек: h264
  • Битрейт видео: 8 Мбит/с

Можно использовать более современный кодек h265, который обеспечивает лучшее качество видео, более высокий битрейт, а также ограничить FPS, чтобы он был более стабильным. Но обратите внимание, что количество кадров в секунду будет таким, какое выдает ваш телефон: если вы смотрите видео с частотой 24 кадра в секунду, то, соответственно, будет 24 кадра в секунду, даже если в настройках вы выставили больше. Количество кадров можно вывести в терминал с помощью опции --print-fps.

Например, добавим все оптимизации для максимального качества:

scrcpy --video-codec=h265 --max-size=1920 --max-fps=30 --video-bit-rate=100M --no-audio --print-fps

Вывод виртуального экрана

Если вам нужно работать только с определённой программой, вы можете открыть её на виртуальном дисплее. При этом это не будет отображаться на основном дисплее смартфона. Посмотреть список доступных приложений можно с помощью такой команды:

scrcpy --list-apps

С помощью такой команды можно найти полное название определённой программы, например FDroid:

scrcpy --list-apps | grep fdroid

Следующая команда запускает FDroid:

scrcpy --new-display=800x600 --start-app=org.fdroid.fdroid

Вывод видео с камеры Android на ПК

Помимо экрана смартфона вы можете отображать на компьютере видео с камеры. Сначала стоит посмотреть список доступных камер и размеров изображений:

scrcpy --list-cameras

Для того чтобы показать видео с основной камеры, выполните:

scrcpy --video-source=camera --video-codec=h265 --camera-size=1920x1080 --camera-facing=back --no-audio

Или с фронтальной:

scrcpy --video-source=camera --video-codec=h265 --camera-size=1920x1080 --camera-facing=front --no-audio

Выводы

В этой статье мы рассмотрели, как вывести экран Android-смартфона на ПК с помощью scrcpy. Это может выглядеть сложно, поскольку нужно включить режим разработчика и установить программу на компьютер, но на деле это удобнее, чем использовать сторонние программы на Android, как минимум потому, что здесь нет рекламы и гораздо ниже задержка воспроизведения.

Оставьте свой Email для того чтобы получать анонсы новых статей и полезную информацию о Linux по электронной почте
Поделиться

1 комментарий к “Как пользоваться scrcpy для вывода экрана Android на ПК”

  1. Когда-то я практически ежедневно заглядывал на этот сайт, ожидая новой и весьма полезной публикации. И очень жаль, что сайт практически умер: статьи появляются раз в месяц

    Ответить

Оставьте комментарий