Архивы: по дате | по разделам | по авторам

Пользователь рояля, или О бедном тапере замолвите слово...

Архив
автор : Валерий Белунцов   21.03.2000

Нич-чего не понимаю!
Из компьютерной игры "Братья Пилоты"


Музыканты бывают разные. Один может спокойно обедать под включенную пластинку с этюдами Лигети, а другой - как только услышит в отдалении хоть какое-нибудь подобие музыкальных звуков, сразу же начинает прислушиваться и внимать.

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

Казалось бы, ну чего так придираться? Неужели из-за такой мелочи, как "неправильное" расстояние между тактовой чертой и знаком альтерации или просто между нотными "ребрами", ухудшается восприятие нотного текста? Оказывается, да! Ухудшается, да еще как! Причем самое интересное, что хуже всего приходится тем музыкантам, которые никаких претензий "вслух" к нотам не предъявляют! При этом иногда даже встречается то, что называют эффектом "смотришь в книгу - видишь фигу": музыкант пытается прочитать с листа ноты, которые на первый взгляд абсолютно понятны, и не может толком сыграть ни одной гармонии!

Едешь ты по дороге, вдруг с одной стороны выскакивает мальчик, с другой бабуля. Кого давить будешь?
Из детского анекдота


Компьютерные программы для нотного набора тоже бывают разные. Все они дают на выходе более или менее понятный нотный текст, - конечно, пока на него смотришь просто так, "абстрактно"; однако при работе с ним результат может быть самый неожиданный. Например, не так давно в один из известных музыкальных театров Москвы композитор принес ноты, набранные в программе Encore 3.0, которые должны были сразу использоваться для постановки балета. Реакция пианистов была однозначной: по нотам совершенно невозможно играть! (Замечу в скобках, что здесь, конечно, нельзя всю вину сваливать на разработчиков программы - ноты были набраны весьма неумело; однако, с другой стороны, в программах подобного рода, как мне кажется, это тоже должно быть предусмотрено. Например, в Finale просто невозможно набрать столь неудобные ноты... [1])

Дело в том, что разработчики многих программ нотного набора так сильно стремились сделать свое детище максимально удобным для "неподготовленного" пользователя, что совсем не подумали об удобстве, говоря на компьютерном жаргоне, пользователя рояля (а равно и другого инструмента), который вынужден мириться с не очень удачным результатом работы программы. Конечно, ради удобства ввода нот иногда можно пойти на некоторые жертвы, но здесь очень важно соблюсти баланс. Нехорошо получается, если музыканты будут клясть все компьютеры на свете и ностальгически вздыхать по тем временам, когда ноты переписывались вручную, и при этом по ним было удобно играть!..

Кто прямо поедет - вместе с конем погибнет, кто влево поедет - сам умрет, а конь цел будет, кто вправо поедет - сам жив останется, а коню погибель.
Из русских сказок


И что же, "компьютерные" ноты с точки зрения музыканта-исполнителя всегда неудобны? Конечно же, нет! Приложив некоторые усилия, можно добиться неплохих результатов даже в программе Encore, а уж о таких издательских стандартах, как Finale и Sibelius [2], и говорить нечего. Однако, глядя на ноты, подготовленные в этих программах, не можешь отделаться от мысли, что что-то не то... чего-то не хватает... что-то лишнее... А надо сказать, подобные мысли для исполнителя - ну совсем лишние.

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

Замечу, что разработчики из компании Coda Music Technology воплотили в жизнь, в общем-то, неплохую идею: программа Finale 2000 предлагает на выбор семь разных способов ввода нот. Первый способ - самый "очевидный": видя на экране нотоносец, пользователь должен щелкать мышкой в то место нотоносца, куда нужно поместить ноту (рис. 1). Вроде бы просто и ясно и весьма "интуитивно", но на поверку оказывается, что попросту происходит подмена написания нот карандашом, только с дополнительным неудобством: каждый раз приходится либо предварительно выбирать длительность ноты из "палитры", либо удерживать соответствующую клавишу на клавиатуре компьютера. А если учесть, что попасть мышкой в нужное место экрана все-таки сложнее, чем карандашом в нужное место бумаги [3], становится ясно, сколько придется тренироваться, чтобы эффективно использовать этот способ.

Второй способ, который гораздо быстрее, разработчики так и назвали "быстрым": пользователь перемещает курсор по нотоносцу "стрелками" на клавиатуре, а нажатие на цифровую клавишу порождает ноту соответствующей длительности в указанном месте (рис. 2). Набив руку, можно достичь больших скоростей набора, но опять же - ценой усиленных тренировок и запоминания клавиатурных функций.

Третий способ, наверное, самый удобный: чтобы "нарисовать" ноту, нужно нажать клавишу на MIDI-клавиатуре и, удерживая ее, ввести с клавиатуры компьютера цифру, соответствующую длительности ноты. Хотя и этот способ не лишен недостатков: нужно держать одну руку на компьютерной клавиатуре, а другую - на MIDI, при этом "играть" зачастую приходится не той рукой, которой удобнее. (Да и вообще - необходимо иметь MIDI-клавиатуру и уметь играть, а это вовсе не само собой разумеется: некоторые опытные переписчики нот вообще всю жизнь не знали, что эти самые ноты обозначают, и играть ни на чем не умели, а результатами их труда музыканты с удовольствием пользуются по сей день.)

Четвертый способ заключается в том, что сначала нужно записать музыкальный отрывок с помощью встроенного секвенсера, а затем попросить программу превратить отрывок в ноты. Этот способ, увы, редко дает удобоваримые результаты: во-первых, приходится соблюдать ровность, по крайней мере внутри каждой доли [4], иначе при транскрибировании сыгранного отрывка компьютер напишет полную абракадабру (рис. 3). Кроме того, если в отрывке встречаются различные ритмические фигуры (а так бывает в подавляющем большинстве случаев), то очень сложно заставить компьютер понять это правильно. Приходится применять к отдельным тактам функцию Retranscribe, переустанавливая параметры, а чаще всего просто исправлять все вручную. Те же недостатки есть и у пятого способа (транскрибирование сыгранного отрывка в реальном времени, по мере ввода), и у шестого (транскрибирование заранее подготовленного MIDI-файла). Седьмой способ - транскрибирование "распознанных нот" из программы MIDISCAN - по сути, мало чем отличается от шестого.

Кстати, вышеописанные способы работы с программой Finale относятся исключительно к вводу "голых" нот. А дальше начинается самое интересное - расстановка лиг, знаков артикуляции, динамических оттенков, перенос частей группированных фигур на другие нотоносцы и т. д. Здесь пользователь оказывается просто в безбрежном море различных режимов работы. Для того чтобы просто понять, "что как делается", необходима немалая предварительная подготовка, а уж для эффективной работы и подавно. Так что разговоры про удобство для неподготовленного пользователя при ближайшем рассмотрении оказываются верными лишь отчасти...

Счастье есть...
DJ Грув


На сегодняшний день единственная встретившаяся мне программа, в которой можно набирать действительно удобный для восприятия нотный текст, называется MusiXTeX. Собственно говоря, это даже не программа, а всего лишь макрорасширение для TEX, позволяющее легко вводить нотный текст. Поскольку ввод нот в MusiXTeX осуществляется не в режиме WYSIWYG [5], а с помощью TEX -команд, набираемых в любом текстовом редакторе, автор MusiXTeX'а не был обременен мыслями о пресловутом "удобстве для неподготовленного пользователя" и все внимание уделил удобству музыканта. И это дало свои плоды: ноты, подготовленные в MusiXTeX, прекрасно воспринимаются музыкантом, да и выглядят почти безупречно. (Впрочем, это вполне в традициях TEX - качественный документ на выходе. Недаром в последнем номере "SoftТерры", посвященном совсем другим программам, при упоминании о наборе математических выражений г-н Левкович-Маслюк сразу же вспомнил о красивых TEX'овских формулах...)

Разумеется, необходимость ввода нот с помощью текстовых команд может кого-то с непривычки отпугнуть. Однако из сказанного выше ясно, что для работы с "традиционными" программами нотного набора подготовка все равно необходима. А освоение MusiXTeX, по большому счету, не сложнее, а проще, чем освоение той же Finale (конечно, если вы не собрались тут же стать "TEX'пертом", что для набора нот в MusiXTeX вовсе необязательно).

Кроме того, в MusiXTeX, хотя она написана совсем недавно, уже реализованы многие возможности, которых до сих пор нет в Finale и подобных ей программах, - например, "инвертированные" лиги, группы нот, пересекающие тактовую черту, и т. п. (Причем это не экзотика - на отсутствие этих возможностей, например, в Finale я обратил внимание еще в 1994 году, и ситуация до сих пор не изменилась...)

Как же вводится нотный текст в MusiXTeX? Очень просто! Каждому элементу нотной графики соответствует своя команда. Например, чтобы написать целую ноту, нужно ввести \wh [6], а для написания половинной ноты - \hu или \hl (в зависимости от направления штиля). Кстати, все команды MusiXTeX довольно легко запоминаются, так как представляют собой в основном аббревиатуры музыкальных терминов (правда, англоязычные). Например, начало лиги, развернутой вверх, кодируется как \isluru, то есть Initiate SLUR Up. Нетрудно догадаться, что лига, развернутая вниз, инициируется командой \islurd.

Что касается высоты нот, то для ее кодирования используются буквы латинского алфавита. Большое "A" обозначает ноту "ля" контроктавы, большое "B" - "си" контроктавы и т. д. до буквы "N", обозначающей "соль" малой октавы. Более высокие ноты кодируются строчными буквами: "a" означает "ля" малой октавы, "b" - "си" малой октавы, вплоть до "z" - "ми" четвертой октавы. Кроме того, могут быть использованы префиксы октавного повышения или понижения - знаки "'" и "'".



Динамические оттенки и прочие исполнительские обозначения также кодируются простыми и ясными командами. Например, для того чтобы поставить обозначение "fortissimo", нужно написать просто \ff, а точка "стаккато/пиццикато" обозначается \upz.

Как же посмотреть результат набора? После того как пользователь набрал все необходимые команды в любом текстовом редакторе, нужно сохранить этот файл (желательно с расширением .tex), например, test.tex, и затем дать в командной строке такую последовательность из трех команд [7]:

tex test.tex
musixflx test.mx1
tex test.tex


Если в исходном файле не было ошибок, первая из этих команд запускает TEX для компиляции файла, при этом все параметры, необходимые для форматирования страницы, записываются в служебный файл с расширением .mx1 [8]. Вторая команда запускает специальную программу musixflx (в этом пакете она единственная, не имеющая "прямого" отношения к TEX, это просто исполняемый файл), которая подготавливает информацию для окончательного распределения музыкального материала по страницам и строкам, записывая его в другой служебный файл с расширением .mx2. Затем снова запускается TEX, но теперь при компиляции используется информация из файла mx2 (который автоматически загружается при компиляции test.tex по команде \startmuflex, входящей в \startpiece), и генерируется окончательное изображение в файле dvi, который можно просмотреть на экране или распечатать.


Для примера покажу, как записать приведенный на рис. 4 музыкальный фрагмент известной песенки "Чижик-пыжик":

\input musixtex
\instrumentnumber1
\generalmeter{\meterfrac44}
\startpiece
\NOtes\qu{ecec}\enotes\bar
\NOtes\qu{fe}\hu d\sk\enotes\bar
\NOtes\qu{NNN}\enotes
\Notes\ibu0a1\qb0a\tbu0\qb0b\enotes\bar
\NOtes\qu{cc}\hu c\sk\enotes
\Endpiece
\end


Вкратце поясню, что здесь к чему. Первая строка приказывает TEX'у использовать расширение MusiXTeX, вторая задает количество инструментов (1), а третья - размер (4/4). Четвертая строка начинает музыкальный фрагмент, после чего идет собственно нотный текст.

Здесь команда \qu означает четвертные ноты со штилем вверх, а команда \hu - половинную ноту (также со штилем вверх). В фигурные скобки заключены последовательности нот одной длительности (собственно говоря, это просто TEX'овское сокращение, то есть мы пишем \qu{ecec} вместо \qu e\qu c\qu e\qu c). Команда \sk означает "пробел", а \bar - тактовую черту. Команда \enotes заканчивает последовательности нот, а команды \NOtes и \Notes - их начинают. Обратите внимание, что количество прописных букв в команде \notes определяет расстояние между метрическими единицами в последовательности нот.

Восьмая строка примера выглядит несколько сложнее других, поскольку в ней определена последовательность нот под ребром. Команда \ibu0a1 начинает ребро .0, причем "1" здесь означает наклон ребра в 5., а "a" - высоту ребра, соответствующую ноте "ля". Команда \tbu0 завершает ребро .0.

Сложно? Только на первый взгляд. К этому привыкаешь буквально за несколько раз - так все удобно и продуманно. Кстати, в отличие от Finale и подобных ей программ, за которые производители просят немалые сотни долларов, MusiXTeX можно скачать бесплатно, зайдя, например, на одну из главных страничек разработчика по адресу www.gmd.de/Misc/Music/Welcome.html. Правда, не уверен, что вы сможете использовать этот пакет под Windows, даже если у вас уже стоит TEX: исполняемый файл musixflx, похоже, существует пока только для Linux. Зато на сайте имеется и вариант для сборки программы из исходников, и готовый rpm (устанавливается "одним щелчком мыши").

Кстати, тех, кому получить качественный результат хочется, а учить команды MusiXTeX лень, могу порадовать: уже появилась первая графическая оболочка для MusiXTeX, написанная независимым разработчиком. Она называется Mux2D и лежит на сайте mux2d.sourceforge.net. Правда, это еще очень ранняя бета-пташка, однако начало положено.

Так что есть надежда, что пользователь рояля скоро перестанет страдать от пользователя компьютера.



1 (обратно к тексту) - То есть при желании, конечно, и плохо набрать тоже можно, но для этого придется специально приложить некоторые дополнительные усилия.

2 (обратно к тексту) - Эта относительно "молодая" программа сейчас стремительно набирает популярность среди профессионалов "нотного дела". Мы уже писали о ней в новости "Нотная дуэль" ("КТ" #337). - Scout.

3 (обратно к тексту) - Это даже если мышка хорошая. А если шарик хоть чуть-чуть загрязнился - о нормальной работе в программе можно забыть...

4 (обратно к тексту) - Поскольку в Finale предусмотрена возможность самостоятельно "отбивать" себе доли, например, педалью.

5 (обратно к тексту) - Кстати, ни в одной WYSIWYG-программе нотного набора этот самый WYSIWYG не реализован без ошибок, мелких, но неприятных. Впрочем, в Windows это скорее всего связано с реализацией Microsoft'овских системных библиотек, о чем недавно писала "КТ".

6 (обратно к тексту) - Для тех, кто не знает: в TEX все команды начинаются с символа \ (обратная косая черта) и продолжаются до первой "не-буквы".

7 (обратно к тексту) - Если файл компилируется не в первый раз, то последовательность этих трех команд обычно бывает нужно предварить командой rm -f test.mx2 для удаления mx2-файла.

8 (обратно к тексту) - Правда, только в том случае, если в исходном файле использована команда \startmuflex или \startpiece.



© ООО "Компьютерра-Онлайн", 1997-2022
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.