Проблема с Ableton Live при запуске через winehq

Вопрос или проблема

Так что, не спрашивайте меня, почему я не использую Bitwig, потому что мне это просто не нравится, мне не нравятся lmms, ardour или reaper. Я пользователь Ableton, мой компьютер прекрасно работает на UBUNTU 20.04, и мне очень нравится эта прекрасная операционная система, но у меня есть одна проблема: я установил Ableton Live 10 на свой Linux через WineHQ, и он работает отлично, но у меня ОЧЕНЬ высокая задержка, и это сводит меня с ума.

Я попробовал установить ядро с низкой задержкой и jackaudio с wineasio, я могу настроить только 512 задержки (что-то около 16 мс), и это работает, но когда я ищу образцы в своих пакетах (например, ударные наборы и т. д.), это звучит плохо 🙁 СЛИШКОМ ПЛОХО, конечно, этого не происходит, когда я помещаю их в свой ударный набор и работаю с ними, но когда я ищу новый, ТА ЖЕ ПРОБЛЕМА, это происходит в браузере Ableton.

Мои характеристики:
4 ГБ ОЗУ
500 ГБ HDD
i7 3770 с Intel HD Graphics 4000

Есть ли решения? Спасибо в любом случае 🙂

РУКОВОДСТВО ПО ДОСТИЖЕНИЮ НИЗКОЙ ЗАДЕРЖКИ АУДИО ПРИ ЗАПУСКЕ ПРИЛОЖЕНИЯ ЧЕРЕЗ WINEHQ

Это руководство было написано с целью создания универсальной системы для музыкантов с минимальными изменениями в ОС Ubuntu. Руководство было протестировано на Ubuntu 24.04.1 LTS с установленным wine v9.17 и следующей конфигурацией системы:

  • Материнская плата MSI® Z170A
  • Процессор Intel® Core™ i5-6600
  • GeForce GTX 1650 AERO ITX 4G OC
  • Плата Inateck RedComets U21 USB 3.2 Gen 2 PCIe
  • Портативный USB 3 аудиоинтерфейс Steinberg UR22C.

Примечание: Использование дискретной видеокарты, вероятно, поможет устранить треск при низкой задержке. Кроме того, использование карты USB PCIe x4 Gen 3.0 с эксклюзивной пропускной способностью USB-порта, вероятно, поможет устранить треск при низкой задержке при использовании USB аудиоинтерфейса.

Пожалуйста, внимательно прочитайте текст перед тем, как вносить изменения в систему.

Отказ от ответственности: Это руководство написано в исследовательских целях. Автор не несет ответственности за любые последствия, включая потенциальное повреждение устройства, нарушение лицензий производителей, утрату гарантии на устройство и т.д.

ПОДГОТОВКА

ШАГ 1. Установите Wine

Включите 32-битную архитектуру

$ sudo dpkg --add-architecture i386
$ sudo apt update

Узнайте VERSION_CODENAME вашей Ubuntu

$ cat /etc/os-release

Создайте директорию “keyrings”, если она не существует

$ sudo mkdir -pm755 /etc/apt/keyrings

Загрузите ключ репозитория WineHQ

$ sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key

Добавьте ключ репозитория WineHQ из директории keyrings

$ software-properties-gtk --open-tab=3

Добавьте репозиторий WineHQ

$ sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources

См.: Debian/Ubuntu · Wiki · wine / wine · GitLab

Обновите список доступных пакетов

$ sudo apt update

Установите

$ sudo apt install --install-recommends winehq-devel

ШАГ 2. Установите полноценное ядро с низкой задержкой, затем перезагрузите систему

$ sudo apt install --install-recommends linux-lowlatency

ШАГ 3. Установите ядро по умолчанию для загрузки

Отредактируйте файл grub, затем сохраните изменения

$ sudo nano /etc/default/grub

Добавьте следующие две строки

GRUB_SAVEDEFAULT=true
GRUB_DEFAULT=saved

Замените следующую строку

GRUB_TIMEOUT=0

на

GRUB_TIMEOUT=3

ШАГ 4. Обновите GRUB, затем перезагрузите систему

$ sudo update-grub

В меню GRUB перейдите к расширенным параметрам и выберите ядро с низкой задержкой. Ваш выбор будет сохранен по умолчанию.

Примечание: Для обновлений и стандартных задач используйте общее ядро.

ШАГ 5. Установите winetricks и запустите. Используйте winetricks, чтобы установить версию Windows на Windows 10

$ sudo apt install winetricks
$ winetricks

Следуйте последовательности выбора параметров: Выберите стандартный wineprefix > Изменить настройки > win10

Примечание: Тип аудиоустройства “Windows Audio” доступен в Windows 10.


ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

E1 ШАГ 1. Убедитесь, что используется ядро с низкой задержкой (необходимо для устранения треска при низкой задержке)

$ uname -r

E1 ШАГ 2. Установите режим управления CPU в операционной системе Ubuntu на “Производительность” (необходимо для устранения треска при низкой задержке)

E1 ШАГ 3. Установите приложение

$ wine '/home/username/Downloads/setup.exe'

Примечание: Вы можете попробовать с инструментом Surge XT

E1 ШАГ 4. Запустите приложение через меню Dash

Примечание: Если приложение не появляется в меню Dash, перезагрузите систему

E1 ШАГ 5. Используйте меню настроек аудио приложения, чтобы внести следующие изменения:

  • Тип аудиодрайвера: Windows Audio
  • Выход: PulseAudio Output, Звуковая карта или Аудиоинтерфейс
  • Частота дискретизации: <samplerate>
  • Размер аудиобуфера: <buffersize>

Формула для приблизительного расчета общей задержки: общая задержка=(((alsa.output.quantum + application.quantum + audio.driver.quantum)÷rate)×1000).

Примеры использования драйвера аудио “Windows Audio”: (((128+240+128)÷48000)×1000)=10,333333333ms, (((192+480+128)÷96000)×1000)=8,333333333ms, (((256+960+128)÷192000)×1000)=7ms.
Пример использования драйвера аудио “DirectSound”: (((128+240+256)÷48000)×1000)=13ms

Примечание: Примеры были протестированы на кодеке Realtek® ALC892 и портативном USB 3 аудиоинтерфейсе Steinberg UR22C.

E1 ШАГ 6. Установите принудительную частоту дискретизации и размер буфера или правила для автоматизации

$ pw-metadata -n settings 0 clock.force-rate <samplerate>
$ pw-metadata -n settings 0 clock.force-quantum <buffersize>

Примечание: Это следует делать каждый раз, когда операционная система запускается или перезагружается.
Примечание: В идеале частота дискретизации приложения и принудительная частота дискретизации должны совпадать (для обхода задержки при преобразовании).
Примечание: Кроме того, вы можете внести изменения в следующие файлы $ sudo nano '/usr/share/pipewire/minimal.conf', $ sudo nano '/usr/share/pipewire/pipewire.conf'.

E1 ШАГ 7. Подтвердите, что изменения были установлены

$ pw-metadata -n settings

Чтобы отменить изменения force-rate и force-quantum, выполните следующее:

$ pw-metadata -n settings 0 clock.force-rate 0
$ pw-metadata -n settings 0 clock.force-quantum 0

E1 ШАГ 8. Узнайте о квантованиях (размерах буфера), частотах (частотах дискретизации), произошли ли Xruns или ошибки

$ pw-top


СМОТРИТЕ ТАКЖЕ

РУКОВОДСТВО ПО ПРОПУСКУ GPU ДЛЯ UBUNTU С УСТАНОВЛЕННЫМ ДРАЙВЕРОМ NOUVEAU

РУКОВОДСТВО ПО ПРОПУСКУ GPU ДЛЯ UBUNTU С УСТАНОВЛЕННЫМ ПРОПРИЕТАРНЫМ ДРАЙВЕРОМ NVIDIA

АППАРАТНОЕ УСКОРЕНИЕ КОДИРОВКИ NVIDIA С ИСПОЛЬЗОВАНИЕМ FFMPEG

Руководство по PipeWire

WineASIO


Устранение неисправностей

Проблема: Я слышу прерывающийся звук с треском.

Действие:

  • Установите правильную частоту (частоту дискретизации) и квант (размер буфера)

Проблема: Я слышу звук с треском.

Действие:

  • Увеличьте квант (размер буфера)

Проблема: Опции с маленькими значениями частоты дискретизации исчезли из меню настроек аудио установленного приложения в Wine.

Действие:

  • Перезагрузите систему


Ссылки

PipeWire

PipeWire

Расширенная архитектура звука Linux

Настройки PipeWire

Установите ядро по умолчанию в GRUB

Ответ или решение

К сожалению, Ableton Live, работающий через Wine на Linux, может столкнуться с проблемами, включая высокую задержку звука, что часто связано с конфигурацией и настройками системы. Давайте рассмотрим несколько подходов для снижения задержки и устранения связанных проблем с качеством звука при использовании Ableton Live 10 на Ubuntu 20.04.

Шаги по улучшению латентности звука в Ableton Live под WineHQ:

  1. Проверка и установка всех необходимых компонентов:

    • Убедитесь, что вы используете последнюю версию Wine. Для этого выполните:
      sudo dpkg --add-architecture i386
      sudo apt update
      sudo apt install --install-recommends winehq-devel
  2. Установка низколатентного ядра:

    • Установите ядро, оптимизированное для работы с аудио, с помощью команды:
      sudo apt install --install-recommends linux-lowlatency
    • После установки перезагрузите систему и выберите низколатентное ядро в меню GRUB.
  3. Настройка JACK и WineASIO:

    • Установите JACK и WineASIO, чтобы оптимизировать работу аудиодрайверов:
      sudo apt install jackd2 wineasio
    • Настройте JACK: для этого откройте qjackctl и настройте параметры сессии: уменьшите размер буфера (например, до 128 или 256) и установите соответствующую частоту дискретизации (например, 44100 или 48000 Гц).
  4. Настройка WINETRICKS:

    • Убедитесь, что вы установили winetricks и установили Windows 10 в качестве используемой версии Windows:
      sudo apt install winetricks
      winetricks
    • В меню winetricks выберите опцию для изменения настроек и установите Windows 10.
  5. Оптимизация звуковых настроек в Ableton Live:

    • Внутри Ableton Live проверьте настройки звука:
      • Выберите драйвер Windows Audio или ASIO.
      • Установите размер буфера на минимальное значение, которое ваша система может обрабатывать без дребезга.
      • Исходя из ваших тестов, значения около 128-256 сэмплов могут работать лучше.
  6. Дополнительные настройки:

    • Используйте команду для установки губернатора процессора в режим "Performance":
      sudo cpupower frequency-set -g performance
    • Обратите внимание на использование внешних аудиоинтерфейсов, так как они, как правило, предлагают меньшую задержку по сравнению с встроенной аудиосистемой.
  7. Параметры автоматизации в PipeWire (если используется):

    • Если на вашем Ubuntu настроен PipeWire, вы можете настроить его для улучшения латентности:
      pw-metadata -n settings 0 clock.force-rate <sample_rate>
      pw-metadata -n settings 0 clock.force-quantum <buffer_size>

Устранение неполадок:

  • Если вы замечаете треск или нечеткий звук, увеличьте размер буфера до 512 или 1024 сэмплов, чтобы проверить стабильность.
  • Убедитесь, что другие приложения, использующие аудиоустройства, закрыты во время работы с Ableton, и проверьте, что у вас достаточно ресурсов.

Заключение

Переход на улучшенную конфигурацию и использование низколатентного ядра значительно уменьшит задержку при работе с Ableton Live на Linux через WineHQ. Если после всех этих изменений вы все еще сталкиваетесь с проблемами, возможно, стоит рассмотреть использование nativных решений или аудиопрограмм, более совместимых с Linux.

Оцените материал
Добавить комментарий

Капча загружается...