Опыт настройки Debian для повышения качества обработки звука с электрогитары.У меня достаточно средняя конфигурация: Athlon X3 3.4 GHz и дешевая USB звуковая карта Behringer UFO202 (лучше бы Behringer UCA222). Из софта использую qjackctl + jackd, guitarix, rakarrack. Надо сказать, что [[https://guitarix.org/ guitarix]] прожорливее на первый взгляд, чем [[http://rakarrack.sourceforge.net/ rakarrack]], хотя в обоих случаях потребление ресурсов зависит от навороченности эффектов.
Итак чего я добился: ни одного [[https://alsa.opensrc.org/Xruns XRUN]] (переполнение звукового буфера) при запуске jackd:
/usr/bin/jackd -dalsa -dhw:CODEC -r48000 -p256 -n2
Что позволяет играть без артефактов с почти незаметной задержкой.
Для этого:
1. И самое важное. Заметил что cpufreq гувернер ondemand всё равно через минуту две начинает снижать частоту ядер процессора и проскакивают единичные XRUN. Поэтому наш выбор гувернер performance (у меня 3 ядра):
cpufreq-set -c 0 -g performance
cpufreq-set -c 1 -g performance
cpufreq-set -c 2 -g performance2. Также советую nice. В debian приведем файл /etc/security/limits.d/audio.conf
к виду:@audio - rtprio 95
@audio - memlock unlimited
@audio - nice -19Обратите внимание последняя строчка была по умолчанию закоментирована.
Добавим себя в группу audio если нет:gpasswd -a user audio
Средствами qjackctl приоритет меньше 0 не выставляется. Мы сделаем -19. Для этого в свойствах ярлыков на панели запуска программ поменяем команды запуска типа:
nice -n -19 qjackctl
nice -n -19 guitarix
nice -n -19 rakarrackДочерние процессы наследуют приоритет.
URL:
Обсуждается: https://www.opennet.ru/tips/info/3163.shtml
Павел, спасибо за статью и особенно за рекомендацию звуковой карты!Не смотрели эти рекомендации по настройке https://github.com/mixxxdj/mixxx/wiki/Adjusting%20Audio... ?
На большом компьютере у меня и так работает. Я по Вашей ссылке решил применить nosmt в /etc/default/grub и apt-get install rtirq-init на Asus eepc с atom 1.6 GHz. Он показал теперь два ядра вместо четырёх, я думал производительность одного ядра будет выше Но guitarix как занимал 100% одного ядра так и занимает. Я так понял он не распараллеливается по ядрам.
Вобщем выше головы не прыгнуть.
Нетбук слабоват.
Павел, скажите, как сделать овердрайв на линуксе?
> Павел, скажите, как сделать овердрайв на линуксе?В guitarix например пресеты HarryVH. Есть и драйв и дисторшен. Очень вкусно.
Благодарю. Еще момент. Есть девайс типа FENDER SQUIER SA-105CE с пьезозвукоснимателем, нужен ли к нему предусилитель или что-то еще кроме звуковухи?
Я не знаком с пьезо, у меня epiphone les paul standart с хамбекерами. Но думаю пьезо ещё сильнее сигнал, думаю ничего не надо все рассчитано и так. У моей звуковушки есть переключатель микрофон/линейный. Работает на линейный.
> Благодарю. Еще момент. Есть девайс типа FENDER SQUIER SA-105CE с пьезозвукоснимателем,
> нужен ли к нему предусилитель или что-то еще кроме звуковухи?Только входное сопротивление под вопросом.
В обыкновенный усилитель включается, без полевых транзисторов? И тут должно.
> У меня достаточно средняя конфигурация: Athlon X3 3.4 GHzВаше непринятие потребительства вызывает уважение.
>> У меня достаточно средняя конфигурация: Athlon X3 3.4 GHz
> Ваше непринятие потребительства вызывает уважение.:) ну я все таки раскошелился на 70 косарей на гитару с комбиком маршал. Вещи есть вещи, а деньги бумага с цифрами.
Если не секрет - маршал какой?
> Если не секрет - маршал какой?
Привет. Добавлю свои 5 копеек.
По поводу частоты и говернора ЦПУ - я просто сделал правило для udev, которое при подключении звуковой карты запускает скрипт поднимающий частоту до максимальной и ставит говернор "performance". При отключении - возвращаем всё взад. RT-ядро обязательное условие. Со звуковой картой Scarlett Solo получается играть и писать(в Ardour) с 48000кГц/16(24) бит, 64 сэмпла.
А задержку в 10мс(256 сэмплов) всё же хорошо слышно, хотя можно наверное привыкнуть.
Да, обработку(искажалку) использую внешнюю, хотя guitarix вполне хорошо звучит.
Ну видите ли, аидор не ресурсоемок можно выставить буфер и меньше, а вот гитарные эффекты здорово нагружают проц, и такие же параметры установить нет возможности. В тишине, при отключённом эффекте, я согласен, можно и меньше буфер
Зато эффекты в нём вполне себе нагружают ЦПУ. К примеру, у меня 2 гитарных дорожки, 2 басовых MIDI, 1 басовая аудио, 3 барабанных. На каждой дорожке от 1 до 4-5 эффектов.
Кстати, от звуковой карты тоже зависит. У меня есть ещё Behringer Guitar Link - на ней уже нужно ставить не меньше 128 сэмплов.
Да, карточка у Вас получше, но и дороже.
Кстати, Behringer UCA222 у меня была. Возможно, конечно, это китайскаябыла подделка, но впечатление оставила одно - шумное, маломощное г..нище. Низы вообще никакие, а апгрейдить было лень. Лучше уж их U-phoria какая-нибудь. Или Scarlett-чего-нибудь.
UFO 202 на входном переключателе "линейный" у меня нормально работает. Uca 222 тоже самое только с asio 2. Для линукса без разницы.
> Кстати, Behringer UCA222 у меня была. Возможно, конечно, это китайскаябыла подделка, но
> впечатление оставила одно - шумное, маломощное г..нище. Низы вообще никакие, а
> апгрейдить было лень. Лучше уж их U-phoria какая-нибудь. Или Scarlett-чего-нибудь.Я не спорю, для звукозаписи надо конечно карту её дешевле 10 тр. Я писал заметку чисто побаловать я с гитарой.
Не дешевле, побаловаться.
> Да, карточка у Вас получше, но и дороже.Ну да, дороже. Но разочарование от плохой железки может оказаться ещё дороже.
> Привет. Добавлю свои 5 копеек.
> По поводу частоты и говернора ЦПУ - я просто сделал правило для
> udev, которое при подключении звуковой карты запускает скрипт поднимающий частоту до
> максимальной и ставит говернор "performance". При отключении - возвращаем всё взад.
> RT-ядро обязательное условие. Со звуковой картой Scarlett Solo получается играть и
> писать(в Ardour) с 48000кГц/16(24) бит, 64 сэмпла.
> А задержку в 10мс(256 сэмплов) всё же хорошо слышно, хотя можно наверное
> привыкнуть.
> Да, обработку(искажалку) использую внешнюю, хотя guitarix вполне хорошо звучит.Мне не удаётся меньше, конечно хорошо бы.
Не пробовали установить lowlatency ядро? Каков эффект?
https://xakep.ru/2007/12/13/41530/
> Не пробовали установить lowlatency ядро? Каков эффект?
> https://xakep.ru/2007/12/13/41530/Lowlatency ядро нынче в debian отсутствует, оно применено в rt ядро.
>> Не пробовали установить lowlatency ядро? Каков эффект?
>> https://xakep.ru/2007/12/13/41530/
> Lowlatency ядро нынче в debian отсутствует, оно применено в rt ядро.Я думаю, о нём и речь. На обычном ядре много не запишешь...
Да, об этом ядре шла речь, на Ubuntu и базированных оно всё ещё называется lowlatency, на Debian это rt
Как в гитариксе порезать шум? Встроенный гейт отрабатывает очень долго и тянется шумовой хвост.
> Как в гитариксе порезать шум? Встроенный гейт отрабатывает очень долго и тянется
> шумовой хвост.Неплохой гейт в в наборе LSP Effects.
Благодарю тебя белый человек. Совсем другое дело.
А как же threadirqs и rtirq?
Сначала подумал, что ты не знаешь, какой у тебя Athlon.
Уважаемый товарищ, вот как работает у меня:
Debian testing x64, обычный домашний ПК, железо среднее
Запускаю qjackctl, там всё default, звук с гитары хороший.
Один раз были xrun из-за того, что частоту дискретизации поставил 48000, когда всё в системе было настроено на 41000.
Дополню: никогда не было хрипов звука (только клиппинг из-за большого усиления сигнала, то есть отсечение звуковой волны, из-за чего ужасные обертоны идут). Никакой софт никогда не тормозил и не жрал ресурсы. Не могу сравнить guitarix и rakarrack по производительности, оба работаю, будто два блокнота запустил. Количество эффектов тоже незаметно в производительности (ставил до 10 эффектов, chorus, tremolo, echo и т.д.).Что такое задержка я в принципе не знаю, чтобы рассказать, но задержки между дёрганием струны и звуком нету. Хотя qjackctl говорит, что она 22 миллисекунды.
CPU governor на домашнем ПК никогда не трогал. Только на серверах на работе ставил performance.
С nice игрался в детстве, сейчас стараюсь не трогать его, так как никогда не возникало в этом необходимости нигде.
>[оверквотинг удален]
> guitarix и rakarrack по производительности, оба работаю, будто два блокнота запустил.
> Количество эффектов тоже незаметно в производительности (ставил до 10 эффектов, chorus,
> tremolo, echo и т.д.).
> Что такое задержка я в принципе не знаю, чтобы рассказать, но задержки
> между дёрганием струны и звуком нету. Хотя qjackctl говорит, что она
> 22 миллисекунды.
> CPU governor на домашнем ПК никогда не трогал. Только на серверах на
> работе ставил performance.
> С nice игрался в детстве, сейчас стараюсь не трогать его, так как
> никогда не возникало в этом необходимости нигде.Не знаю, как можно не заметить 22мс задержки.
Немного оффтоп. Вы не в курсе, гитара через шнурок от Rocksmith хоть как-нибудь подключается в линуксе?
Ну по "Rocksmith real tone cable" что-то гуглится... Если это просто звуковая карта, то вполне возможно, зарабоатет.
У меня Rocksmith Realtone кабель есть. В Linux безо всяких проблем определяется и работает. Я использовал связку jackd + rackarrack.
Спасибо. теперь я понял почему некоторые покупают мак =)
Ээм, не, там просто без альтернатив вообще. В темпе больше allegro на клавишах подключенных к маку играть невозможно - надо следующую клавишу уже ударять, а фидбека от предыдущей ещё нет. Зависит конечно от клавиш ещё, но ты такой короче покупаешь клавиши за 150т.р.+, а с твоим маком что они, что casio за 15 - одинаково.> macOS
>
> Raise the priority of Mixxx. While Mixxx is running, open Terminal and run sudo renice -20 `pidof mixxx` (your user must be in /etc/sudoers).
>
> If you know of any more tips for reducing audio latency on macOS, please edit this page and add them here.
Я думал, там как раз с задержками лучше чем... Звукорежиссеры знакомые юзают и говорят что вроде не могут сменить. хз
nice для процессов которые должны юзать rt? не удивительно что 256 :-)
2006-й год, athlon xp 1800+ 2гб RAM. Musix GNU Linux. 2ms latency. Дико страдал от каких-то рандомных непредсказуемых XRUN'ов. Может час всё работать на 70% загрузки CPU, а потом раз - и пошли XRUN'ы раз в несколько минут. Причиной оказалась видеокарточка с говноблобом. Поменял дрова на opensource - всё стало стабильно.
Сначала звуковуха была встроенная, потом году в 2008 купил Edirol UA25.
Наверно не в тему, но GNUradio никто не использовал для обработки звука? Юзал для работы с радиосигналами, через АЦП - безграничен по возможностям и на атоме, в дефолтной убунте (10.04) не тормозил, хотя полоса была в районе мегагерца и достаточно жёсткая привязка ко времени.
Спасибо, интересная статья. А как в Guitarix добиться эффекта sustain? Всяких ревербераторов и дилеев полно, а sustain не наблюдается.
Компрессором конечно.
Кому интересно, запустил в wine64 GuutarRig6 demo. И в wine работает аранжировщик Band in a box 2013. Работает и BB 2020, но он уже яавно не для wine, половина стилей этого комбайна не работают как надо.
Ещё важный параметр системы - планировщик ввода-вывода. Можно поиграться с ним. Я добавил в /etc/default/grub в параметры ядра elevator=deadline.
Наверное, для систем с SSD это не так актуально уже? Но нужно взять на заметку...