ОБСЛУЖИВАНИЕ И РЕМОНТ ФОРТЕПИАНО

ГОСТЕВАЯ ВЕРСИЯ ФОРУМА


Начать новую тему Ответить на тему  [ Сообщений: 75 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 28 мар 2018, 14:39 
Активный завсегдатай
Аватара пользователя
Буду всем признателен за примеры *.ept файлов реальных инструментов присланные любыми способами. Мне в ЛС и при этом ZIPовать чтобы меньше места занимали. Я их потом с форума смогу удалить чтобы места не занимали. Ещё лучше - ссылками на всякие yandex disk, google drive, dropbox и т.п. Буду использовать их при анализе алгоритма.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Сергей "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 02 апр 2018, 21:06 
Активный завсегдатай
Аватара пользователя
Как на самом деле работает EPT:

Если обратиться к тексту самой программы то становятся понятны детали её реального поведения. Так, например, пресловутый метод Монте-Карло для поиска минимальной энтропии запускается лишь в самом конце (п.4). И этот этап - самый длительный. Но cперва необходимо выстроить большое количество "костылей" без которых ни о каком даже посредственном конечном результате не может быть и речи. Поэтому список действий программы выглядит следующим образом (если только я все правильно там понял):

1. Выстроить ET
2. Предобработка записанного звука
2.1. Нормализовать спектры - для всех клавиш
2.2. "Почистить" спектры - для всех клавиш. Обнуляются призвуки, непохожие по их местоположению на обертоны.
2.3. Отрезать "лишние" частоты снизу от базовой - для всех клавиш
2.4. Применить кривые равной громкости - для всех клавиш
2.5. Экстраполировать пропущенные при записи звуки
2.6. "Улучшить" пики высоких частот - для всех клавиш
2.7. "Смягчить" спектры - для всех клавиш
3. Выстроить кривую в изначальную растяжку (stretch) по ингармонизму
4. Собственно минимизация энтропии
4.1. Вычислить начальную энтропию
4.2. Случайным образом выбрать либо шаг 4.2.a либо 4.2.b
4.2.a. Сменить pitch одной случайной клавиши на случайную величину (сдвиг может составлять от 1 до 5 и даже до 30 центов - в зависимости от расположения клавиши в диапазоне)
4.2.b. Сдвинуть на 1 цент вверх или вниз целую секцию клавиш, выбранную случайным образом слева или справа от случайно выбранной клавиши
4.3. Оценить получившийся результат в смысле энтропии и сохранить изменения если они привели к её уменьшению
4.4. Снова перейти к п. 4.2.

Про "костыли" я заметил не случайно. Дело в том что пункт 4. сам по себе - чрезвычайно хлипкая операция. Без всей этой подготовки в пп.1-3 и без п.4.2.b он довольно быстро, уже минут за 5 работы застревает и вообще перестаёт уменьшать энтропию. Не говоря уже о том что он не выстраивает кривую по Рейлсбеку без п.3 и п. 4.2.b. Я проверял это отключением соответствующих кусков программы. Пункт 4.2.b действительно сам по себе приводит к требуемому загибу кривой настройки на концах, даже если п.3 не применялся.

Шаги 1-3 и 4.2.b предприняты авторами в основном с целью избежать попадания в так называемый false minima. То есть, скатывания алгоритма в ямку из которой он уже не может в дальнейшем выбраться самостоятельно. Именно поэтому п. 4.2.b, хоть и выглядит громоздким, сам по себе способен выдернуть застрявший алгоритм практически из любого false minima чтобы продолжить вычисления.

Отдельно ещё три наблюдения:
1) Программа позволяет сдвигать все клавиши кроме A4. Не уверен что это полезно вообще и для настройки самой первой октавы в частности. Поправьте меня если это не так.
2) Сильно сдвинутые ноты алгоритм действительно затрудняется вернуть "на место". Это, конечно, проблема неустойчивости алгоритма и её надо решать.
3) Время от времени программа безо всяких на то причин сообщает "Manual change of tuning curve during computation" что вероятно является просто багом который нужно будет исправить.




Я проделал некоторые специальные замеры работы программы из которых ясно что хотелось бы улучшить в смысле скорости. Вот эти замеры:

За 30 минут работы программа просчитала 22214 вариантов энтропии что составляет 740 вариантов в минуту или всего 12 вариантов в секунду.
245 вариантов из просчитанных 22214 (лишь 1,1%) привели к уменьшению энтропии.
По варианту 4.2.a. было 179 улучшений энтропии из 5306 или 3,37%.
По варианту 4.2.b. было 61 улучшений энтропии из 16908 или 0,36%.
Под конец 30-ти минутного интервала энтропия улучшалась примерно раз в 1-2 минуты (в 5-м знаке после запятой).




Что же делать?
Авторы сообщили нам только лишь что энтропия у настроенного пианино меньше чем у расстроенного. Все остальные вопросы остались без ответа. В том числе - самый главный - о состоятельности самого критерия энтропии для настройки фортепиано. Можно на разные лады сформулировать эти вопросы. Например:

1) Насколько хорошего результата при настройке можно достичь пользуясь одним лишь критерием энтропии?
2) Где энтропия больше - у инструмента настроенного профессионалом вручную или у настроенного EPT?
3) Допустим, абсолютный минимум энтропии достигнут. Насколько хорошо звучал бы такой инструмент? А так ли стоит к нему стремиться?
4) Можно ли по абсолютному значению энтропии отличить расстроенный инструмент?
5) Для двух разных настроек по EPT одного и того же инструмента с энтропией A и B где A>B всегда ли профессионал-настройщик скажет что вариант A хуже чем вариант B?
и т.д.


А теперь - про то что реально можно было бы сделать.

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

Насколько я понимаю, реальный настройщик никогда не работает со всей клавиатурой сразу. Скорее - с её участком, либо - с отдельным интервалом. То есть, в отличие от EPT он понимает что бОльшая часть клавиатуры в данный момент не должна подвергаться изменению. На этом факте, я считаю, должна быть устроена оптимизация перебора вариантов в EPT. Например, для того чтобы "подогнать" один интервал под минимальную энтропию программе необходимо будет полностью перебрать, грубо, 100*100=10000 вариантов, что она сможет сделать уже за реальное время в несколько минут максимум. Разумеется, и здесь также весьма возможны разумные оптимизации.

Иными словами, можно было бы попробовать, взяв за основу какой-нибудь из реальных планов настройки, превратить его в компьютерный алгоритм, подменив в нём критерий биений на критерий энтропии ПО ВСЕЙ КЛАВИАТУРЕ. Далее можно было бы заставить компьютер прокрутить этот же план (или иной) даже несколько раз подряд. Например - для проверки и улучшения получающегося строя. Естественно, на всех этапах следует последовательно стремиться к снижению значения энтропии. Я подчеркиваю здесь - ПО ВСЕЙ КЛАВИАТУРЕ - поскольку авторы уже пробовали применять критерий энтропии к отдельным интервалам и, как они выяснили, это не привело к желаемому результату.

Малозначащий (по частотам) мусор наверное, можно почистить где-нибудь в пп. 2.2. и 2.3. Впрочем, к сильному сокращению перебираемых вариантов это не приведет.
Что касается возможности оперировать интервалами менее 1 цента - тут, по-моему, сложнее. Пока не знаю как это сделать. Возможно, позже.

Вот такие идеи.

P.S.: Пустяки: Слегка поправить некоторые русские переводы. Например:"Остоновить вычисления" и "Количество клавиш А" - там где должно быть "Номер клавиши Ля".


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Сергей "Спасибо" сказали:
= [ Новый Рояль ] =, VladAn, краскюн
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 02 апр 2018, 23:10 
Активный завсегдатай
Аватара пользователя
Klopff писал(а):
...настроить сначала хорошую октаву А3 - А4. Вот он и сдвигает один из звуков этой октавы туда-сюда, иногда и на 1 цент, иногда больше, иногда меньше,...

Значит ли это что и A4 - тоже сдвигает?


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 03 апр 2018, 06:46 
Мэтр
Аватара пользователя
Сергей еще один писал(а):
Klopff писал(а):
...настроить сначала хорошую октаву А3 - А4. Вот он и сдвигает один из звуков этой октавы туда-сюда, иногда и на 1 цент, иногда больше, иногда меньше,...

Значит ли это что и A4 - тоже сдвигает?

Если А4 по камертону, то сдвигать надо А3, пока не получится "идеальная" октава. Если по камертону А3, то сдвигаем А4.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Klopff "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 03 апр 2018, 10:05 
Активный завсегдатай
Аватара пользователя
Если необходимости двигать оба конца интервала как правило не возникает то моё предложение по жесткому следованию плану настройки выглядит радикальным по скорости. Просчет одного интервала - несколько секунд. Просчет всех нескольких десятков интервалов для полной настройки - несколько минут. Вопрос лишь в качестве результата. Да, уменьшение энтропии за которым мы следим по идее не даст нам ухудшить то что было. Но этого недостаточно. Именно по этой причине я и предлагал прокрутить подобные планы несколько раз, возможно, по-разному. Как именно их менять раз от раза, я не знаю. Важно подключить элемент перебора. Ведь до сих пор никакого метода Монте-Карло было не нужно. При жестком следовании плану настройки мы могли просто просчитывать все 100 (или меньше) вариантов сдвига ноты и выбирать каждый раз самый оптимальный по энтропии. Теперь, когда "у нас появилась куча времени", может быть, имеет смысл поперебирать еще варианты...


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Сергей "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 03 апр 2018, 10:58 
Старожил Форума
Аватара пользователя
Klopff писал(а):
Сергей еще один писал(а):
Klopff писал(а):
...настроить сначала хорошую октаву А3 - А4. Вот он и сдвигает один из звуков этой октавы туда-сюда, иногда и на 1 цент, иногда больше, иногда меньше,...

Значит ли это что и A4 - тоже сдвигает?

Если А4 по камертону, то сдвигать надо А3, пока не получится "идеальная" октава. Если по камертону А3, то сдвигаем А4.

:like:

_________________
: Заранее благодарен :
= [ Новый Рояль ] =


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 08 май 2018, 19:36 
Активный завсегдатай
Аватара пользователя
Снова вопрос и снова нужна ваша помощь. Ранее в этой теме я упоминал вот об этом этапе работы алгоритма EPT:

Сергей еще один писал(а):
Как на самом деле работает EPT:
...
1. Выстроить ET
...


То есть, построить исходную кривую настройки по типу Equally Tempered.

Теперь я разобрался в программе подробнее и настала пора критически оценить то что именно делается на этом этапе. Постараюсь перевести это на язык настройщиков а к вам просьба - высказаться о возможных мотивах разработчиков и об обоснованности/необоснованности принятых ими решений. Дело в том что я не хотел бы ломать то что там сделано хорошо. Но раз наша цель - монотонное размазывание биений по всему диапазону - имеет смысл обсудить как там это работает внутри чтобы сделать не хуже.

Итак, начальная кривая настройки выстраивается с учетом замерянного ранее негармонизма струн. Это потом уже метод Монте-Карло в EPT стартует с этой кривой и пытается подобрать еще более хорошие подстроечные значения для всех клавиш. Авторы считают что раз исходную кривую они построили с учетом негармонизма то значит оптимальное решение уже где-то рядом. И это правильно. Поэтому они принудительно ограничивают дальнейшие плутания метода Монте-Карло всего +/-5 центами в середине диапазона и +/-30 центами ближе к краям чтобы сократить перебор. Я обратил внимание что отклонения построенной кривой от ровной горизонтали на практике могут достигать 30-70 центов на краях (соответствено в плюс сверху и в минус снизу диапазона). Но как учитываются обертоны при построении начальной кривой? Постараюсь рассказать ниже.

Октава A3-A4 выстраивается по A4 в соответствии с негармонизмом A3 по совпадению обертонов 4:2. Все промежуточные клавиши раскидываются равномерно между A3 и A4 - делением расстояния между A3 и A4 в центах на 12. Кусок A4-A5 обрабатывается аналогично - по негармонизму A5. Но по обертонам 2:1 соответственно.

Потом октавными ходами (с учётом негармонизма конечно) предварительно "настраиваются" все остальные клавиши вверх и вниз:
Вверх октавные ходы обеспечивают нечто среднее между сдвигом для совпадения обертонов 4:2 и 2:1 (в постоянном весовом соотношении 0.3 и 0.7 соответственно).
Вниз октавные ходы обеспечивают нечто среднее между совпадением обертонов 6:3 и 10:5 (при этом весовой коэффициент последнего сдвига возрастает к концу диапазона с 0 до 1). Никаких других интервалов на данном этапе не учитывается.

Насколько я понял, нечто среднее здесь как раз и обеспечивает некоторую возрастающую изначала растянутость октав. Вот такая получается отправная "кривая". Как видите, собственно биения на данном этапе не учитываются хотя в принципе могли бы.

Ну и потом, напоминаю, запускается уже поиск минимальной энтропии с ограничением на сдвиг настройки на 30 центов по краям и на 5 в середине диапазона.

Вопросы:
1) Как вы считаете, действительно ли при таком подходе идеальный строй оказывается где-то среди вариантов просматриваемых случайным алгоритмом а не "за бортом"?
2) Если, например, попытаться выстраивать эту изначальную кривую в соответствии с монотонно и равномерно изменяющимися биениями, явится ли это заметным улучшением подхода?


Авторы EPT утверждают что некоторые ошибки в выставлении изначальной кривой компенсируются последующим проходом метода Монте-Карло, то есть, перебором. Но я неоднократно наблюдал как этот перебор может работать сутками и даже по прошествии суток всё еще выдает иногда варианты с еще более "хорошей" энтропией. Очень не хотелось бы так долго ждать оптимального результата. Поэтому вся надежда - именно на изначально принудительно расписанные отклонения обертонов в герцах/биениях c учетом негармонизма. Примерно так как указано здесь или здесь.

P.S.: под "монотонным размазыванием биений по всему диапазону" и "монотонно и равномерно изменяющимися биениями" я конечно подразумеваю "чтобы в хроматических последовательностях одноименных консонансов частота биений изменялась плавно по всему диапазону"


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Сергей "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 09 май 2018, 02:37 
Активный завсегдатай
Аватара пользователя
К ночи я что-то слегка запутался и снова возникли вопросы...

Klopff писал(а):
чтобы все октавы звучали как можно более чисто, то есть с минимально заметными биениями, а остальные интервалы настроить так, чтобы в хроматических последовательностях одноименных консонансов частота биений изменялась плавно по всему диапазону. Если настройка этим требованиям отвечает полностью, она идеальна.


Хочется спросить:
1) С хорошо известными консонансами (кроме октав) вроде всё ясно - там биения считаются по одним и тем же обертонам. Но правильно ли я понимаю что настройка октав в этом смысле действительно представляет собой нечто особенное? То есть в отличии от вот этих вот интервалов:

3 = малая терция (Minor third) = 6:5 = -12
4 = большая терция (Major third) = 5:4 = +8.5
5 = кварта (Perfect fourth) = 4:3 = +1.1
7 = квинта (Perfect fifth) = 3:2 = -0.75
8 = малая секста (Minor sixth) = 8:5 = -14
9 = большая секста (Major sixth) = 5:3 = +10

октавы могут настраиваться и настраиваются по биениям различных обертонов - в зависимости от того где именно находится эта октава (как например пытаются проделать это авторы EPT - см. моё предыдущее сообщение здесь же)?

И вдогонку ещё вопрос:

2) Правильно ли я понимаю что если математически идеализировать формулу "в хроматических последовательностях одноименных консонансов частота биений изменялась плавно по всему диапазону" то эта самая частота для вышеупомянутых интервалов должна расти ровно в Изображение раз при каждом таком хроматическом шаге вверх? Но поскольку идеал как всегда не достижим, нас вполне устроило бы любое достаточно равномерное увеличение на каждом шаге? Для всех консонансов, естественно.

P.S.: и правильно ли я перечислил все известные консонансы меньше октавы? не уверен


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Сергей "Спасибо" сказали:
= [ Новый Рояль ] =
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 09 май 2018, 06:57 
Старожил Форума
Аватара пользователя
Сергей : ....
Хочется спросить:
1) С хорошо известными консонансами (кроме октав) вроде всё ясно - там биения считаются по одним и тем же обертонам. Но правильно ли я понимаю что настройка октав в этом смысле действительно представляет собой нечто особенное? То есть в отличии от вот этих вот интервалов:
3 = малая терция (Minor third) = 6:5 = -12
4 = большая терция (Major third) = 5:4 = +8.5
5 = кварта
...
= = =
Да, ув. Сергей, я проверяю ВСЕ ИНТЕР. ! ! ! :search:

_________________
: Заранее благодарен :
= [ Новый Рояль ] =


Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Entropy Piano Tuner
СообщениеДобавлено: 10 май 2018, 06:51 
Мэтр
Аватара пользователя
Сергей еще один писал(а):
...к вам просьба - высказаться о возможных мотивах разработчиков и об обоснованности/необоснованности принятых ими решений. ...
... Вот такая получается отправная "кривая". Как видите, собственно биения на данном этапе не учитываются хотя в принципе могли бы.
Ну и потом, напоминаю, запускается уже поиск минимальной энтропии с ограничением на сдвиг настройки на 30 центов по краям и на 5 в середине диапазона...

Судя по Вашему описанию, Хинриксен и Ко наверняка не только консультировались у хорошего профи-настройщика, но и, похоже, скопировали порядок и способ действий из популярного софта. Здесь все очень разумно.
Сергей еще один писал(а):
Вопросы:
1) Как вы считаете, действительно ли при таком подходе идеальный строй оказывается где-то среди вариантов просматриваемых случайным алгоритмом а не "за бортом"?
2) Если, например, попытаться выстраивать эту изначальную кривую в соответствии с монотонно и равномерно изменяющимися биениями, явится ли это заметным улучшением подхода? ...

1. Это уже та самая "четверочка".
2. Думаю, что да.
Сергей еще один писал(а):
...снова возникли вопросы...
1) С хорошо известными консонансами (кроме октав) вроде всё ясно - там биения считаются по одним и тем же обертонам. Но правильно ли я понимаю что настройка октав в этом смысле действительно представляет собой нечто особенное? То есть в отличие от вот этих вот интервалов:

3 = малая терция (Minor third) = 6:5 = -12
4 = большая терция (Major third) = 5:4 = +8.5
5 = кварта (Perfect fourth) = 4:3 = +1.1
7 = квинта (Perfect fifth) = 3:2 = -0.75
8 = малая секста (Minor sixth) = 8:5 = -14
9 = большая секста (Major sixth) = 5:3 = +10

октавы могут настраиваться и настраиваются по биениям различных обертонов - в зависимости от того где именно находится эта октава (как например пытаются проделать это авторы EPT - см. моё предыдущее сообщение здесь же)?

Именно так. Но в том, что касается терций и секст, (да и кварт и квинт, но в заметно меньшей степени) это справедливо только в середине диапазона ф-но, примерно F2 - F5. Ниже - в уши лезет "каша" из биений в более высоких тонах совпадений, они здесь сильнее основных и маскируют их. Выше этого участка - основные биения становятся настолько частыми, что уже не воспринимаются как биения, а просто - грязь. А в октавах настройщик ищет оптимум - некий минимум суммарно воспринимаемых биений на уровнях 2:1, 4:2, 6:3 и т. д. с учетом их относительной заметности на слух. Получается, обычно, почти так, как описано у Вас:
Сергей еще один писал(а):
Октава A3-A4 выстраивается по A4 в соответствии с негармонизмом A3 по совпадению обертонов 4:2. Все промежуточные клавиши раскидываются равномерно между A3 и A4 - делением расстояния между A3 и A4 в центах на 12. Кусок A4-A5 обрабатывается аналогично - по негармонизму A5. Но по обертонам 2:1 соответственно.

Потом октавными ходами (с учётом негармонизма конечно) предварительно "настраиваются" все остальные клавиши вверх и вниз:
Вверх октавные ходы обеспечивают нечто среднее между сдвигом для совпадения обертонов 4:2 и 2:1 (в постоянном весовом соотношении 0.3 и 0.7 соответственно).
Вниз октавные ходы обеспечивают нечто среднее между совпадением обертонов 6:3 и 10:5 (при этом весовой коэффициент последнего сдвига возрастает к концу диапазона с 0 до 1).

Сергей еще один писал(а):
И вдогонку ещё вопрос:
2) Правильно ли я понимаю что если математически идеализировать формулу "в хроматических последовательностях одноименных консонансов частота биений изменялась плавно по всему диапазону" то эта самая частота для вышеупомянутых интервалов должна расти ровно в Изображение раз при каждом таком хроматическом шаге вверх? Но поскольку идеал как всегда не достижим, нас вполне устроило бы любое достаточно равномерное увеличение на каждом шаге? Для всех консонансов, естественно.

Прирост частоты биений на каждом хроматическом шаге в центре диапазона - да, (почти) ровно 2^(1/12). Выше и ниже середины, - наверное, побольше, в соответствии с кривой Рейлсбека. Да, вполне устроило бы.
Сергей еще один писал(а):
P.S.: и правильно ли я перечислил все известные консонансы меньше октавы? не уверен

Правильно. Только частОты биений указаны для какой-то одной ноты в основании интервала (сейчас мне лень искать, для какой именно). Для других нот - в соответствии с ростом или спадом в 2^(1/12) на каждый полутон.


Вернуться к началу
 Профиль  
Cпасибо сказано 
За это сообщение пользователю Klopff "Спасибо" сказали:
= [ Новый Рояль ] =, Сергей
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 75 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.

ГОСТЕВАЯ ВЕРСИЯ ФОРУМА



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Добавить в Избранное
Добавить в Избранное

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Вы можете создать форум бесплатно PHPBB3 на Getbb.Ru, Также возможно сделать готовый форум PHPBB2 на Mybb2.ru
Русская поддержка phpBB
Copyright © Aiwan. Kolobok smiles