Имперский марш
Листал ленту, видел кучу всего веселого. Вспомнил про это, поностальгировал.
В прошлых постах было слишком много слов «работаем». Поэтому сегодняшний пост будет про то, как играть. Причём играть не что-то там, а музыку. Причём музыку не какую-то там, а «Имперский марш» из «Звёздных войн». Так что, товарищи Дарты Вейдеры, отвлекитесь на пару минут от удушения очередного офицера и насладитесь чудесными звуками.
Для воспроизведения звуков будем использовать модуль winsound из стандартной библиотеки Python. Устанавливать ничего не нужно, он уже идёт в комплекте с интерпретатором.
В нём есть функция Beep(), с помощью которой можно воспроизвести звук заданной частоты и заданной длительности.
Важно: модуль работает только под Windows. Господа линуксоиды, сегодня вы в пролёте :(
Дальше в посте будет много кода в виде скриншотов. Забрать его в виде текста можно здесь.
Также понадобится модуль time, с помощью которого будем создавать паузы.
Каждой ноте соответствует определённая частота звука, выраженная в герцах. Таблицу можно увидеть здесь или здесь.
Составим список необходимых нот:
Ключ - это название ноты, а значение - это частота.
Запишем мелодию в виде набора нот.
1/4, 3/16 и прочее - это длительность каждой ноты.
Нам понадобятся 2 функции: одна для воспроизведения конкретной ноты, а вторая - для воспроизведения всей мелодии.
Воспроизводим ноту
Воспроизводим мелодию
Наслаждаемся результатами
Оригинальный темп мелодии - 103 BPM.
Забрать полный код в текстовом виде можно здесь.
Кавер на тему «Звездных войн» / «Имперский марш» (Джона Уильямса) от The Floppotron
Узнал, что самокаты Whoosh, когда их много, играют имперский марш.
___
Источник | #BudanovDaily |
Вот вам камчатский краб.
Взято из инстаграма Романа Федорцова - рыбака из северных морей нашей необъятной.
Ссылку оставлять не буду, мало ли что. Он там так и называется - Роман Федорцов.