beeptoysで4分33秒

4分33秒という曲を知っていますか?
Wikipadiaから引用すると

概要
この曲は「音楽は音を鳴らすもの」という常識を覆す、「無音の」音楽である。


とあります。


色々な解釈があると思いますが、楽曲に音数というパラメータがあるとして
それを0にしてしまっているというエクストリームな精神が私は好きです。


4分33秒はこれを考案して実際に演奏してしまったのがすごいのであって
wavファイルを作っても意味はあんまりないんですが、そこはまぁ、ネタです。
Rubyとbeeptoysを使って4分33秒を作ってみましょう。


WavクラスはArrayではなくて
NArrayという拡張ライブラリがインストールしてあれば
NArrayを与えて作ることができます。
また、Arrayを与えてもNArrayがインストールしてある環境では
内部でNArrayに変換して、省メモリを試みます。


今回はその、NArrrayクラスを使って作ってみます。

na = NArray.sint( 4.min + 33.sec )
w = Wav.new na
w.save '4min33sec'


これで wave ディレクトリに4min33sec.wav ができています。
簡単ですね。


audacityでこのファイルを開いて結果を確認してみます。
暇な人は再生してみたりすると良いんじゃないでしょうか。



参考:
beeptoys チュートリアル - きみのハートを8ビットキャスト