3.2 Play[]

時刻 $ t$ (単位は秒) における音圧が $ \sin 2\pi f t$ である 音は、周波数が $ f\mathrm{[Hz]}$ の音である。 Play[] を使うと、この音が鳴らせる。 使い方は Plot[] に似ている。

440 Hz の音を鳴らす
  Play[Sin[2 Pi 440 t],{t,0,1}]

なお、 デフォールトのサンプリング周波数 (SampleRate) は $ 8\mathrm{[kHz]}$ である。 音楽CD品質のサンプリング周波数 ( $ 44.1\mathrm{[kHz]}$) にするには、
音楽CD音質で 440Hz の音を鳴らす
  Play[Sin[2 Pi 440 t],{t,0,1},SampleRate->44100]

音を混ぜるのは、単に和を作るだけである。
440Hz, 880Hz, 1320Hz の音を混ぜる
  ra[a_,b_,c_]:=Play[a*Sin[2 Pi 440 t]+b*Sin[2 Pi 440 2 t]+c*Sin[2 Pi
  440 3 t],{t,0,1},SampleRate->44100]

ステレオも出来るようである。
  Play[{Sin[2 Pi 440 t],Sin[2 Pi 880 t]},{t,0,1},SampleRate->44100]

うなりの例
 Play[Sin[2 Pi 440 t] + Sin[2 Pi  (440 - 1) t], {t, 0, 100}]
(近い周波数 $ 440\;\mathrm{Hz}$, $ 439\;\mathrm{Hz}$ の音を重ね合わせると…)
 Play[Sin[2 Pi 440 t] + Sin[2 Pi  (440 - 0.1 t) t], {t, 0, 100}]

Mathematica のマニュアルの例 (何だこれは)
  Play[Sin[700 t + 25 t Sin[350 t]], {t, 0, 4}]

和音, ついでに WAVE ファイル domisodo.wavを作成。
c = 2.0^(1/12);
do = 261*2*Pi; mi = c^4 do; so = c^7 do; do2 = 2*do;
snd=Play[Sin[do t]+Boole[t>1]Sin[mi t]+Boole[t>2]Sin[so t]+Boole[t>3]Sin[do2 t],
    {t,0,5}, SampleRate->44100,PlayRange->{-5,5}]
Export["domisodo.wav",snd]

\includegraphics[width=15cm]{eps/domisodo.eps}
(PlayRange->{} を入れないと音が割れてしまう。 この辺は良く分らない。 Export[] が気が利かないのかも。)



桂田 祐史