Добавить в корзинуПозвонить
Найти в Дзене
Андрей Данилов

Трансляция изображения с очков виртуальной реальности Oculus Quest 3 на ПК

Доброго времени суток, коллеги и пользователи VR-очков. Данная статья посвящена методу, который позволяет транслировать изображение с очков виртуальной реальности Quest 3 на Ваш компьютер. Почему я решил ее написать? К сожалению, на RU сегменте я не нашел информацию, которая смогла бы мне помочь, поэтому пришлось узнавать все с нуля. Также, эта статья выходит в свет потому, что я не один, кто столкнулся с этой проблемой. Давайте кратко обсудим плюсы и минусы представленного способа. Плюсы данного способа: Безусловно, данный способ содержит и свои минусы, которые я обнаружил в ходе настройки и работы с этим методом. Из минусов стоит отметить: VR-очки Quest 2/3 предлагают свои методы трансляции на различные устройства. Есть возможность транслировать на сайт Oculus. К сожалению, в силу определённых обстоятельств данный метод получается реализовать не у всех из-за всем известной блокировки некоторых ресурсов. Проблема иногда решается использованием СКНН. Следующий способ - транслировать
Оглавление

Доброго времени суток, коллеги и пользователи VR-очков. Данная статья посвящена методу, который позволяет транслировать изображение с очков виртуальной реальности Quest 3 на Ваш компьютер. Почему я решил ее написать? К сожалению, на RU сегменте я не нашел информацию, которая смогла бы мне помочь, поэтому пришлось узнавать все с нуля. Также, эта статья выходит в свет потому, что я не один, кто столкнулся с этой проблемой.

Плюсы и минусы.

Давайте кратко обсудим плюсы и минусы представленного способа.

Плюсы данного способа:

  • Позволяет получить хорошую по качеству картинку;
  • Минимальная задержка;
  • Позволяет транслировать изображение по локальной сети, что позволяет использовать данный метод даже в условиях отсутствия подключения к Интернету;
  • Нет необходимости использования всем известных сервисы, которые нельзя называть (СКНН);
  • Метод позволяет гибко настраивать трансляцию, что позволяет подобрать оптимальные параметры для каждого.

Безусловно, данный способ содержит и свои минусы, которые я обнаружил в ходе настройки и работы с этим методом.

Из минусов стоит отметить:

  • Повернутое изображение на 21°, что, как я понял, решаться с помощью OBS Studio. К сожалению, из-за своей некомпетентности в этой программе я не могу Вам посоветовать, как повернуть изображение. Об этом минусе мы поговорим в конце статьи.
  • Метод работает только на ПК. Надеюсь, что в начале мая 2025 года у меня дойдут руки разобраться с выводом на другие устройства, например: AndroidTV, смартфоны на базе Android. У меня уже есть некоторые методы, которые я хотел бы испытать. Если все сложится хорошо, то я также напишу статью.
  • Если Вы обнаружите еще какие-то минусы, то буду рад, если Вы дополните их в комментариях. Укажите первую строчку "Минусы:", чтобы можно было воспользоваться быстрым поиском. Спасибо!

Немного о существующих методах

VR-очки Quest 2/3 предлагают свои методы трансляции на различные устройства.

Есть возможность транслировать на сайт Oculus. К сожалению, в силу определённых обстоятельств данный метод получается реализовать не у всех из-за всем известной блокировки некоторых ресурсов. Проблема иногда решается использованием СКНН.

Следующий способ - транслировать изображение в приложение Meta* Horizon. Данный способ также, на мой взгляд, является не совсем удобным так как смотреть изображение на маленьком экране не совсем удобно и также требует использования СКНН.

Способ через программу SideQuest является сторонним. Эта программа является очень полезной для всех пользователей VR-шлемов Oculus: загрузка сторонних APK приложений, настройка графики и производительность гарнитуры и многое другое. Одной из полезных функций является трансляция изображения на монитор Вашего ПК. К сожалению, мои попытки правильно "подружить" Quest 3 с этой программой не увенчались успехом. Изображения, безусловно, было, но проблема заключалась в том, что трансляция производилась сразу с двух линз (фото-пример проблемы прилагаю).

Некорректная трансляция изображения на экран монитора.
Некорректная трансляция изображения на экран монитора.

Для того, чтобы изображение обрезалось до размеров одной линзы необходимо задать параметр Crop в настройках трансляции. SideQuest предоставляет возможность автоматической настройки для Quest 2:

We do for Quest 2 and 1 - ответил мне разработчик на форуме SideQuest.

Но данная настройка не подходит для Quest 3 не только из-за разного разрешения картинки, но и по другим причинам, которые я не установил) Я так и не смог решить проблему игнорирование программой настроек пользователя, т.е. даже если Вы измените настройки Crop на правильные для Quest 3, не факт, что у вас все заработает (я не исключаю свою некомпетентность в данном вопросе).

Вы можете сами попробовать воспользоваться этими способами, но некоторые пользователи встречаются с проблемами корректного отображения картинки. Если у Вас все получится, то буду благодарен, если Вы опишите тот способ, который Вам помог, чтобы мы вместе могли им пользоваться.

Перейдем к основному

Вступление немного затянулось, поэтому стоит уже переходить к суте этой статьи - метод трансляции на ПК.

Для трансляции мы будем использоваться приложение SCRCPY:

Это приложение отображает устройства Android (видео и аудио), подключенные через USB или TCP/IP, и позволяет управлять ими с помощью клавиатуры и мыши компьютера. Оно не требует прав суперпользователя или установки приложения на устройство. Оно работает на Linux, Windows и macOS - информация из репозитория GitHub.

Драйвера ADB

Но для работы с этим приложением нам необходимо для начала установить Драйверы Oculus ADB. Скачать их можно на официальном сайте Meta*. Драйверы ADB (Android Debug Bridge) — это драйверы для утилиты, которая предназначена для отладки устройств на Android.

Если у кого не получается скачать Драйвер с официального сайта производителя, то вот ссылка на Яндекс.Диск. Перейдя по ссылке Вы сможете скачать запакованный файл формата .zip.

После загрузки разархивируйте архив на рабочий стол. Открыв папку oculus-go-adb-driver-2.0, а затем usb_driver, Вы обнаружите следующие файлы:

Список файлов, находящихся в подпапке usb_driver папки oculus-go-adb-driver-2.0
Список файлов, находящихся в подпапке usb_driver папки oculus-go-adb-driver-2.0

Нас интересует файл с названием android_winusb.inf. Нажимаем на него правой кнопкой мыши -> Установить (для Windows 11). Разрешаем вносить изменения в наш компьютер. После завершения установки появиться диалоговое окно с информацией об успешной установки. Драйвера ADB установлены. Можно переходить к работе с приложением SCRCPY.

Установка и настройка SCRCPY

Переходим в официальный репозиторий на GitHub, пролистываем страницу примерно до середины, находим пункт Get the app, выбираем Windows, далее нас перебрасывает на страницу загрузки, где мы выбираем архитектуру нашей системы x64 или x32. После выбора нужной конфигурации системы начнется загрузка .zip файла. После скачивания распаковываем архим в любое место на диске C:/. Загрузка SCRCPY закончена. Перейдем к настройке.

Для настройки нам необходимо добавить папку scrcpy-win64-v3.2 (актуальная версия на момент написания статьи. У вас она может быть новее) в переменные среды Вашей операционной системы. Этот шаг, как по мне, является обязательным во избежании ошибок.

Для того, чтобы добавить папку в переменные среды нажимаем сочетание клавиш Win + R, которое откроет нам окно Выполнить. В строке пишем:

sysdm.cpl

и нажимаем Enter. Должно появиться окно свойств системы. Переходим во вкладку Дополнительно -> Переменные среды. В разделе Системные переменные находим переменную PATH. Выделяем ее и нажимаем кнопку Изменить. Далее, справа в окне нажимаем кнопку Создать. Вводим полный путь до папки scrcpy-win64-v3.2. Путь должен быть примерно вот такой:

C:\Users\Имя_пользователя\Desktop\scrcpy-win64-v3.2

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

Получаем IP шлема во внутренней локальной сети

Этот шаг является обязательным для корректной работы! Для получения IP адреса запускаем командную строку (Win+R -> cmd). Подключаем наши очки VR к компьютеру по проводу (не забудьте включить гарнитуру). В командной строке вводим следующий запрос и нажимаем Enter:

adb shell ip addr show wlan0

В третьей строчке мы можем обнаружить информацию следующего вида:

inet XXX.XXX.XX.XXX/XX brd XXX.XXX.XX.XXX scope global wlan0

В место X у каждого будут свои числа. Нас интересует IP адрес, заключенный между inet и /XX. Только он и ничего более! Не нужно копировать inet и /XX!!! Записываем этот адрес где-нибудь на листочке, он нам еще пригодиться. С получение IP адреса закончили. Переходим далее.

Создание файла .bat для запуска трансляции

Переходим в любую папку на своем диске C:/ (у меня эта папка пользователя по пути C:/Users/Имя_пользователя/). В этой папке создаем текстовый файл и открываем его. В текстовый документ копируем следующий код:

echo
echo Connect the USB cable.
pause
echo
adb devices
echo
echo Changing to TCP IP port to 5554.
adb -d tcpip 5554
adb connect XXX.XXX.XX.XXX:5554
echo
echo Quest 3 must be ON. Disconnect the USB cable.
pause
echo Put on your helmet
pause
scrcpy --video-bit-rate 16M --crop 1800:1104:2100:660 --video-buffer=50 --audio-dup --angle=-21 --max-fps=120 --window-title 'CastingQuest3' -f

Помните, что в начале статьи я упомянул, что у меня не получилось решить проблему поворота изображения? Так вот, я Вас обманул. Извините) Разберем по порядку то, что вообще написано в этом шайтан-тексте.

Команда echo попросту выводит сообщение в консоль. Обратите внимание на эту команду, т.к. она выводит важную информацию о правильном порядке действий, которые обязательно нужно соблюдать! В противном случае трансляцию попросту не запуститься! Если у Вас есть трудности с переводом текста, то обратиться к Яндекс.Переводчику.

Для начала команда

echo Connect the USB cable

просит нас подключить наши включенные очки к компьютеру по проводу. После подключение необходимо нажать Enter. Затем в дело вступает ADB, который настраивает наше подключение с подключением по IP адресу и порту с помощью команд:

adb -d tcpip 5554
adb connect XXX.XXX.XX.XXX:5554

Замените XXX.XXX.XX.XXX на IP адрес VR-гарнитуры, который Вы записали на бумажку. После подключения, которое может быть произойти не сразу (иногда задержка до ~30 секунд), программа попросит нас отключить кабель от гарнитуры. Зател мы снова нажимаем Enter. Далее нас просят надеть очки (очень важный пункт. Как показала практика, без него трансляция не запуститься. Не переживайте, после запуска трансляции очки можно свободно снимать, не обрывая поток передачи данных).

Последняя команда является самой важной

scrcpy --video-bit-rate 16M --crop 1800:1104:2100:660 --video-buffer=50 --audio-dup --angle=-21 --max-fps=120 --window-title 'CastingQuest3' -f

В этой команде и заключается вся прелесть. SCRCPY позволяет гибко настраивать наше подключение. Подробную информацию Вы всегда можете найти в документации к SCRCPY. Так называем флаг "--video-bit-rate 16M" задает битрейт видео. Можете поэкспериментировать с ним для достижения максимальной выходной "мощности". Следующий важный параметр "--crop" обрезает нам картинку до нужно размера (с указанной настройкой трансляция ведется из правого "глаза" гарнитуры. Этот параметр также можно менять на свое усмотрения, чтобы допиться хорошей картинки. "--crop" представлен в следующем виде "width:height:left:top". Параметр "--video-buffer=50" определяет буфер для передачи видео. "--audio-dup" согласно официальной документации "Этот источник звука поддерживает воспроизведение звука на устройстве во время зеркалирования". "--angle=-21" поворачивает изображение на -21 градус, чтобы горизонталь изображения с линз соответствовало горизонтали экрана и изображение не было "заваленным". Параметр --max-fps=120 также можно установить свой (определяет частоту кадров в секунду). "--window-title 'CastingQuest3'" задает название окна трансляции (обязательно должно быть на английском). "-f" позволяет выводить трансляцию на полный экран без рамки. Если Вам такой формат не удобен, то можете удалить этот флаг.

С разбором команд мы закончили. Теперь нам необходимо сохранить файл в формате .bat. Для этого слева в верхнем углу выбираем Файл -> Сохранить как. Тип файла выбираем Все байлы (*.*). Вводим название нашего файла и после вставляет .bat, чтобы наш файл сохранился в нужном формате. В итоге у Вас должно получиться что-то на подобии этого:

То, как должны выглядить настройки сохранения файла
То, как должны выглядить настройки сохранения файла

Затем выбираем путь для сохранения файла. Советую сохранять в любое место на диске C:/.

После сохранения Вы можете создать ярлык на рабочем столе, чтобы было удобно запускать файл. Все готово!

Запускаем трансляцию!

Запускаем файл от Имени Администратора. Подключаем наши VR-очки по проводу к компьютеру. После нажимаем Enter. После подключения в консоль будет выведено сообщение "Quest 3 must be ON. Disconnect the USB cable.". Отключаем нашу гарнитуру от компьютера. Нажимаем Enter. Программа попросит надеть шлем "Put on your helmet". Надеваем и нажимаем Enter. Программа запустит трансляцию! На экране Вы увидите то, что видите в очках:

Изображение с очков VR.
Изображение с очков VR.

Мои поздравление. Вы справились! Все готово и все работает. Приятного пользования!

Благодарность

Хочу выразить благодарность технической поддержки SideQuest за предоставление необходимой информации, которая поспособствовала написанию этой статьи. Также благодарю авторов каналов La Baia di Ben и Zimtok5 за видеоролики о настройки и установки ADB и SCRCPY.

Заключение

Я искренне надеюсь, что эта статья поможет любителям VR настроить трансляцию изображения на компьютер. Если Вам понравился обзор, то поставьте палец вверх. Пишите комментарии, задавайте вопросы, делитесь своими настройками трансляции и опытом работы с SCRCPY. Если у кого-то появиться желание поддержать меня, то пожертвования приветствуются. Всем удачи и до следующей статьи!

*Компания признана экстремистской организацией на территории РФ