Вопрос или проблема
Я пытаюсь симулировать передачу экрана на устройство miracast в Linux. Похоже, что gnome-network-displays является хорошим вариантом. У меня возникли трудности с его работой, и я не был уверен, является ли причиной то, что я запускаю Linux на виртуальной машине на моем устройстве Windows. Является ли это неотъемлемой проблемой?
Сначала вам нужно скомпилировать gnome-network-displays
приложение, так как оно недоступно в формате deb-пакета для современных версий Ubuntu. Вы можете использовать PKGBUILD из ArchLinux в качестве прототипа.
Чтобы скомпилировать и установить, используйте команды ниже:
sudo apt-get update
sudo apt-get install git build-essential debhelper gnome-pkg-tools libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstrtspserver-1.0-dev libgtk-3-dev libnm-dev libpulse-dev libx264-dev meson wpasupplicant desktop-file-utils appstream-util
cd ~/Downloads
git clone https://gitlab.gnome.org/GNOME/gnome-network-displays
cd gnome-network-displays.git
meson compile
meson test --print-errorlogs
meson install -C build
Затем вам нужно переключить сетевой адаптер VirtualBox в режим моста, как показано ниже
и это должно работать.
Замечание для пользователей Ubuntu 18.04 LTS – вот пакеты из некоторого PPA вместо компиляции.
Ответ или решение
Конечно, использование приложения gnome-network-displays
на Ubuntu 20.04.3, работающей в Oracle VM VirtualBox, возможно, но требует определённых настроек и подготовки. Давайте подробно рассмотрим необходимые шаги и рекомендации.
1. Установка необходимых пакетов
Прежде всего, вам потребуется собрать gnome-network-displays
, так как на данный момент для современных версий Ubuntu данный пакет не доступен в виде deb-пакета. Процесс установки начинается с обновления системы и установки необходимых зависимостей. Предложенные команды для выполнения в терминале:
sudo apt-get update
sudo apt-get install git build-essential debhelper gnome-pkg-tools libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstrtspserver-1.0-dev libgtk-3-dev libnm-dev libpulse-dev libx264-dev meson wpasupplicant desktop-file-utils appstream-util
2. Клонирование и сборка проекта
После установки всех зависимостей необходимо клонировать репозиторий gnome-network-displays
и выполнить сборку:
cd ~/Downloads
git clone https://gitlab.gnome.org/GNOME/gnome-network-displays
cd gnome-network-displays.git
meson compile
meson test --print-errorlogs
meson install -C build
3. Сетевые настройки
Ключевым моментом в работе gnome-network-displays
является корректная настройка сетевого адаптера в VirtualBox. Для того чтобы ваше приложение могло обнаруживать Miracast отображения, необходимо переключить сетевой адаптер виртуальной машины на режим "Bridged Adapter". Это позволит вашей виртуальной машине получать IP-адрес в той же сети, что и ваш основной компьютер или другие устройства.
Для этого выполните следующие шаги:
- Откройте настройки вашей виртуальной машины в VirtualBox.
- Перейдите в раздел "Сеть".
- Измените режим сетевого адаптера на "Bridged Adapter" (мостовой адаптер), выберите ваш физический сетевой интерфейс.
4. Потенциальные проблемы
Запуск gnome-network-displays
на виртуальной машине может столкнуться с рядом проблем. Основные из них:
- Виртуальные машины могут иметь ограничения на поддержку GPU, что может негативно сказаться на производительности при работе с мультимедиа.
- Зависимости, необходимые для работы Miracast, могут не полностью поддерживаться в виртуализированной среде.
Заключение
Таким образом, gnome-network-displays
может работать на Ubuntu 20.04.3, установленной в VirtualBox, при условии правильной сборки и настройки сетевой среды. Убедитесь, что ваш виртуальный адаптер настроен на "Bridged Adapter", и вы внесли все необходимые зависимости. Успех будет зависеть от правильности выполнения всех шагов, а также от особенностей вашей сетевой среды.