Тонкомпенсация в pulseaudio

Добрые сутки!

Хотел бы поднять тему организации тонкомпенсации (http://nabbla1.livejournal.com/23718.html) в Linux. Давайте опустим философию и демагогию о том, зачем это нужно, и сосредоточимся на самом вопросе.

Итак, что мы имеем? Kubuntu 14.04 и pulseaudio.

У alsa данный вопрос частично был решен. Во-первых появилась Alsaequal (http://www.thedigitalmachine.net/alsaequal.html), которая использует CAPS ladspa plugin. А у него уже есть готовый плагин (http://quitte.de/dsp/caps.html#ToneStack).

Однако, у нас pulseaudio. Собственно, у меня вопросы:

1) Появились ли какие-то сдвиги в плане тонкомпенсации в pulseaudio? Может я не доискал в гугле.

2) Можно ли как-то повлиять на вывод pulseaudio через микшер alsa? Или единственный вариант сносить pulseaudio?

3) Что посоветуете, кроме очевидного "бросить маяться дурью" на эту тему? Я уверен, что здесь есть энтузиасты, которым как и мне, интересно изучить этот крайне давний вопрос.

ПС: В windows тонкомпенсация таки есть. Пример: http://pc-performance.ru/uploads/posts/2012-06/1338828325_snimok.png

0
AlexBKost - 26 Февраль, 2015 - 23:29

2) Можно ли как-то повлиять на вывод pulseaudio через микшер alsa? Или единственный вариант сносить pulseaudio? Для моего не столь увесистого мозга вопрос поднятия тонкокомпенсации в linux оказался непосильным, тем более что автор первой приведенной вами ссылки, обещавший почти два года назад поведать нам сокровенные тайны, давно сам забил на это.

В любом случае сносить pulseaudio искренне не советую, даже не смотря на что-то уже придуманное для alsa.

0
Logarifm - 27 Февраль, 2015 - 09:58

Забыл войти на форум. Большое спасибо за ссылки! Но тонкомпенсация ли это? Я нашел описание работы фильтров:

http://waveshop.sourceforge.net/misc/plugins/Steve-Harris-LADSPA-plugins-sort-filename.html

Подскажите, пожалуйста, правильную последовательность. Сначала сигнал идет в limiter, а затем в dysoncompress, верно?

0
Гость - 27 Февраль, 2015 - 09:45

Большое спасибо за комментарии!

Fierta, вы не подскажете, где можно почитать про работу фильтров limiter и dyson? Я бы хотел проверить, именно это ли я ищу, но очень похоже!

0
dyug - 27 Февраль, 2015 - 12:38

первое и основное пульсеаудио НЕ ЗАМЕНЯЕТ алса, а дополняет его.

Дальше надо читать, а меня ждут телефоны и компы. :-( /работать нада/ :-)

0
Logarifm - 27 Февраль, 2015 - 13:10

Вот, это я и пытаюсь понять. Я тоже всегда думал, что pulseaduio - это посредник между alsa и приложениями. Таким образом у меня сразу возникает вопрос, почему Alsaequal не влияет на звучание? Если воспроизводится все через alsa почему ее плагины не влияют на звук?

UPD: судя по всему, динамическое сжатие - это не то. Оно срезает отдельные всплески АЧХ, насколько я понял. Это, увы, совершенно не то, что нужно. Хотя нигде почему-то подробно не написано, что есть нормализация звука.

UPD2: не то, увы. https://ru.wikipedia.org/wiki/%CA%EE%EC%EF%F0%E5%F1%F1%EE%F0_%E0%F3%E4%E8%EE%F1%E8%E3%ED%E0%EB%E0

0
Logarifm - 27 Февраль, 2015 - 14:15

Однако, уже есть позитивные сдвиги. Ведь этот пример показывает использование сторонних плагинов в pulseaudio. Скажите, можно ли заставить pulseaudio подхватить такие же точно ladspa плагины из CAPS?

+2
Logarifm - 27 Февраль, 2015 - 14:45

Похоже, что проблема решена. Ставим Caps и вот оно счастье.

#!/usr/bin/pulseaudio -nF
#
.include /etc/pulse/default.pa

load-module module-ladspa-sink sink_name=ladspa_tonestack sink_properties=device.description="ToneStack" plugin=caps label=ToneStack control=0,0.5,0.5,0.5

set-default-sink ladspa_tonestack
set-sink-volume ladspa_tonestack 35000

+1
Fierta - 27 Февраль, 2015 - 15:58
Изображение пользователя Fierta.

Опишите процесс решения данной проблемы, не поленитесь пож-ста. Может кому пригодится.
Ну и еще по этой теме: How can I apply a LADSPA plugin to a PulseAudio stream

+3
AlexBKost - 27 Февраль, 2015 - 16:30

Присоединяюсь к пожеланиям Fierta. Будет разумным оформить это в виде отдельной темы или записи в блоге с громким названием типа Тонкомпенсация в Linux (такого же еще не было). С подробным описанием что это, зачем оно надо, что дает и чем достигается. Не помешает и иллюстративный материал. Ждем с нетерпением, удачи.

0
Logarifm - 27 Февраль, 2015 - 16:47

Был бы очень благодарен за помощь в переводе терминов из описания http://quitte.de/dsp/caps.html#ToneStack

Я являюсь обладателем хорошей техники 0 класса времен СССР, но я любитель, никогда не обучался на звукорежиссера и тд. Я не знаю, что такое классический усилитель Фендера для музыкальных инструментов. В моей "радиотехнике" есть тонкомпенсация, звучит похоже.

Вообще, судя по звуку и коду это действительно оно, можно оформлять как это сделать. Займусь в ближайшее время.

0
Гость - 27 Февраль, 2015 - 19:49

Резюме: Для качественного звука тонкомпенсация не нужна.

0
Aleksandru71 - 27 Февраль, 2015 - 20:26
Изображение пользователя Aleksandru71.

Вы всё только в режиме Direct слушаете?
Регуляторы НЧ и ВЧ тоже звук портят?

0
MacLeod - 28 Февраль, 2015 - 02:33
Изображение пользователя MacLeod.

Портит обычно тот, кто их крутит =)

0
Гость - 28 Февраль, 2015 - 13:17

Регуляторы НЧ и ВЧ тоже звук портят?
Если это Вы мне, то мой ответ - да. Все возникающие вопросы по этой теме на Аудио Портал и далее.

0
Гость - 28 Февраль, 2015 - 13:20

Похоже, я не туда тыкнул.Тысячу извинений MacLeod. Ответ был для ТС.

+2
Fierta - 28 Февраль, 2015 - 01:15
Изображение пользователя Fierta.

Вообщем для того что бы работало это "дело", необходимо установить плагин:
sudo apt-get install caps

Caps включает широкий выбор классических звуковых эффектов и еще несколько основных аудиоблоку DSP, сигнал и шум генераторов. Задача заключается в предоставлении безупречного качества звука, вычислительную эффективность и отсутствие заметного ожидания.

Затем необходимо сделать следующие шаги:

1) Создать скрытую папку в домашней директории.
mkdir ~/.pulse

2) Переходим в каталог.
cd ~/.pulse

3) Создаем файл.
touch default.pa

4) Открываем в текстовом редакторе.
nano default.pa

5) Вставляем приведенное содержимое.
#!/usr/bin/pulseaudio -nF
#
.include /etc/pulse/default.pa
load-module module-ladspa-sink sink_name=ladspa_tonestack sink_properties=device.description="ToneStack" plugin=caps label=ToneStack control=0,0.5,0.5,0.5
set-default-sink ladspa_tonestack
set-sink-volume ladspa_tonestack 35000

Сохраняем, перезагружаемся, не в коем случае не делаем лицо недовольным, радуемся :)

Для чего все это нужно было делать в домашнем каталоге? Для того что бы в случае проблем можно было бы совершенно безболезненно удалить каталог с настройками и вернуться к дефолтным.

+2
Logarifm - 28 Февраль, 2015 - 12:48

Ну вот, пока я обучал студентов теор. механике, вы опередили меня и все написали :) Я бы только добавил еще ссылку на параметры плагина ToneStack http://quitte.de/dsp/caps.html#ToneStack

control=0,0.5,0.5,0.5 - передаем модель, а также значения трехполосного эквалайзера 0.5, все как указано в настройках по умолчанию. Модели есть от 0 до 8. Они разные и звучат по-разному. Это вопрос вкуса.

Всем еще раз большое спасибо! Уже который раз убеждаюсь, что здесь сидят адекватные и умные люди, которые хорошо знают любые тонкости системы!

0
Fierta - 28 Февраль, 2015 - 14:57
Изображение пользователя Fierta.

Вам спасибо за то что затронули тему организации тонкомпенсации в k/ubuntu.

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры