Зависимость реакции синта на Pitch Bend

Контроллеры, адаптеры, кабели, виртуальные кабели, MIDI через ЛВС (MIDI via LAN)

Зависимость реакции синта на Pitch Bend

Сообщение Gregory » Пт июл 27, 2012 14:26

Интересует функция зависимости.

Поясню более детально.
Для большей наглядности, отойдём немного от протокола MIDI.
Предположим, что команда Pitch Bend передаёт значения от -100 до +100, со средним значением 0 (высота ноты соответствует нажатой клавише).
Синтезатор, при получении в/у команды, может перестраивать высоту ноты в пределах +/- октава (т.е. в 2 раза).
Суть вопроса:
Если при получении значения +100, высота ноты (частота генератора) поднимется в 2 раза (октава), то при получении значения +50 она (частота) поднимется в 1,5 раза, или это значение будет другим?
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Роман Петелин » Пт июл 27, 2012 16:31

Да, по идее зависимость линейная.
Аватара пользователя
Роман Петелин
Администратор
Администратор
 
Сообщения: 2128
Зарегистрирован: Сб янв 15, 2005 22:22
Откуда: Санкт-Петербург

Сообщение Gregory » Пт июл 27, 2012 22:12

Тенкс, Роман.
Однако, это чисто твоё мнение, или есть какие "авторитетные" источники? :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Вс июл 29, 2012 12:30

Уж определитесь, про высоту речь, или про частоту. Частота с высотой связана экспоненциально.

В большинстве случаев изменение высоты (скажем в центах) от колеса зависит линейно, то есть, частота меняется экспоненциально.

Наиболее частый случай - от минимума колеса до максимума колеса - от -200 до+200 центов линейно.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Dmitry_Milk » Вс июл 29, 2012 12:34

Раз уж пошел разговор, для информации:
увеличение частоты в два раза - это увеличение высоты на 1200 центов.
Дальше все расчеты через свойства логарифмов.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Вт июл 31, 2012 0:13

Dmitry_Milk писал(а):Уж определитесь, про высоту речь, или про частоту. Частота с высотой связана экспоненциально.
Вы вообще о чём?
Высота - "музыкальная" величина, выражаемая в нотах,
а частота - физическая величина, относящаяся, в данном случае, к звуковым колебаниям.
Связаны они жёсткой табличной зависимостью: например, ноте ЛЯ первой октавы соответствует частота 440Hz.
Здесь можете прочесть, как связаны частоты равномерно темперированного строя.
А здесь можете ознакомится с протоколом MIDI.

А по сути вопроса: я думаю так же, как Роман, просто хотелось бы подтверждения из первоисточника.
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Вт июл 31, 2012 8:08

Высота хоть и субъективная величина, но связана с частотой не просто табличной зависимостью, а формулой в виде экспоненты (если частота от высоты) или логарифма (если высота от частоты).

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

Для полутонов F=F0*2^(dN/12)
Для центов F=F0*2^(dN/1200)
, где F0-частота нулевой точки отсчета, например 440Гц для ноты Ля первой октавы, а dN - количество ступеней смещения от нулевой точки отсчета (отрицательное если в сторону уменьшения). Ну или другие варианты, где в знаменателе степени двойки должно стоять количество ступеней субъективно равномерного разбиения октавы.

MIDI-шная таблица - это только один из вариантов этой формулы:
F=8,1757989156437073336828122976033Гц*2^(N/12).
Или так (более понятно): F=440Гц*2^((N-69)/12), где N - MIDI-номер ноты, 69 - MIDI-номер ноты Ля первой октавы.

Номер ноты не обязан быть целым вне сообщений NoteOn или NoteOff.

Для вашего изначального вопроса: Если при получении значения +100, частота генератора поднимется в 2 раза (октава), то при получении значения +50 она (частота) поднимется в 1,4142135623730950488016887242097 раз, если вы согласны с Романом и мной о равномерной зависимости высоты от колеса, а не частоты.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Ср авг 01, 2012 15:27

Идём по порядку:
С формулами - всё правильно. Так рассчитывается частота равномерно темперированного строя (возможно, даже, где-то с центами).
Но! Где в этих формулах логарифмическая зависимость высоты от частоты? В этих формулах её вообще НЕТ. Фигурирует только одна размерная величина - частота, все остальные - величины относительные.
Делее, Вы (а не Роман, кстати) почему-то делаете вывод, что Питч Бэнд управляет нотами, а не частотой. Из чего это следует?
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Ср авг 01, 2012 18:10

Как это нет? формула зависимости частоты от высоты - экспонента (2^x).
Обратная (зависимость высоты от частоты) - логарифм:
dP=log2(F/F0)*12 для разности высот в полутонах,
или dP=log2(F/F0)*1200 для разности в центах,
или dP=log2(F/F0) для разности в октавах.

Частота принципиально не может зависеть линейно от колеса, сохраняя при этом одинаковый интервал как вверх, так и вниз (например, октаву) при симметричном ходе вверх и вниз.
Сами подумайте, вот, например, ваш же пример с колесом, сдвигающим на октаву:
1). Вы двигаете колесо вверх. С предложенной Вами линейной зависимостью на половине пути (50) до верхней точки частота должна увеличиться в полтора раза, на полном (100) - в два. То есть, вы предполагаете такую линейную зависимость частоты от положения колеса X: F=F0*(1+X/100), где F0 - частота при нейтральном положении колеса.
2). Теперь вы двигаете колесо вниз. В самой нижней точке (-100) для октавного же интервала вы должны получить частоту в два раза ниже, чем F0. Вы видите, что зависимость F=F0*(1+X/100) здесь уже совершенно не подходит?

Можно, скажем, взять зависимость ниже нейтральной точки F=F0*(1+X/200) (X отрицательно, т.к. колесо вниз) - так в самой нижней точке вы конечно же получите на октаву вниз (1+(-100)/200 = 0.5), НО! в нейтральной точке так вы имеете излом зависимости. Невозможно подобрать никакую линейную зависимость частоты от положения, чтоб она была без изломов (не кусочно линейной), и в то же время сохраняла одинаковые интервалы от нейтральной точки и вверх, и вниз при одинаковом ходе колеса в обе стороны.

Такую зависимость можно было бы подобрать только в том случае, если б ход колеса вверх и вниз отличались, скажем, для октавного изменения необходима разница в два раза (например, вверх до 100, а вниз только до -50). Но вы, надеюсь, неоднократно сами убеждались и на синтезаторах, и на миди-клавиатурах, что у колеса питчбенда ход симметричный.

Я просто на своем почти 20-летнем опыте (пусть и персональном, любительском, с изучением информации в основном в журналах "Радио" за 70-80 годы) изучения и конструирования синтезаторов знаю, что зависимость частоты от колеса практически всегда имеет экспоненциальный вид, например, для вашего колеса с ходом +-100 и октавным интервалом: F=F0*2^(X/100) , что соответствует линейной зависимости звучащей высоты (в любых единицах, полутонах, центах или еще в чем) от положения колеса - именно такая зависимость получается гладкой, без изломов, сохраняя одинаковый интервал в обе стороны (причем для любого интервала) при одинаковом ходе колеса в обе стороны.

И на этом же опыте я знаю, что в большинстве случаев по умолчанию интервал питчбенда от нейтральной точки до максимума и до минимума установлен в один тон, например, для вашего колеса +-100: F=F0*2^(X/600), хотя потом в настройках интервал питчбенда можно менять.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Ср авг 01, 2012 22:40

Dmitry_Milk писал(а):Как это нет?
Так это, нет. :lol:
Видимо, дело в том, что мы вкладываем разный смысл в понятие "высота". Я - конкретную ноту, а Вы - разность полутонов.
Ну, да бог с ним. Не в этом главное.

Dmitry_Milk писал(а):зависимость частоты от колеса практически всегда имеет экспоненциальный вид
Допустим, что это действительно так.
Однако, всё-таки, хотелось бы видеть первоисточники. :wink:

Dmitry_Milk писал(а):вы предполагаете такую линейную зависимость
Отнюдь. Это Вы её предложили.
А я предполагал такую: F=F0*((1+|X|/100)^(X/|X|))
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Чт авг 02, 2012 1:29

Gregory писал(а):А я предполагал такую: F=F0*((1+|X|/100)^(X/|X|))


Тогда какая же она линейная? она линейная только для верхней половины, но гиперболическая для нижней половины.

Хотя, в принципе она возможно и годная для питчбенда, излома у нее нет.

Но она неравномерна в отношении ..эээ... ну обойдем спорный термин.. в отношении интервала отклонения. Музыкального интервала между исходным звучанием ноты и отклоненным, в центах. Ближе к нейтральной точке интервал растет быстро, а потом все "ленивее и ленивее".

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

Если полный ход питчбенда вверх смещает на октаву, то половина хода питчбенда вверх должна смещать на половину октавы - увеличивать частоту не в 1.5 раза, а в корень квадратный из двойки. Соответственно вторая половина хода еще в корень из двойки - итого в два раза, при этом каждая половина хода смещает на одинаковый интервал - половину октавы. Аналогично и в нижнюю сторону, а все в итоге описывается одной простой экспонентой от хода колеса.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Чт авг 02, 2012 12:27

Dmitry_Milk писал(а):именно музыкальные интервалы имеют музыкальную ценность
Да, в общем-то я с Вами согласен, но хочется первоисточников. :roll:

Dmitry_Milk писал(а):Тогда какая же она линейная?
Речь шла об относительных значениях.
Вы как-то очень торопитесь, поэтому невнимательно читаете, и сумбурно излагаете, но всё-равно, с Вами интересно поговорить. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Чт авг 02, 2012 13:14

Gregory писал(а):хочется первоисточников. :roll:


Вряд ли их есть.

Можно оттолкнуться от происхождения самого колеса Pitch Bend - насколько мне известно, оно появилось впервые в синтезаторах на Муговской концепции узлов, управляемых напряжением. Там был такой управляющий параметр Pitch (собственно, название колеса от него и происходит - "изгибание питча") - он был именно в логарифмическом масштабе по отношению к частотам - один вольт на октаву.
http://en.wikipedia.org/wiki/Moog_modular_synthesizer
Moog also established standards for analog synthesizer control interfacing, with a logarithmic one volt-per-octave pitch control and a separate pulse triggering signal.

Любые манипуляции с высотой (питчбенд, модуляция LFO, модуляция огибающей) производились именно над этим параметром аддитивно (поскольку аналогово складывать с переменной проще, чем умножать на переменную), и только уже непосредственно перед управлением частотой осциллятора или частотой среза фильтра над ним осуществлялось экспоненциальное преобразование (ссылку дать не могу, информация из статей А.Володина из старых журналов "Радио").

Можно еще провести эксперименты - повыдавать на синтезаторы (не важно, VST, или железные) MIDI-команды pitchbend с различными значениями, измерять частоты и строить графики зависимости отношения смещенной частоты к исходной.
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

Сообщение Gregory » Пт авг 03, 2012 10:48

Dmitry_Milk писал(а):Можно оттолкнуться от происхождения самого колеса Pitch Bend
Да я согласен с Вами.
Просто обострённый нигилизм не позволяет верить на слово. :lol:

Dmitry_Milk писал(а):информация из статей А.Володина из старых журналов "Радио"
А год какой?

Dmitry_Milk писал(а):измерять частоты
Это будет, пожалуй, трудновато.
Синты редко выдают правильную синусойду.
Надо привлекать к сотрудничеству абсолютников. :wink:
Obligatus servus
http://www.dubrovenko.ru
Аватара пользователя
Gregory
Почётный участник
Почётный участник
 
Сообщения: 834
Зарегистрирован: Чт янв 20, 2005 11:49
Откуда: Санкт-Ленинград

Сообщение Dmitry_Milk » Пт авг 03, 2012 14:44

А год какой?

"Радио" у меня были в наличии только с 78-го года, Андрей Володин возможно публиковался в них и ранее. Его статьи по устройству аналоговых узлов синтезаторов, в том числе и по концепции узлов, управляемых напряжением, мне они попадались где-то до середины 80-х. Если не ошибаюсь, чаще всего это было в рубрике "радиолюбителю-конструктору".
Аватара пользователя
Dmitry_Milk
Любитель
Любитель
 
Сообщения: 282
Зарегистрирован: Вс июн 03, 2007 11:55

След.

Вернуться в MIDI-контроллеры



@Mail.ru

x

#{title}

#{text}