!OBS на Arch Linux
2023-03-10
linux# Способы установки obs на Arch
# Установка Flatpak версии OBS
Как по мне самый рекомендуемый способ, после установки всё сразу идёт из коробки
- [Установка Flatpak на Arch Linux]({{< ref "/content/posts/flatpak.md" >}})
Установка Flatpak версии obs:
flatpak install flathub com.obsproject.Studio
Запуск через консоль:
flatpak run com.obsproject.Studio
# Нативная установка
Установив обычный пакет в офф репо Arch вы не получаете весь функционал OBS а лишь обрезанную его часть. Кому-то это больше нравится, однако obs полностью юзабелен и требует лишь некоторой доработки, для тех кто привык использовать весь функционал obs рекомендую лучше придерживаться установки Flatpak версии.
sudo pacman -S obs-studio
# obs-vkcapture
В целом вы можете записывать и без данной приблуды
-
Вопрос: Для чего нужен vkcapture?
Ответ: Он необходим для захвата игр напрямую через непосредственно API Vulkan или OpenGL который в итоге выжимает ещё больше дополнительной производительности с записи или потока делая всю эту работу менее ресурсоёмкой.
Требуется версия Obs 27.0 или новее
Есть 2 типа установки на выбор:
Установка для нативного obs
-
Рекомендуется:
Собирает AUR пакеты из последнего коммита git т.е является экспериментальной версией
-
Не рекомендуется
Собирает AUR пакеты из стабильной релизной ветки, их ставить не надо
Примечание: lib32-obs-vkcapture-git необходим для того чтобы захватывать 32bit'ные старые игры по типу (Worms Armageddon и т.д)
Установка для Flatpak OBS
flatpak install com.obsproject.Studio.Plugin.OBSVkCapture org.freedesktop.Platform.VulkanLayer.OBSVkCapture
# Использование obs-vkcapture
В Lutris для отдельной игры открываем Настройки - Параметры системы - ищем "Префикс команды" и вписываем либо одно, либо другое в зависимости от вашей игры.
# Для OpenGL или Vulkan API
obs-gamecapture
# Только для Vulkan API
obs-vkcapture
Сохраняем и запускаем
Для использования в Steam просто прописываем в Параметры запуска игры:
... obs-gamecapture ... %command%
Для Xorg (X11): Запускаем Obs используя команду в терминале: OBS_USE_EGL=1 obs
Теперь после запуска у нас в obs появится "Захват игры" и оставляем "Захватывать любое окно". После можно проверить запись игры или начать тестовую трансляцию.
# !Стриминг и запись OBS плагином кодировщиком GStreamer VAAPI для Arch Linux
- Github страница gstreamer-vaapi
- Arch Wiki Gstreamer-Vaapi
- Arch Wiki OBS кодировщик GStreamer
- Легкая инструкция на Reddit для Arch + Flatpak
- Видеоинструкция
Видео-тестирование кодировщика GStreamer-Vaapi записанный GloriousEggroll (разраб Proton-GE), утверждающий что больше не нужен кодировщик AMF из проприетарных драйверов AMDGPU-PRO. Показывая что кодировщик GStreamer Vaapi в разы лучше AMF и позволяет записывать аж в 4K 60 FPS 60k битрейтом и это всё без перегрузов.
Работает как и на RDNA 2 так и для старых RDNA 1.
Плюсы:
- Не требуется плагин obs-streamfx
Для установки на нативный OBS необходим сам кодировщик из офф репо Арч и плагин из AUR который будет встроен в obs.
yay -S gstreamer-vaapi obs-gstreamer
Для установки для Flatpak OBS:
flatpak install com.obsproject.Studio.Plugin.Gstreamer org.freedesktop.Platform.GStreamer.gstreamer-vaapi
Опционально требуется:
Плагин obs-vkcapture
В настройках obs вкладке "Вывод" будет доступен кодировщик GStreamer Encoder H.264 (выбираете его) и GStreamer Encoder H.265
В Encoder Type выбираем VA-API (не x264 т.к он отвечает за вычисления записи на процессоре)
На этом всё, пробуйте и экспериментируйте, вот какой битрейт необходимо выставлять
Запись:
- 4K (2160p) 60FPS = 65000-60000 bitrate
- 2K (1440p) 60FPS = 45000-50000 bitrate
- Full HD (1080p) 60FPS = 30000 bitrate
Трансляция Twitch:
- Full HD (1080p) = 6000 bitrate
Могу порекомендовать вам в тул-баре obs "Док-панели" выбрать "Статистика" она вам поможет для мониторинга cpu, пропусков кадров, fps и т.д.
# Советы и рекомендации
-
Мелкий совет от Reddit пользователя
"...Быстрый профессиональный совет по использованию плагина GStreamer. Введите
cabac=true
в большое поле для дополнительных опций, которое должно дать вам хорошее улучшение соотношения качества/битрейта."-
В: Что делает опция cabac?
О: Включает режим энтропийного кодирования cabac
-