Пианино на клавишах компьютера

Маштаков
Программа, о которой идёт речь, недавно модернизирована, о новом варианте тут -
http://www.proza.ru/2016/02/26/2390

    Уважаемые читатели!
    Пишущие стихи, и просто - читатели, вы, вполне вероятно, исполняете свои стихи в виде песен, или играете на каком-нибудь музыкальном инструменте, или программируете на языке Турбо бейсик, или ваши дети обучаются чему-нибудь такому в школе, - тогда, я думаю, Вам будет интересен мой опыт сочетания программирования и музыки.
    Первый естественный вопрос - а стоит ли делать что либо в этой области самому - в интернете есть масса программ виртуального пианино, например, с хорошим звучанием, а не с писком компьютера. Зачем самодеятельность?
    Кроме того, что делать что либо самому, всегда интереснее (а программирование на Турбо Бейсике - мой "конёк"), кроме этого, есть и другие причины.

    1. Звук компьютера при современных динамиках на нём - вовсе не писк, а звучание, хотя и обеднённое. И очень часто подобная обеднённость материала с успехом используется в искусстве, подобно тому, как белый стих имеет свои прелести в сравнении со стихом рифменным.
     2. Звук лишённый обертонной красоты звучания оказывается очень пригодным для проведения всякого рода гармонических экспериментов, сравнений различных настроек, музыкальных ладов и прочего, если Вы этим интересуетесь.
      3. Программа оказалась достаточно совершенной по своим эргономическим характеристикам - работа с одной нотной строкой, возможность мнемонической записи звуков на эту строку в режиме исполнения, возможность прослушивания, редактирования, записи строк создаваемой мелодии в обычный текстовый файл.
    Поскольку для мнемонической записи использованы понимаемые музыкантами обозначения, то оказывается возможным чтение мелодии на слух прямо в текстовом файле, и редактирование её там же.
      4. Программа может быть приспособлена для чтения и проигрывания не только музыкальных текстов, но и для проигрывания текстов стихов и прозы, и русскоязычной тоже.  Она сможет читать ударения, демонстрировать ритмику того или иного текста, делать синтаксические паузы и паузы стиховые. Каждый сможет настроить её к этому по своему вкусу и надобности. В принципе к ней и счётчик можно приделать, чтобы подсчитывать ритмические нюансы текста. А не хотите подсчитывать - можете воспринять особенности авторской ритмики на слух. Некий инструмент литературоведческого исследования.
      5. А можете и просто баловаться. Увидели у кого-то стихи с нотами, тут же, не отходя от компа сыграли и записали. Зашли на сайт, обучающий музыкальной грамоте - открыли параллельное окно, и упражняйтесь, исполняя примеры.

   Итак, рассказываю. Верхнюю часть окна программы и верхнюю часть клавиатуры компа Вы видите на картинке. Не пугайтесь, я не заклеивал белым два ряда клавиш, хотя хорошо, чтобы они были белые, а не чёрные, как часто бывает на клавиатурах. Надписи на белых клавишах на рисунке я сделал для пояснения звучания клавиш. А вот 9 чёрных наклеечек на верхнем ряду клавиш я сделал из чёрного картона, но написал на них не ноты, а заклеенные обозначения (белой гелиевой ручкой). Можно потрудиться, и найти чёрные колпачки от старой клавиатуры и заменить белые на чёрные.
   Не буду говорить о тонкостях работы - в программе имеется Help, выводящий на экран все подробности. Расскажу о звучании клавиш и о музыкальных записях в файлах.
   Пианола (так я назвал программу) может работать в различных настройках, из которых практически важными являются равномерно темперированная, классическая на 12 полутонов (по квинтам вниз) и настройка на 19 полутонов (по секстам вниз).  Подробности настроек см. в предыдущей статье - http://www.stihi.ru/2015/01/19/8488

   В классической настройке всё стандартно - звучат верхние два ряда клавиш. А на нижнем, третьем ряду бемоли энгармонически дублируют диезы. Левая часть клавиатуры - в октаве той, которую Вы указали ( 04 синенькими цифрами в меню означает игру в первой октаве - 4-й по счёту снизу. 1/4 - запись звучания четвертных нот без знаков продлений или укорочений звука. А знаки такие предусмотрены  ~  ^  '  ` - легко догадаться какой, для чего. Также, как и предусмотрены знаки "-" бемоль и "#" диез следующие после обозначений нот.  Знаки исполнения легато, нормально, стакатто, пиццикато; трели (t) и мелизмы также предусмотрены. Понижение и повышение на октаву или указанное количество полутонов, ускорения и замедления. Нет только тише и громче. Увы, Бейсик такого не предусматривает, хотя можно писать в порты (надо знать, в какие), но и такое возможно на будущее. Не всё сразу.
   Если Вы склонны к программированию можете доработать программу - я размещаю на Яндекс диске неоткомпилированный текст программы, вместе с Бейсиком заодно, вот тут - https://yadi.sk/d/ihroEmtwrzqNx

     Вернёмся к клавиатуре.
     В настройке на 19 полутонов энгармонизм звуков расходится. Теперь все клавиши звучат по-разному. Чтобы сыграть хроматическую гамму от нижнего До до До верхнего, надо двигаться по диагоналям клавиш (снизу вверх и слева направо). Мнемонически легко запомнить.
   C  C#   D- D  D#   E- E тут вниз, и продолжаем   F- F  F#   G- G  G#  и так далее...
Диатоническая гамма до-мажор может быть сыграна двумя способами
    C D E F G A B a   или  C D E F- G A B a - второй вариант звучит не совсем обычно, но более гармонично. Первый вариант, аналог C-dur, исполняется по клавишам среднего ряда (см.рисунок). А звучание клавиш нижнего ряда аналогично звучанию тональности Ces-dur ( 7 бемолей). Аналогично, не значит равнозначно. Диатонические гаммы в 19-ти интервальной настройке звучат своеобразно. Опевание тоники соседними звуками более явственно разрешается со стороны нижнего вводного звука, тогда как в традиционной 12-ти интервальной настройке лучшее разрешение в тонику происходит со стороны верхнего вводного звука, и именно это характерно для русскоязычной речи.

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

    Мои впечатления от звучания 19-ти тоновой настройки таковы. Звуки близкие друг к другу кажутся более мелодичными, ожидающими более точного продолжения нежели того, к которому мы привыкли в обычном звучании. Это продолжение иногда находится не совсем привычными ходами по клавиатуре. А иногда не находится. Вы вполне можете сыграть гамму с хорошим разрешением в тонику идя по клавиатуре слева направо, но в обратном движении разрешения в тонику не найти. А иногда, идя по бемольному ряду вниз хочется перейти на средний ряд идти по нему вверх, дойти до тоники а потом вернуться по обратному пути. В общем, очень интересные и совершенно неизведанные ладовые ходы в этой настройке наблюдаются.
   О перспективности 19-ти тоновой настройки и о её ладовых возможностях можно прочесть тут - http://unism.narod.ru/arc/2006gs/gs.pdf
Цитирую - "мягкие, сдержанные, близкие к разговорной интонации тональной 19-ти ступенной музыки имеют все права на широчайшее признание".
   Хотя относительно "разговорной интонации" - прочтите то, что говорилось выше об особенности опевания тоники диатонического лада в 19-ти интервальной настройке.
   То, что настройка оказалась более мелодичной на малых интервалах понятно - гармоничность целого тона улучшилась в 3 раза (см. табл.2 предыдущей статьи), и этот интервал, возможно, воспринимается в этой настройке не как диссонансный, улучшив свои консонансные признаки.  И малая терция, относимая к консонансным интервалам, но имеющая в равномерно темперированном ряду созвучие "на грани фола", в 19 звуковой настройке стала совершенным интервалом.
   
    Но, честно скажу, настройка достаточно минорная. Или я подобрать звуки не умел, или что ещё, но когда я начинал играть в этой настройке, то обычно приходил кот и начинал жалобно мяукать, присоединяясь к звукам пианолы. Впрочем, что-что, а помяукать он любит. По поводу и без повода - такой разговорчивый кот)))
    Впрочем, можно запустить музыку в быстром темпе и станет она повеселее.
    Хочу показать Вам, как пример, мою первую запись ( в классической настройке).
    Вот как она выглядит в текстовом файле:
{1-я запись }
 1  {*0420| (440)FGA^A'A'B'A'G^G'G'A'Bc^c'c'd'c'B^BBcBA^AABAG~GG }
 2  {*0420|G'G`A`GBB'cBccdef^ c'c`B`A'G'G'FEFFGAB~ }
 3  {*0420|B'A'dBcB'A'GFE'G`A`BB'c`d'e'f'e`d`c-~ }
 4  {*0420|B`A'G'FE~E'F'G'A'G'A'B'c'B'c'de^f^                }
 5  {*0420|cBAGFEDE^C~ D~C~                }
 6  {*0420|BcBdBcBdBcBdBcBdBcBdBcBdBcBdBcBdBcBd }
 7  }
 8  {*0420|gfedfedcedcBdcBAcBAGBAGFAGFEGFEDFEDC }
 9  {*0420|\edcBdcBAcBAGBAG  FAGFEGFEDFEDC  }
 ...
 14  {*0420|cBAGFEDE^C~ D~C~          }
 15  {*0420|cBAGFEDE^C~ D~C~          }
 16  {*0420|                }
 17  {*0420|C\D/C\D/C\D/C\D/C\D/C\D/C\D/   }
 18  {*0420| d\e/d\e/d\e/d\e/d\e/d\e/d\e/d\e/d\e/d\e/d\e/   }
 19  {*0420|d\e/d\e/d\e/d\e/d\e/d\e/d\e          }
 20  { 0420|                }
,,,
Вы видите, в записи есть пустые строки, они пропускаются. В начале строк Вы видите *0420, что означает 4-первая октава 2-четвертные ноты 0-легато.  Внутри строк октава повышается и понижается знаками  "/" и "\".  Переход на стакатто делается буквой "s".
Число в скобках в начале записи указывает темп. Оно создаётся при записи очень просто - четырьмя ритмичными постукиваниями по клавише "/" в нужном темпе. Не захотели так, постучите по-другому. Хотя можете и цифрами записать.
     Звучание этой записи Вы можете услышать, если скачаете файл с ней в формате VAW отсюда -https://yadi.sk/d/aXOQJwwcdgtit

Романс на стихи Ф.И.Тютчева  выглядит так:
{F.I.Tutchev} Ф.И.Тютчев Что ты клонишь над водами...
 1  {*0420| !!4 (800) >>/GdGdGdGdGdGdGdGdGdGdGdGdGd  }
 1  {*0420| >>/GeGeGeGeGeGeGeGeGeGdGdGdGdGdGdGdGd''  }
 2  {*0420| (1600)<1ggd<0d<3ed'e'dcBADD<6B<3A' <0B<2A^  }
 2  {*0420| <2\>>>>4GgGgGgGgGgGgGgGgGgGgGgGgGgG  }
 3  {*0420|  gg<1dde<3d'e'dcBADD<8B<1A'<0B<3A^  }
 3  {*0420|  <3\>>>>4GgGgGgGgGgGgGgGgGgGgGgGgGgG         }
 4  {*0420| <4B_'<1t4B_'tB_'B-_'A#_'t8B_'d-^'tc-^' <3c-<0c-GA<4B-d-c-^^ (1400) }
 5  {*0420|  g^'t8fe'd'c'Bd^tc^' g^'t8fe'd'c'Bd^tc>' >8/CccCccCccCcc^>4AAABBBc<c~ }
 6  {*0420| ^>2g^'nf<0e'd'c'B<0d^lc^' >4g^'sf<0e'd'c'B<0d^lc ' n/clct8ctc>1AB<2t8c~  }
,,,
В романсовом исполнении ритмика достаточно вольная - она следует выразительности, и потому здесь много значков < > с цифрами, достаточно плавно меняющих длительность звучания нот. Но они не возникают автоматически, их приходится тщательно подбирать. Хорошо, что возможность такая есть.

А вот - запись текстов английских анекдотов, взятых из источника, который Вы можете рассмотреть в тексте самой записи.
{-----------}Английские анекдоты http://audio-class.ru/mailing/english/em-index.html
 1  {*0420|  (862)?                }
 2  {T0420|oom A police officer in a small town stopped a motorist who was speeding}
 3  { 0420| officer," the man began, "I can explain" "Just be quiet," snapped the officer}
 4  { 0420|* in jail until the chief gets back." "But, officer, I just wanted to say..." }
 5  {И0420|ик материала: http://audio-class.ru/mailing/english/e_sub3.html}
 6  {и0420|ируемая ссылка на источник ОБЯЗАТЕЛЬНА! администратор audio-class}
 7  {U0420|ntering the little country store, the stranger noticed a sign saying "DANGER! }
 8  {o0420| glass door. Inside he noticed a harmless old hound dog asleep on the floor }
 9  {t0420|ore manager, "Is that the dog folks are supposed to beware of?" "Yep, that's}
 10  {c0420|'t help but be amused. "That certainly doesn't look like a dangerous dog to}
 11  {И0420|ик материала: http://audio-class.ru/mailing/english/e_sub1.html }
 12  {и0420|ируемая ссылка на источник ОБЯЗАТЕЛЬНА!  админ audio-class}
 13  {M0420|'s View As the family gathered for a big dinner together the youngest son }
 14  {p0420|n army recruiter's office. There were audible gasps around the table, then }
 15  {s0420| their disbelief that he could handle this new situation. "Oh, come on, quit j}
 16  {И0420|ик материала: http://audio-class.ru/mailing/english/e_sub2.html}
 17  {и0420|ируемая ссылка на источник ОБЯЗАТЕЛЬНА! админ audio-class}
 18  {T0420|oom A police officer in a small town stopped a motorist who was speeding}
 19  {t0420|n began, "I can explain" "Just be quiet," snapped the officer. "I'm going to l}
 20  {И0420|ик материала: http://audio-class.ru/mailing/english/e_sub3.html }
 21  {J0420| sick A fellow stopped at a rural gas station and, after filling his tank, he }
 22  {c0420| drink his cola and he watched a couple of men working along the roadside}
 23  {И0420|ик материала: http://audio-class.ru/mailing/english/e_sub4.html }
,,,
Эта запись тоже прекрасно себе звучит, поскольку английские буквы, означающие ноты, в ней имеются. Имеются также и буквы s-стакатто p-пиццикато. Я ровно никак эту запись не редактировал. Компьютер сам с ней расправился по своему усмотрению, указав обычные - октаву, темп и легато, там, где он намекающих знаков не понял. Тот рефрен, который Вы можете в ней услышать, обязан своим появлением интернетовской ссылке на источник копирования, приписываемой сайтом к каждому скопированному фрагменту.
     Запись можете прослушать, она находится тут -
https://yadi.sk/d/0rqV-1B-gxp8v

Благодарю за внимание.
Подробности о настройках, использованных в программе, и о их звучании Вы можете прочесть в предыдущей статье http://www.stihi.ru/2015/01/19/8488
  Программа проста в обращении. Её даже не нужно устанавливать на компьютер, также, как и Турбо бейсик, просто скачайте и запустите. Как это сделать? Подробности в приложении к этой статье, которое Вы можете просмотреть на Яндекс диске, см. по ссылке ниже.
========================
Выражаю благодарность Никите Скиба, студенту 3-го курса Московской консерватории по классу альта, за идею и поддержку этого компьютерного проекта.
автор: Дмитрий Маштаков.

ССЫЛКИ ДЛЯ СКАЧИВАНИЯ

https://yadi.sk/i/IWHmoNvMeTYgd - эта статья, дополненная Приложением о скачивании и о работе программы. Можно просмотреть прямо на Яндекс диске.
https://yadi.sk/d/5u-HJdxls6LKS - Пианола, русскоязычный PIA и англоязычный PIANOLA варианты
https://www.dosbox.com   - ДОС ящик

Сделанные записи можно скачать отсюда, чтобы затем прослушать их в звуке Пианолы ( формат WAV ):
https://yadi.sk/d/Gax2Vl1ueV7BD - Полёт шмеля муз. Римского Корсакова
https://yadi.sk/d/bnSCqK4YeV6xo - романс на стихи Тютчева «Что ты клонишь над водами…»

http://yadi.sk/d/HVQRH_t5eVRqL - песня «Кусочек Родины» Слова - Тамара Андрюнина. Музыка - Анатолий Филимонихин   http://www.stihi.ru/2014/02/28/4696
прослушать эту песню в формате MP3 со звучанием аккордеона можно тут https://yadi.sk/d/eKuT64l1gsWne
 
==================== 5.02.2015
P.S. в дальнейшем я планирую программу модернизировать - звук можно будет не только направлять на колонки, но и непосредственно записывать в файлы формата WAV. При этом, в зависимости от подключённых функций звуков, можно будет создавать звучание фортепьяно, или колоколов - чего угодно. С помощью некоторой техники можно будет делать и многоголосие.

== 9.05.2015 Этот результат уже достигнут, подробности можно посмотреть тут -
"Озвучивание мелодий Пианолы" http://www.proza.ru/2015/05/09/707
Одноголосные озвучивания можно прослушать в формате MP3 по ссылкам -
https://yadi.sk/d/fpnQEbVNgskEA - романс на стихи Тютчева
https://yadi.sk/d/KnxmpTjNgskqt - полёт шмеля Р.К.

Записи с двухголосием можно прослушать по следующим ссылкам. Прослушайте сперва первую мелодию и догадайтесь, откуда она взялась? Очень мелодично, но ничего нового, это реверс следующей мелодии, которую Вы сразу же узнаете:
https://yadi.sk/d/UffAkRiigsR4S - мелодия (реверс следующей записи)
https://yadi.sk/d/CdGYKL8OgsR82 - двухголосие, сделано программами Пианола и ZAW43

О продолжении работы можно узнать на моей страничке на проза.ру