![]() |
|
|
|
#1 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
(продолжение, начало тут).
Итак, нужна ли пятая (4-я, если считать с 0) частотная таблица? =) Я не стал бы спрашивать не имея готового ответа =) Yep! Нужна =) И что же хорошего можно придумать? =) Природный звукоряд для C/Am, друзья мои =) Без приближений равномерной темперации, без умножения предыдущей ступени звукоряда на жуткий корень двенадцатой степени из 2. Какие выгоды? 1) целочисленные соотношения интервалов: C[9/8]D[10/9]E[16/15]F[9/8]G[10/9]A[9/8]B Дают нам чистые квинты: C-G (относятся как 3/2) E-B (относятся как 3/2) A-E (относятся как 3/2) И другие добрые последствия. Дополнительные ступени (чёрные клавиши) рассчитаны как интервал в 16/15. Вообще, как оказалось, Иван Рощин давно (6/2001) уже написал популярную статью на эту тему:"Частотная таблица с нулевой погрешностью". В которой отлично всё просчитал =) Так как исходные данные были одни и те же - результат получился одинаковый - частотная таблица натурального звукоряда, и оптимальная частота звукового сопроцессора для неё. 2) более половины рассчитанных периодов нот основных ступеней - кратны 16, это значит, что огибающая звучит чисто и отсутствуют биения при наложении Envelope+Tone. (Разумеется биения и эффект морфирования звуковой волны можно всегда получить, сместив частоту тона вверх или вниз). Недостатки: частотная таблица корректна только для до-мажор или ля-минор. Преодоление недостатка: любую тональность можно получить простым изменением частоты сопроцессора: 1520640 С/Am 1520640 * 2^(1/12) = 1611062 C#/A#m 1611062 * 2^(1/12) = 1706861 C#/A#m и так далее: Код:
1520640 1520640 C/Am 1611061,96 1611062 C#/A#m 1706860,69 1706861 D/Bm 1808355,91 1808356 D#/Cm 1915886,35 1915886 E/C#m 2029810,88 2029811 F/Dm 2150509,71 2150510 F#/D#m 2278385,67 2278386 G/Em 2413865,54 2413866 G#/Fm 2557401,45 2557401 A/F#m 2709472,45 2709472 A#/Gm 2870586,07 2870586 B/G#m 3041280 3041280 C/Am Всё это становится легко и приятно в VortexTracker II, который я под это дело модифицировал =) 1) добавлена пятая (0..4) частотная таблица 2) в настройках добавлены вышеприведённые частоты для всех возможных тональностей (модуль записывается в ключе C/Am а фактически воспроизводится в ключе, заданным частотой сопроцессора). 3) частота сопроцессора и номер частотной таблицы сохраняется в рабочем файле (.txt) в параметрах ChipFreq (новый параметр) и NoteTable соответственно. 4) При загрузке модуля частота из него выставляется в настройках чипа (который, как вы помните - один на весь редактор, так что будьте внимательны, при редактировании треков с разными частотами сопроцессора). Вроде-бы всё. UPD1: CTRL + HOME – в самый верх канала CTRL + END – в самый низ канала CTRL + UP – в самый верх канала CTRL + Down – в самый низ канала CTRL + PGUP – в середину паттерна (канала) (32-ая позиция) CTRL + PGDown – в 3/4 паттерна (канала) 48-я позиция NUM_PLUS – следующий паттерн NUM_MINUS – предыдущий паттерн CTRL + NUM_PLUS – паттерн следующей позиции, следующая позиция CTRL + NUM_MINUS – паттерн предыдущей позиции, предыдущая позиция SHIFT + NUM_PLUS – транспонирование на полутон SHIFT + NUM_MINUS – транспонирование на полутон CTRL + SHIFT + NUM_PLUS – транспонирование на октаву CTRL + SHIFT + NUM_MINUS – транспонирование на октаву NUM[*] или CapsLock – делает MUTE Всем каналам кроме текущего, на каналах с Envelope и Noise – вкл/выкл Envelope/Noise на всех каналах. сдвижка/раздвижка паттерна - CTRL+SHIFT + [/] и CTRL+SHIFT +[*] UPD2: Теперь если находясь в канале огибающей нажать на любую клавишу, соответствующую ноте, в канал проставится её частота (с коэффициентами у AutoEnvelope) Это на порядок удобнее чем собственно сам AutoEnvelope (так как практически всегда сами каналы забиты и экспериментировать негде). Вручную цифровое значение огибающей можно ввести данные ввести удерживая Shift (Shift + [0..9 A..C]). Наконец-то к каналу огибающей начали относиться с должным уважением =) и приблизили его к нормальным нотам =) UPD3: Теперь огибающая отображается как нота, если её период совпадает с периодом ноты (note period/16 = envelope period). режим отображается галочкой в верхнем правом углу окна редактора, гоячая клавиша для его смены -> [/] на цифровой клавиатуре. UPD4: Ура-Ура! =) добавлен переключатель Hex/Dec: File -> Options -> Compatibility -> "Dec Base". сборка: VT_N06.exe UPD5:Ура-ура! =) Встречаем! Поддержка горячих клавиш в Sample Editor. CTRL+HOME, CTRL+END/ CTRL+PGDOWN, CTRL+PGUP/ - в начало/конец семпла. INS - Дублирование текущей позиции семпла с раздвижкой. DEL - Удаление текущей позиции семпла со сдвижкой. SHIFT + HOME - установка позиции на которую происходит зацикливание (loop) SHIFT + END - установка последней позиции (Lenght). CTRL + INS - копирование в текущую позицию семпла позиций, ограниченных зацикливанием - Loop / length. в режиме редактирования добавлена горячая клавиша CTRL + ` - быстрое переключение в режим Sample Editor. UPD6: 25.o7.2oo9 Ура-Ура! =) Множество кавайных и полезных изменений =) 1) при создании или открытии файла фокус сразу устанавливается на окно редактирования (можно сразу начинать рулить с клавиатуры, не выбирая окно мышью) к мышке можно практически не прикасаться. 2) находясь на любом элементе MDI-формы можно горячей клавишей перейти в один из режимов: CTRL+` - редактор паттернов, CTRL+1 - редактор семплов, CTRL+2 - редактор орнаментов, 3) в редакторе семплов и орнаментов добавлены следующие горячие клавиши: CTRL+[+] (плюс на цифровой клавиатуре) - следующий семпл (орнамент) CTRL+[-] (плюс на цифровой клавиатуре) - предыдущий семпл (орнамент) CTRL+HOME, CTRL+PGUP - в начало семпла (орнамента) CTRL+END, CTRL+PGDOWN - в конец семпла (орнамента) INS - Дублирование текущей позиции семпла (орнамента) с раздвижкой. DEL - Удаление текущей позиции семпла (орнамента) со сдвижкой. SHIFT + HOME - установка позиции на которую происходит зацикливание (loop). SHIFT + END - установка последней позиции (Lenght). 4) копирование/вставка семплов/орнаментов: CTRL + A - выбор всех позиций семпла (орнамента), CTRL+INS - копирование выделенных позиций семпла (орнамента) в буфер. (выделенными считаются "зацикленные" позиции). SHIFT+INS - вставка позиций семпла (орнамента) из буфера в текущую позицию 5) в режиме орнамента реализован ввод смещений как нот то есть при нажатии на кнопку Z, которая соответсвует ноте С (до) будет введено нулевое смещение. при нажатии на кнопку X, которая соответсвует ноте D (ре) будет введено смещение +2, и т.д. Кажется все изменения =) + улучшено транспонирование огибающей. - она транспонируется строго по таблице нот (а не умножается на коэффициент, что приводил к неправильному транпонированию в нетемперированных звукорядах). Сборка VT_N09.exe (см. первый пост темы). UPD7: 26.o7.2oo9 В новой версии VT_N0A_RC.exe: 1) пофиксены баги. 2) транспонирование громкости: выделить только позицию с громкостью (SHIFT + CURSOR) затем нажать SHIFT+[+] или SHIFT+[-] - для смещения громкости выделенном фрагменте вверх или вниз. либо нажать CTRL+SHIFT+[+] или CTRL+SHIFT+[-] - для смещения громкости выделенном фрагменте вверх или вниз, но только для каждой нечётной громкости для упрощения создания эхоэффекта. и самое клёвое: 3) автоматическая конвертация огибающей из частотной таблицы в частотную таблицу =) при смене частотной таблицы период огибающей автоматически корректируется так, чтобы соответсвовать той же ноте, какая была в предыдущей частотной таблице. периоды, которые не распознались как ноты - транспонируются просто пропорционально. Данная версия носит гордое название "Релиз кандидата". то есть все фичи, которые я планировал добавить в VT - я добавил. Теперь будут только вылавливаться баги. UPD8: 26.o7.2oo9 подправлена автоконвертация - не на всех музонах она отрабатывала (отваливалась на пустых паттернах). UPD9: 26.o7.2oo9 day Косметическая, но очень полезная фича. Подсветка в семплах и орнаментах позиций, соответствующих выставленной в модуле скорости. То есть если Speed = 3, то будет подсвечена каждая 3-я позиция. UPD:A: 27.o7.2oo9 night горячие клавиши листания семплов/орнаментов в редакторе семплов орнаментов (CTRL+[+] и CTRL+[-]) теперь работают и в режиме "тестовой строки" (тестирование семпла/орнамента). UPD:B o5.o8.2oo9 night Ура-Ура! =) новая версия =) VT_1.2RC5.exe: 1) исправлен баг с ошибками редактора при закрытии окна во время проигрывания. 2) теперь фрагменты семпла при копировании/вставке выделяются не с помощью установки начала/конца петли повтора, а независимым счётчиком. то есть SHIFT+HOME, SHIFT+END - это по-прежнему установка начала/конца петли. а SHIFT+UP/SHIFT+DOWN - это выделение фрагмента семпла для копирования. CTRL+INSERT - копирование. SHIFT+INSERT- вставка. выделение снимается если отпустить SHIFT и передвинуть курсор куда-нибудь. UPD:B o5.o8.2oo9 night 2 Внезапно ещё одно улучшение: 1) можно тестировать текущий семпл прямо во время редактирования, без необходимости заходить в "Тестовую строку". для этого нужно всего-лишь нажать нотную клавишу с зажатым SHIFT'ом. и текущий семпл или орнамент будут проигрываться. Любые изменения в них сразу будет слышно. UPD:B o5.o8.2oo9 Day UPD:B o5.o8.2oo9 Day 2 (O_O) VT_1.2RC888.exe: UPD:B o5.o8.2oo9 Day 3 (O_O) UPD:B o5.o8.2oo9 Day 4 (O_O) VT_1.2RCAAA.exe: "@" -> "]". UPD:B o5.o8.2oo9 Day 5 VT_1.2RCBBB.exe: Custom INT Freq Set (bugfix). Изменения описаны в последнем посте темы (в это сообщение текст уже не влезает). UPD:B 19.o9.2oo9 Day 5VT_1.2RCCCP.7z (333.1 Кб)
__________________
oisee. Последний раз редактировалось siril; 08.09.2010 в 21:15. |
| Offline |
|
| Эти 5 пользователя(ей) сказали Спасибо siril за это полезное сообщение: | Alex Rostov (20.07.2009), newart (19.07.2009), nodeus (20.07.2009), riskej (26.07.2009), scl^mc (22.07.2009) |
|
|
#2 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
Ах да. сама таблица:
для частоты сопроцессора 1520640: 2880, 2700, 2560, 2400, 2304, 2160, 2025, 1920, 1800, 1728, 1620, 1536, 1440, 1350, 1280, 1200, 1152, 1080, 1013, 960, 900, 864, 810, 768, 720, 675, 640, 600, 576, 540, 506, 480, 450, 432, 405, 384, 360, 338, 320, 300, 288, 270, 253, 240, 225, 216, 203, 192, 180, 169, 160, 150, 144, 135, 127, 120, 113, 108, 101, 96, 90, 84, 80, 75, 72, 68, 63, 60, 56, 54, 51, 48, 45, 42, 40, 38, 36, 34, 32, 30, 28, 27, 25, 24, 23, 21, 20, 19, 18, 17, 16, 15, 14, 14, 13, 12. для частоты сопроцессора 3041280: 5760, 5400, 5120, 4800, 4608, 4320, 4050, 3840, 3600, 3456, 3240, 3072, 2880, 2700, 2560, 2400, 2304, 2160, 2025, 1920, 1800, 1728, 1620, 1536, 1440, 1350, 1280, 1200, 1152, 1080, 1013, 960, 900, 864, 810, 768, 720, 675, 640, 600, 576, 540, 506, 480, 450, 432, 405, 384, 360, 338, 320, 300, 288, 270, 253, 240, 225, 216, 203, 192, 180, 169, 160, 150, 144, 135, 127, 120, 113, 108, 101, 96, 90, 84, 80, 75, 72, 68, 63, 60, 56, 54, 51, 48, 45, 42, 40, 38, 36, 34, 32, 30, 28, 27, 25, 24. Второй вариант лучше тем, что в нём на целую октаву больше чистых огибающих. ---------- Post added at 00:25 ---------- Previous post was at 00:19 ---------- Технология адаптации произвольного модуля следующая: 1) определяем тональность трека. 2) транспонируем (глобальным транспонированием) модуль в тональность до-мажор. 3) выставляем соответствующую оригинальной тональности частоту сопроцессора. 4) адаптируем огибающую. Первые 3 шага можно произвести автоматически с помощью моей консольной программки text2key:
__________________
oisee. Последний раз редактировалось siril; 09.07.2011 в 19:13. |
| Offline |
|
|
|
#3 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
на вход её подаётся флаг /info и путь к текстовому модулю в рабочем формате Vortex (.txt) типа:
text2key.exe /info Process_t1.txt ответ будет в виде: Код:
::shift = 7 ::shift = -5 (7) ::selector = 0 ::key = F ::FreqTable = SoundTracker ::ChipFreq = 1990574 ::---------------- ::-40 Key F Shift = -5 (7) ::-44 Key A# Shift = 2 ::-60 Key D# Shift = -3 (9) ::-193 Key G# Shift = 4 ::-259 Key C Shift = 0 ::-546 Key C# Shift = -1 (11) ::-644 Key F# Shift = -6 (6) ::-803 Key G Shift = 5 ::-933 Key D Shift = -2 (10) ::-1176 Key B Shift = 1 ::-1286 Key A Shift = 3 ::-1411 Key E Shift = -4 (8) Ay_Emul.exe "speed 4 @Process_t1.pt3" /y1990574 /hMONO /~ Именно на минус это значение надо будет транспонировать модуль, чтобы его привести к C/Am. Key - это тональность трэка. (F) - именно её надо потом будет выставить. (на строчки: ::FreqTable = SoundTracker ::ChipFreq = 1990574 не обращайте внимания. они предназначены для другого =)
__________________
oisee. |
| Offline |
|
|
|
#4 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
бу-ха-ха. что-то он на рабочем компе не работает %)))
это, возможно, из-за недоделанной поддержки MIDI, вечером пересоберу ^_^'
__________________
oisee. Последний раз редактировалось siril; 20.07.2009 в 09:05. |
| Offline |
|
|
|
#5 |
|
Member
Регистрация: 17.01.2005
Сообщений: 34
Сказал(а) Спасибо: 3
Поблагодарили 11 раз(а) в 2 сообщениях
![]() |
|
| Offline |
|
|
|
#7 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
Ура-ура! Новая ночная сборка Vortex Tracker II Natural =)
Улучшил управление, убрал давно бесящие и неправильно ведущие себя сочетания клавиш, и добавил полезные новые =) Встречаем! =) Версию "VT_N02.7z" (обновлён заглавный пост). CTRL + HOME – в самый верх канала CTRL + END – в самый низ канала CTRL + UP – в самый верх канала CTRL + Down – в самый низ канала CTRL + PGUP – в середину паттерна (канала) (32-ая позиция) CTRL + PGDown – в 3/4 паттерна (канала) 48-я позиция NUM_PLUS – следующий паттерн NUM_MINUS – предыдущий паттерн CTRL + NUM_PLUS – паттерн следующей позиции, следующая позиция CTRL + NUM_MINUS – паттерн предыдущей позиции, предыдущая позиция SHIFT + NUM_PLUS – транспонирование на полутон SHIFT + NUM_MINUS – транспонирование на полутон CTRL + SHIFT + NUM_PLUS – транспонирование на октаву CTRL + SHIFT + NUM_MINUS – транспонирование на октаву NUM[*] или CapsLock – делает MUTE Всем каналам кроме текущего, на каналах с Envelope и Noise – делает наоборот. ---------- Post added at 00:35 ---------- Previous post was at 00:30 ---------- сдвижка/раздвижка паттерна - CTRL+SHIFT + [/] и CTRL+SHIFT +[*]
__________________
oisee. Последний раз редактировалось siril; 20.07.2009 в 22:52. |
| Offline |
|
|
|
#8 |
|
i'm the walrus!
Регистрация: 26.01.2005
Адрес: Russia, Ulianovsk
Сообщений: 3,353
Сказал(а) Спасибо: 1,820
Поблагодарили 486 раз(а) в 313 сообщениях
![]() ![]() ![]() ![]() ![]() ![]() |
нумерация тиков поменялась с шестнадцатиричной на десятичную?
__________________
there is the light that never goes out... (the smiths) если кто-то что-то как-то, то вот моя аська - 371432992 speccy |
| Offline |
|
|
|
#9 |
|
Activist
Регистрация: 01.02.2005
Адрес: perm/ru
Сообщений: 487
Сказал(а) Спасибо: 207
Поблагодарили 174 раз(а) в 84 сообщениях
![]() ![]() ![]() |
нет, ничего не менял =)
__________________
oisee. |
| Offline |
|
|
|
#10 |
|
i'm the walrus!
Регистрация: 26.01.2005
Адрес: Russia, Ulianovsk
Сообщений: 3,353
Сказал(а) Спасибо: 1,820
Поблагодарили 486 раз(а) в 313 сообщениях
![]() ![]() ![]() ![]() ![]() ![]() |
блин... я долго матерился, тогда в вортексе нумерация пошла шестнадцатиричная. "я вам блин кто - музыкант или прогер?" - это был первый вопрос, когда увидел первую новую версию. второй был "у меня на руках 10 пальцев, а не 16, какого хрена?"
__________________
there is the light that never goes out... (the smiths) если кто-то что-то как-то, то вот моя аська - 371432992 speccy |
| Offline |
|
![]() |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
| Опции темы | |
| Опции просмотра | |
|
|