小学校の音楽の授業で、ベートーヴェンの「よろこびの歌」を習い、この曲をRaspberry Piで演奏してみよう、できればちょっと変わった雰囲気にしてみよう、と思い立ちました。開発には、ビジュアルプログラミング言語の「Scratch」を使うことにして、まず通常のパソコンで作り始めました。

 Scratchでは、音程を数字で記載します。例えば「ファ(F)の8分音符」を鳴らしたいときは「65の音符を0.5拍鳴らす」というように、一つずつ指定していきます(図1)。こうして1フレーズを作り、それを10回繰り返すようにしました。

図1●Scratchのスクリプトによる“楽譜”
図1●Scratchのスクリプトによる“楽譜”
[画像のクリックで拡大表示]

 音だけではつまらないので、それに合わせたアニメーションも作りました。

 まず背景(ステージ)となる画像を「Paint Editor」で描きます(図2)。よろこびの歌のドイツ語歌詞の冒頭「Freude」を変形して背景に入れました。さらにこの画像に「色の効果を25ずつ変える」というスクリプトを加えました。これにより、色相が次々と変化します。Scratchでは色相を0~199の数値で表すので、8回色が変わるとまた元の色に戻ります。

図2●背景を「Paint Editor」で描く
図2●背景を「Paint Editor」で描く
演奏時は色相がすこしずつずれるので、さまざまな色に変わる。
[画像のクリックで拡大表示]

 さらに、この背景に、スプライト機能で鳥を飛ばすようにしました。

 スクリプトを作り終えて、Raspberry Pi で鳴らしてみたところ、私がプログラミングした以上に変な曲になりました。使っている「Raspberry Pi 1 B+」の処理速度が遅いため、音が出るタイミングが微妙にずれるようです。うれしい誤算という感じです。

 この作品は、2016年7月17日に「横浜ロボット勉強会」でも発表しました。まだ8小節分しか作れていないので、もう4小節は追加して、曲が一巡するようにしたいです。