Веб программирование

Воспроизведение частотных звуков через системный динамик

 
 


Наверно в Паскале место есть не только программистам, но... музыкантам и композиторам тоже!.. Правда, в этой статье речь пойдёт не о семплах, а частотных звуках! У каждой ноты от контр-октавы до пятой есть своя частота.
Для того, чтобы добавить звуки системного динамика, надо подключить к программе модуль crt. Про него речь пойдёт в следующей статье.  Далее мы вводим строку:
System.Console.Beep({здесь указываем частоту звука в Гц}, {здесь пишем его длительность в миллисекундах});  Если работаете не только в PascalABC.Net, там другой 3-строчный метод вывода звука:

Sound({частота в Гц});

Delay({длительность в мс});

NoSound;

Но мне кажется, что в PascalABC.Net удобнее! В одну строчку входит и частота, и длительность! Также в качестве пауз можно использовать строчку: Delay({Задержка в мс});

Приведём небольшой пример: небольшой отрывок из рождественской мелодии.
_______________________________________________________________________

program Chrismas;

uses crt;

begin

System.Console.Beep(523, 500);

System.Console.Beep(494, 250);

System.Console.Beep(440, 250);

System.Console.Beep(392, 750);


System.Console.Beep(349, 250);

System.Console.Beep(329, 500);

System.Console.Beep(293, 500);

System.Console.Beep(261, 750);

System.Console.Beep(392, 250);

System.Console.Beep(440, 750);

System.Console.Beep(440, 250);

System.Console.Beep(494, 750);

System.Console.Beep(494, 250);

System.Console.Beep(523, 2000);

end.

_______________________________________________________________________

И ещё: 250 мсек-1/16(шестнадцатая); 500 мсек-1/8(восьмая); 1000 мсек-1/4(четверть); 2000 мсек-1/2(четверть); 4000 мсек-целая;

Для добавления точки надо к длительности прибавить к длительности ту длительность, которая стоит после точки, например:
1/4+1/8=1000+500=1500 мсек.
Конечно это не то, что семплированная виртуальная студия, но простые мелодии можно составить!
Подпишись на мой канал: youtube.com/channel/UCrZn90QTo-8cw8o17LIKRew


Есть вопросы? Спроси на нашем форуме!!
Нет комментариев

Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.