「音楽は世界の共通語だ!」――今回はプチコンのサウンド機能、「MML」と「TALK命令」を使ったプログラムについて取り上げる。ハカセ渾身のMML作品の出来栄えに、ワンパク、インテリ、神崎の開いた口がふさがらない!?
先日、「プチコンmkII」の海外ローカライズ版である「Petit Computer」の配信が北米でスタートしました(動画1)。
実は、この原稿を執筆している段階ではまだ“COMING SOON”状態だったりします。しかし、近い将来、海外ユーザーが作ったプログラムがたくさん公開され、さらに、メイド・イン・ジャパンのプログラムが海外でも楽しまれることを想像するだけで、今からワクワクしてきます! そう、プログラム言語は(おおむね)世界の共通語なのです。
え? 何? ゲーム中のメッセージやプログラムのコメントが外国語だと読めなくて困る? うーん。それは……。
では、プチコンのサウンド機能を使ったプログラムはいかがでしょうか。「音楽は世界の共通語」なんて言いますしね。
なお、文化的背景や歴史、民族性を考慮せず一概に音楽を『世界の共通語』と表現することには異論もあることを付記しておきます。
あ、ハイ……。
インテリよ、そこまでかしこまらんでもよかろう。何を再生するかはさておき、『MML』を使った“ミュージック”は“イナフ”に“ワールドワイド”じゃぞ。
海外版が出たからってムリして英語を使うんじゃねー! 大体『MML』ってのは、ナンだ?
その全方位に当たり散らすツッコミ、それでこそワンパクじゃ。MMLとは……、『Music Macro Language(ミュージック・マクロ・ランゲージ)』の略である。アンダースタン?
ええと、つまり音楽を記述する言語ってこと?
言語を『記法』と読み替えても構わんぞ。そもそもコンピュータプログラムで音楽を再生しようとした時、ネックになったのがその記法じゃ。楽譜でおなじみの五線譜なんかは一番普及している音楽記法じゃが、プログラムの中に五線譜を記述するのはムリがあるしのう。そこで、テキストで音楽を記述する方法として発達したのがMMLなのじゃよ。
現在では五線譜や鍵盤を使ったGUIによる入力も普及しました。しかし今でも、文字列だけで完結する上にプログラマブルなMMLは、需要もファンも多いようですね。
ウム。近年じゃと音楽データの入力にMMLを使ったオンラインゲームもあって、再び注目されておったな。まずは、MMLの簡単な例を見てもらおうかのう。
ふーむ。ドレミをアルファベットに読み替えてるってことナノカ……?
日本の音楽の授業で習うのはイタリア式の『ドレミ(Do Re Mi)』だけど、英語式なら『CDE』になるんだ。その意味では、音階をそのまま文字で書いているとも言えるかな。
この図の中でちょっと特殊なのは、オクターブの変動じゃな。他にこう書くこともできるのじゃが……。
BGMPLAY "O4CDEFGABO5CDE"
これは最初に“O”(オクターブ)のパラメータを“4”に設定して、後半で“O5”と書いて1上げておる。ちょっと言語っぽくなってきたじゃろ。
先頭から順に読んでいくとそれが楽譜になるんだね。
さよう。“V0”と入力すれば音量ゼロ、“T120”ならBPM(拍/分)120のことじゃ。このあたりが五線譜とデジタルデータの違いがはっきりしとるところじゃな。音色をプリセットから“@数値”で指定できたり、エンベロープを“@EAttack値,Decay値,Sustain値,Release値”で定義できるのは、いわゆる打ち込み派にもグッとくるところじゃろうか。
エンベ……?
大ざっぱに言えば、音色の“波形情報”のことなんだけど。
ハケ……?
ま、まあいいじゃろう。チップチューンやピコピコ音の記述がはかどると思ってくれい。MMLのコマンドもいろいろ増えて工夫次第で大抵のことは記述できるようになったんじゃが、統一規格がないまま進化が枝別れしてしまって『方言』が多いのは泣き所かもしれんのう。
これまでの話だと、BASICには『方言』も珍しくないって聞くけど……。
単純なところじゃと、言語によってはさっきの図で示したオクターブ上昇“<”も不等号の向きが逆になるのじゃ。
そこは統一でいいだろうヨ!
じゃって“>”を矢印の図形『→』として見れば、X軸のプラス方向を指しておるじゃろ……。
Copyright © ITmedia, Inc. All Rights Reserved.