カテゴリー: 未分類

 

Super Collider

音楽を作るというと、多くは楽器などの音源があってそれを演奏したりシーケンサで鳴らしたりというところから始まりますが、その音源も作ってしまうというツールにSuperColliderというものがあります。
音響合成もシーケンスもキャラクタベースのブログラム言語で記述します。
今回は、以前別のプログで作ったものを基本にパートを加え、より音楽的になるように工夫してみました。
(このとき音楽専用のプログを作ってみたいと思い、このブログのきっかけの一つとなりました)

Super Collider


やっていることですが、p1がメロディ、p2がベースパートで、メロディは確率によって音を選んでいます。ペンタトニックスケールの出現率を高くし、ルートと五度は三度の音でハモらせています。
ベースはグルーブを出すために音量をランダムに変えています。
今回は音源についてはシンプルはサイン波ですが、もっとシーケンスで積極的に変化させるものもやってみたいと思っています。(p1のリリースは長め、p2は短め)

Random Music

現代音楽の世界で、バルトークの黄金分割比、ベルクの総音程音列など音を数学などのルールに基づいて選ぶ作曲方法などがあります。(柴田南雄氏「音楽の理解」音楽と数理の章参照)
コンピュータの発達とともにプログラムで音楽を制御することが、専門家でなくても家庭で簡単に実行できるようになり、私もプログラミングでいろいろと試しました。(音楽はプログラムが上達するための題材が豊富です。アルゴリズムコンポジション的なものを除いても、MIDIシーケンサ、音響合成などをC言語で作ると通信、並列処理、ビット操作など一通りのスキルが身につくと思っています。)
当時一番最初にやったのはNEC PC6001のBASIC言語をつかったランダムミュージックでした。音楽に対する考え方がガラッとかわったのを記憶しています。音楽理論に興味をもつようになったり、変拍子の音楽に目覚めたのもこのころです。(コンピュータでガイドラインとなるフレーズを鳴らしてそれ合わせてドラムを叩いたりか・・)
しかしこのランダムというのがとても深いこと気付きました。ランダムをどのように作るかとか、どの程度ランダムにするとか。確率を使うと毎回違ったものになりますが、決定論的につくれば初期値によってバリエーションをコントロールできます。
このあたりのテストは以下プログで。

1/f Noise

Logistic Map

また使う音の数(5音、7音、12音)によって音楽の調性との関係もかわってきます。音程を全てばらばらにすることによって無調とする総音程音列は3856個あり計算で求められます。これを計算できるアプリを以前作ったこともあります。(自分が欲しいアプリを作るのが当時のポリシー(^^;))

この例はC-E-D-Fとキーを押して、それに続く総音程音列を検索します。+ / – キーで次の候補を検索します。

また視覚的な動きと音が連動して奏でるランダムな音はどのように感じるだろうと、音楽ゲームの一つのモードとして試したものもあります。(バウンド角度に乱数を少しかけているのでランダムになる。かけないと周期的。このアプリのアイコンをいろいろなところで使っています。)

音楽と数学の関係を追求していくと、発想がひろがりとても面白いです。今後もいろいろと試していきたいです。

最後にこの機会にIchigoJam BASICでちょっと作ってみました。(MSXでやりたかったのですが、ちょっとしまいこんでて・・)
圧電ブザーなのでかなりチープです。音域がだんだと広がります。

Cellular Automaton


格子状のセルを単純なルールで状態を更新することにより全体のパターンを観察するモデルで、自然現象や生命体のシミュレーションができるほど複雑な動きをさせることができます。2次元の代表的な例がライフゲームです。これを音楽に応用したらどうだろうと試みたWindowStoreアプリが上の”bitlife”になります。久しぶりに動かしてみようと思ったら動作しなかったので(Windows10)、開発していたPC(Windows8)を引っ張り出し立ち上げようとしたらストアから削除されている関係で本体からも消去されてしまいました。VisualStudioを立ち上げてビルドしようとしましたが環境が変わっていてエラー。ということで下記ページの資料しかない状態になってしまいました。

http://crossframe.iiv.jp/apps/

画面上部の白黒が鍵盤に相当して、セルの色がLightBlueのセルの音がなるしくみになっています。ライフゲームは通常色はついていませんが、全てのセルを対象にすると多すぎるので、消滅して復活したセルのみを対象にしています。16行は上から順に走査して対象のLightBlueのセルがある音を走査のタイミングでピアノ音を発音します。

セル・オートマトンについては以下も参照ください。

Cellular Automaton

Windows Store アプリはもう一つ”Clocklavier”というかなりチャレンジングなものもつくりました。
これは時刻を時計を見なくてもメロディを聞くだけで確認できるものです。といってもメロディのルールを熟知する必要があり、現実的ではありません。アンビエント的な環境音楽で時刻を知ることができたらという発想から作りました。

これは立ち上がったので、とりあえず動画に記録しました。

メロディの仕様

セル・オートマトンの音楽への適用はとても可能性を感じています。前回の投稿のマトリックス・シーケンサとの組み合わせで面白いものを生み出せそうです。

Matrix Sequencer

マトリックスタイプのシーケンサは、お絵かき感覚で曲を作ることができるためアプリなどでよく見かけます。でたらめに作ってもそれっぽくまとまって聴ける魅力があります。私もiPhoneアプリ”Tropf Musik.electronica”で同様のものをつくりました。特徴はシーケンスの進行方向が縦・横・斜めと逆行含めて8方向iPhoneを傾けることでリアルタイムに切り替えられることです。
音はCmajor, Cminorスケール(切り替え可能、逆行も)のFからGの16音で、音色も切り替えられます。
http://iphone.iiv.jp/sound/index/L0020
以下当時のデモムービーです。

マトリックスシーケンサの曲は、アプリを操作しながらでなくても(音のみでも)聴くことができるだろうか、ということで作ってた曲をアップしてみました。

観賞用とするには、もっと計画的に作らないとだめかもしれませんね。

作曲のヒントになったり、まだまだいろんな可能性を秘めているタイプのシーケンサだと思います。

Algorithmic Composition

アルゴリズムで曲づくりをするときの代表的なツールといえば、MAXです。まずはこのサウンドプログラミング環境を使った実験を紹介したいと思います。

入力ソースには自作ライブコーディングiPadアプリケーション”M^2″を使っています。
M^2はもともとiPhoneアプリケーションがオリジナルですが、iPad版はOSCが利用可能になっており、WiFi経由で通信できます。このデモはM^2のランダム音階の出力をOSC送信してMAXプログラムで受信しています。MAXプログラムのねらいは、音列に対してハーモニーとリズムを付加して、入力ソースの性質による音楽の変化を表現しようとしました。

このときのMAXデータがあったので、OSCでなく単純なランダム音列を入力にしたものを実行して録音してみました。

右上のスライダーでランダム値を徐々に変化させています。

このようにできるだけ聴けるものを公開するため、SoundCloudを利用していくつもりです。

以下、参考までにM^2の動画です。