Лучшая производительность для создания музыки с использованием Wine или Windows-on-Virtualbox (на хосте Linux)

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

rm -i -- "$(LC_CTYPE=C ls -t dir | head -1)"

Обратите внимание, что если имя файла содержит непечатаемые символы, это может не сработать, потому что ls может исказить непечатаемые символы.

Если последний файл в каталоге находится в другом каталоге, вы получите ошибку типа rm: cannot remove 'dir2': Это каталог.

1
08.06.2018, 12:32
3 ответа

Исходя из личного опыта, при условии, что вам не нужна задержка в миллисекундах и приложения не выполняют сложных операций через DirectX для аудио, у вас не должно возникнуть проблем с использованием Wine. Я не занимался реальным производством звука с вещами в нем, но я играл в него, и даже небольшая рассинхронизация звука и видео в игре может вызвать проблемы во время игры, поэтому я приступил к измерению задержки. В моих тестах в моей системе я получил задержку около 30 мс по сравнению с тем же воспроизведением звука (, теми же файлами, тем же программным обеспечением ), изначально работающим в Linux,хотя обратите внимание, что эта система была оптимизирована для минимизации задержки, чего нет в большинстве дистрибутивов.

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

В родном приложении звук в большинстве случаев идет по следующему пути ():

Application -> [Audio Library] -> [Sound Server] -> Sound Driver -> Hardware

Аудиобиблиотека и звуковой сервер функционально необязательны. Итак, изначально у вас есть от 3 до 5 слоев, через которые проходит ваш звук, прежде чем он попадет на оборудование.

С приложением Windows, работающим под Wine, у вас есть следующее:

Application -> [Audio Library -> [Audio Library]] -> Wine -> Sound Server -> Sound driver -> Hardware

Необязательными являются только аудиобиблиотеки между приложением и Wine. Это означает, что у вас есть от 4 до 6 слоев, через которые проходит ваш звук, прежде чем он попадет на оборудование.

С приложением Windows, работающим в Windows в Virtual Box (или на другой платформе VM ), вместо этого вы получаете следующее чудовище:

Application -> [Audio Library -> [Audio Library]] -> Windows Sound Driver -> VirtualBox Emulated Hardware -> Audio Library -> Sound Server -> Linux Sound Driver -> hardware

Функционально необязательными являются только аудиобиблиотеки внутри виртуальной машины. Итак, для VirtualBox у вас есть от 6 до 8 слоев, через которые должен пройти ваш звук.

Обратите внимание, что все это предполагает, что вы в первую очередь заботитесь о средней задержке, если вы также хотите свести к минимуму разницу в задержке, тогда все становится намного сложнее, но в конечном итоге вам все равно лучше запускать нативно (или не работать под Wine. ), чем с VirtualBox.

2
28.04.2021, 23:45

Приложения, использующие функции API WIN32 или WIN64, предоставляемые Wine вместо функций, предоставляемых Windows, в принципе должны работать с той же скоростью. Wine — это не эмулятор. Однако реализация некоторых функций в Wine работает медленнее, чем в Windows, а некоторые — быстрее.

Известно, что World of Warcraft лучше работает под Wine, чем под Windows.

Виртуализация добавляет уровень, который может снижать производительность.

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

1
28.04.2021, 23:45

Wine прекрасно работает со старыми сборками Win NT4/95/98/Me/2000/XP и Vista. Он по-прежнему работает для Win 7, 8, 8.1 и 10, но все меньше и меньше совместимости между ними для Wine.

Wine в сочетании с Direct X и драйвером Asio (ASIO4ALL = бесплатно )дает отличные результаты.

Для 7/8/8.1 и 10 я бы попробовал запустить ОС в исходном виде. Wine — это скорее прямой уровень, чем в виртуальной машине, он будет больше работать в режиме эмуляции.

0
28.04.2021, 23:45

Теги

Похожие вопросы