Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.abitu.ru/en2002/closed/viewwork.html?thesises=129
Дата изменения: Fri May 5 15:24:40 2006
Дата индексирования: Tue Oct 2 03:20:29 2012
Кодировка: koi8-r

Поисковые слова: arp 220

Что это такое?
Перед вами Универсальный Вычислитель Аппликатуры Гитарных Аккордов, или
УВАГА.
Эта маленькая программа незаменима для тех, кто хочет добиться
максимальной красоты звучания играемых на гитаре песен. УВАГА строит любые
гитарные аккорды в трех вариантах и позиционирует их на гитарном грифе.
Основное предназначение данной программы - помочь начинающим гитаристам в
освоении теории построения гитарных аккордов, а профессионалам - в подборе
максимально приближенно звучащего к оригиналу аккорда и его запоминании.
Программа не имеет аналогов (или, по крайней мере, они не распространены).
Она основывается на теории построения аккордов на гитарном грифе в
изложении Андрея Антонова.

Установка программы и системные требования
Программа не делает никаких записей в реестре, не создает и не изменяет
файлы в системном и других каталогах и не требует
инсталляции/деинсталляции. Для запуска ее необходимо просто скопировать в
какой-либо каталог, а при удалении, кроме этого каталога, удалять больше
ничего не надо.
Системные требования таковы:
Windows 98/Me/2k/XP, работающая с нормальной производительностью;
видеокарта, поддеррживающая разрешение от 800*600;
650 Кбайт свободного места на жестком диске;
аудиокодек / звуковая карта.

Как строить аккорд?
Для начала введем несколько понятий:
закрытая струна - незвучащая струна;
открытая струна - струна, которую не надо зажимать.
Теперь перейдем, собственно, к назначению программы УВАГА - к построению
аккордов, а точнее, к руководству, как это сделать.
В принципе, сделать это очень просто. Берете какую-нибудь книжку с
аккордами к любимой песне и изучаете названия аккорда, требуемого к
построению.
Первая буква в названии аккорда - это тоника аккорда, т.е. нота, от
которой строится гитарный аккорд. Буква A соответствует ноте ля, B - си, C
- до, D - ре, E - ми, F - фа, G - соль. Си иногда обозначают H, но это
неверно (в самом деле, следование за A B более логично, чем H). Также к
букве может быть "прикреплен" значок # (или b) (читается как диез и
бемоль), означающий, что ноту или созвучие (в данном случае целый аккорд)
необходимо перенести на пол-тона выше (или ниже), а в гитарном обозначении
- на один лад вправо (влево).
Затем может идти через косую черту или в скобках обозначение еще одной
ноты (к примеру, A(C#) или G/Bb). Это означает, что у аккорда есть так
называемый добавочный бас, т.е. нота на 4, 5 или 6 струне, отвлеченная от
структуры аккорда. В этом случае вы должны указать бас аккорда в
соответствующем списке. По умолчанию при выборе тоники аккорда бас
выбирается соответственно тонике (это обязует программу найти хотя бы один
близлежащий бас для аккорда). В списке также есть пункт "без баса" - при
его выборе вы снимаете с программы обязательство найти бас на бас-струнах,
т.е. даете ей больший простор для "мысли". При таком построении баса в
аккорде может и не быть. Также существует специальный флажок "Всегда без
баса", который отключает список с басами аккорда и "выбирает" в нем пункт
"без баса". Есть и флажок "Закрепить бас", также отключающий список с
басами аккорда, но сохраняя тот элемент, который был до его включения (во
многих последовательностях аккордов требуется ставить один и тот же бас,
чтобы добиться гармональности звучания).
Далее может следовать буква m (реже mi), что означает принадлежность
аккорда к минорным. Если буквы m нет, значит аккорд мажорный. После этих
обозначений могут следовать различные комбинации цифр, перечисленные через
косую черту (слэш), например 7/9- или 5+. Эти цифры обозначают
дополнительные ступени аккорда, входящие в его "состав". Есть исключения в
виде буквенных сочетаний dim, aug, sus, maj, знаков "нолик" и
"перечеркнутый нолик", чисел 11, 13 и 11+. Эти обозначения раскрываются
комбинациями дополнительных ступеней, указанными в таблице "Обозначения".
Иногда пониженные и повышенные ступени обозначают не знаками - и +, а
бемолями и диезами, но в этом случае знаки понижения/повышения ставятся
перед обозначением ступени и не ставится слэш. Например, A#m6/5- то же
самое, что A#dim, A# с "ноликом" и A#m6b5.
Несколько слов стоит сказать о выборе струны-тоники аккорда. На струне,
которую вы выберете, будет обязательно звучать 1-я ступень, и эта струна
никогда не окажется закрытой. В аккордах, берущихся на первых 3-х ладах,
тоники расставлены так: E,F,G - 1 или 6; A - 3; D - 4 или 2; C - 2 или 5.
Соответственно, если D взять "как A", но поставив баррэ на пятом ладу, то
тоника (нота ре) будет по-прежнему на 3-й струне. Чтобы лучше понять все
вышесказанное, необходимо почитать теорию построения гитарных аккордов в
изложении Андрея Антонова, находящуюся в файле Theory.doc.
Если вы выбрали отображение ступеней на схемах аккордов, то после того,
как вы построили аккорд, на его схемах вы увидите несколько цифр справа от
струн. Эти цифры и есть ступени, которые вошли в строящийся аккорд. Чем
больше различных ступеней, тем лучше, например, аккорд A5+/9-, если в нем
оказались только ступени 1 и 3, непригоден к проигрышу, т.к. ни пониженной
девятой, ни повышенной пятой ступеней там нет (но допуск к построению
такого аккорда не убирается из-за того, что в нем могут оказаться
неповторимые сочетания ступеней, отсутствующие в других вариантах аккорда,
представленных на схемах). Если же вами было выбрано отображение нот на
схемах аккордов, то после построения на схесах аккордов справа от струн
будут обозначения нот, которые извлекаются при проигрыше этих струн.
Программа строит 3 схемы аккорда - первая полносодержащая (обязательно
содержит все указанные вами ступени (бас аккорда становится необязательным
к нахождению)), вторая частично похожая (т.е. допускается совпадение n
элементов с 1-м аккордом и поиск баса становится обязательным), третья
гибко похожая (включается механизм уменьшения числа, задающего максимум
похожих элементов, поиск баса остается остается обязательным).
Перемена между отображением ступеней или нот на схемах может
осуществляться "на лету".
Первый аккорд будет иметь все указанные вами ступени (для этого придется
пожертвовать басом).

Конфигурация и параметры
УВАГА имеет несколько параметров, все они записаны в конфигурационный
файл config.ini.
1-й отвечает за прорисовывание схем аккордов после перекрытия окна УВАГА
каким-либо другим окном, его значение есть число миллисекунд, по прошествии
которых схемы аккордов должны "дорисоваться". Если вы поставите задержку,
равную 1000 миллисекунд (т.е. одна секунда), попробуйте быстро вынести и
внести окно УВАГИ за пределы экрана, и секунду на мониторе будет частично
пустая форма, после чего картинка восстановится. Дело в том, что обновление
идет не только после того, как вы полностью вернули УВАГА на Рабочий стол,
но и сразу после того, как содержимое формы изменяется вообще. Значение по
умолчанию - 20 миллисекунд. Если УВАГА не найдет этого параметра в файле
или вообще не найдет конфигурационного файла, она выдаст предупреждение и
восстановит значения по умолчанию.
2-й имеет значение 0 или 1. Если значение его 0, то заставка программы не
появляется при ее запуске, при значении 1 на экран выводится заставка
программы, и начнет проигрываться аудиофрагмент из песни "Игра с огнем"
группы АРИЯ.
3-й параметр имеет значение от 1 до 6 - начальное значение максимума
идентичных элементов аккорда. Данный параметр используется для сокращения
времени выполнения программы на медленных компьютерах, т.к. программа имеет
алгоритм постепенного увеличения числа максимально схожих элементов
аккордов. Увеличение 3-о параметра приводит к уменьшению времени выполнения
программы, но при этом увеличивается возможность выведения на экран 2
похожих схем. Более подробно это рассматривается ниже.
4-й параметр есть количество попыток рассчитать аккорд с текущим
значением максимального количества схожих элементов аккордов перед
увеличением этого значения. Например, если максимум m=3 одинаковых
элементов может быть в схемах, а количество попыток n=10, то:
первые 10 попыток программа будет допускать к выводу аккорд, схема которого
содержит 1, 2 или 3 идентичных элементов с предыдущими;
вторые 10 попыток программа будет допускать к выводу аккорд, схема которого
содержит 1, 2, 3 или 4 идентичных элементов с предыдущими (если за первые
10 программе не удалось построить подходящий аккорд);
третьи 10 попыток программа будет допускать к выводу аккорд, схема которого
содержит 1, 2, 3, 4 или 5 идентичных элементов с предыдущими; (опять же,
если этого не удалось сделать раньше);
четвертые 10 попыток программа допустит к выводу любой аккорд.
Стоит сделать замечание, что если, например, при выводе второй схемы
аккорда m повысилось с 3 до 5, то при расчете 3-й схемы аккорда за
начальное m будет принято 5.
Таким образом, выбрав 3-й параметр равным 6, пользователь освобождает
программу от проверки на схожесть элементов в схемах аккордов и тем самым
увеличивает скорость выполнения программы. Если вычислительная мощь
компьютера позволяет, лучше выбирать начальное значение максимального
количества идентичных элементов схем аккордов равное 1 (в любом случае,
программа не уйдет в бесконечный цикл и не "подвесит" систему).

Ограничения
Программа имитирует поиск аккордов реальным гитаристом, который понимает,
что зажать 8-й и 1-й лады одновременно он не сможет, так что УВАГА выводит
только те варианты аккордов, которые лежат в пределах 4-х ладов. Также
УВАГА не покажет вам схемы аккорда, на которой закрыто более 2-х струн.
Следует понимать, что если, к примеру, УВАГА нарисовала две схемы, на
которых совпадают точки зажима на первых четырех струнах, на первой закрыта
5-я струна, открыта шестая, а на второй закрыта 6-я, а открыта 5-я, то
можно смело, играя аккорд, открывать и 5-ю и 6-ю, или же обе струны
закрывать (в то же время никто не мешает вам не играть любую
заблогарассудившуюся струну (конечно, кроме струны-тоники), но, в принципе,
делать это нежелательно). Программа не станет строить аккорд "ниже" 13-о
лада (т.к. в этом нет никакого смысла - не проще ли просто "передвинуть" на
12 ладов влево аккорд, полученный с помощью УВАГИ).
К ограничениям аппаратного характера относится невозможность работы
программы при разрешении экрана меньше 800*600.
Программе абсолютно безразлично, сколько цветов может вывести ваша
видеокарта, т.к. при выводе на экран изображений используются только
системные цвета, определенные Windows. Также я не думаю, что УВАГА будет
нестабильно работать на старых компьютерах.
В следующей версии ожидаются следующии добавления и исправления:
. проигрыш аккордов;
. исправление различных допущенных огрехов и ошибок.

Алгоритм
Программа обладает уникальными процедурами анализа гитарных аккордов. Ее
алгоритм базируется на теории построения аккордов на гитарном грифе в
изложении Андрея Антонова, путем применения генератора случайных числел, и
именно этим достигается разнообразие построенных аккордов.
Программа не имеет широко распространенных аналогов. Все известные
программы и музыкальные редакторы, ре- и просто сэмплеры, трэкеры, умеющие
выводить схемы гитарных и фортепианных аккордов (Cakewalk Studio, Virtual
Piano, MidiSoft Recording Studio для Windows, kguitar для Linux и другие)
являются библиотеками аккордов, и в этом их недостаток. По грубым
подсчетам, всего различных форм гитарных аккордов может быть больше 25
тысяч, а с учетом вариаций число схем уходит далеко за 60 тысяч. Я
допускаю, что где-то есть такая огромная библиотека гитарных аккордов, но
думаю, что на ее составление ушло гораздо больше времени, чем на написание
УВАГИ.

Об авторе...
Гурков Павел (aka Hacker 1911).
Я написал на Delphi несколько программ:
. Cycloid <Удивительный мир циклоид> (построение кривых 4-о порядка с
основой в виде окружности. Посылал работу на конференцию «Старт в науку-
2002», но в финал не прошел)
. Message box creator (компилирует код для создания панелей сообщения под
Delphi),
. теперь вот -УВАГА. Все отзывы, пожелания, сообщения об ошибках и т.д. и
т.п. посылать по адресу: hackerspl@mail.ru.
При желании пользоваться моими программами пишите, вышлю. Все программы
распространяются freeware (но не по лицензии GPL (open source)).
Выражаю Благодарность Андрею Антонову (в ближайшее время я постараюсь
установить с ним связь), группе АРИЯ (которой, к сожалению, больше не
существует), Кашеваровой Вере Алексеевне и Сенчиловой Ольге
Константиновне (за ценные советы, указания, дополнения).
Интернет-сайт находится в стадии разработки.