1998-12-19[n年前へ]
■音階を勉強する
単音シンセサイザーをつくる
今回は、音階そのものについて勉強をしてみる。世の中には色々な音階がある。いわゆる12音階の中でも、純正調、平均率などいろいろある。12音階でないものもある。どのような音階があって、それぞれどのような音程になっているのか調べてみたい。といっても、まずは7音音階、すなわち、ダイアトニックスケールだけを考える。
参考文献は手元にあった、「音楽の不思議」 別宮貞雄 著 音楽之友社である。なお、江尻氏の音律周波数表、音律について、音律実験(http://www.tg.rim.or.jp/~ejiri/)では色々な音階についての情報を知ることができる。5音階、すなわち、ペンタトニックスケールについての情報もある。同様なWEBサイトととしては「調律法ききくらべのページ」(http://www.top.or.jp/~murashin/index.htm)がある。ARATA氏の「MIDIで古典調律を」(http://www.nifty.ne.jp/forum/fmidicla/htmls/kotenj.html)にもかなりの情報がある。
ここでは、簡単にピタゴラス音階、ツァルリーノ音階(純正調音階)、12平均率だけを考える。
まずは、ピタゴラス音階を作る。Aという基準音を作る。その音に対して振動数が3/2倍の音をEとする。更に、Eに対して振動数が3/2倍の音をBとする。また、Aの振動数に対して、3/2倍の音をDとし、Dの4/3倍の音をGとする。そして、CGの3/2倍の音をCとする。最後に、Cの4/3倍の音をFとする。
各音の倍、あるいは1/2の音のオクターブ違いの音を考えると、結果としてC,D,E,F,G,A,Bのダイアトニックの7音音階ができあがる。このピタゴラス音階は旋律が良く響くという性質がある。よく響くという言い方は誤解を生じるかもしれない。「うまく旋律がおさまる」といった方がいいかもしれない。
D/C | E/D | F/E | G/F | A/G | B/A | C/B | |
ピタゴラス音階 | 9/8 | 9/8 | 256/243 | 9/8 | 9/8 | 9/8 | 256/243 |
ツァルリーノ音階(純正調音階) | 9/8 | 10/9 | 16/15 | 9/8 | 10/9 | 9/8 | 16/15 |
12平均率 | 2^(2/12) | 2^(2/12) | 2^(1/12) | 2^(2/12) | 2^(2/12) | 2^(2/12) | 2^(1/12) |
次に、ツァルリーノ音階(純正調音階)は、各音の間の振動数の比を見てもわかるように、和音はよく響く。しかし、旋律として聞いた場合には、必ずしも良いわけではない。しかも、転調はできない。現在、一番使われている12平均率は振動数比をみてもわかるように必ずしも、和音の響きが良いわけではない。しかし、周波数を見てもわかるようにピタゴラス音階とツァルリーノ音階(純正調音階)の中ほどであり、和音の響き、旋律どちらも悪いわけではない。
ただし、1曲の中で厳密に音階が同じというわけでもないらしい。プロの弦楽四重奏などでの演奏では、必ずしも12平均率でなく、曲の中でも意識して音程を変えるという話だ。
また、ツァルリーノ音階(純正調音階)用に曲を作って聞いてみても、それほど良くなるとは思えない。確かにきれいに響くのだが、(私の感じでは)それだけなのである。
セントで表したものも示す。セントは基準音の振動数Nに対して、振動数Mである音を、1200x log_2(M/N) と表す単位である。 セントで表せば、12平均率は当然きりのいい数字になる。
C | D | E | F | G | A | B | C | |
ピタゴラス音階 | 0 | 204 | 408 | 498 | 702 | 906 | 1110 | 1200 |
ツァルリーノ音階(純正調音階) | 0 | 204 | 386 | 498 | 702 | 884 | 1088 | 1200 |
12平均率 | 0 | 200 | 400 | 500 | 700 | 900 | 1000 | 1200 |
音階についてあまり長々と考えてもきりがないので、ひとまずここまでにしておく。なにしろ、奥が深すぎる。最後に各音階の周波数表を示す。なお、Cの音はいずれも440Hzにしてある。ここでいうCは音名ではない、階名である。つまり、絶対的な音の高さを示すもの(音名)でなくて、相対的な音の高さを示すもの(階名)である。むしろ、よく使われるドと言ったほうが良いかもしれない。「Aをドにして歌ってみよう」という時の「ド」である。ところで、ドレミファソラシドの語源はどこにあるのだろう?SoundOfMusicがdoeの歌のイメージから"do a dear ..."と鼻歌を歌うことはあるが、語源は一体?次の宿題にしたいと思う。
さて、使用した周波数は全て江尻氏の音律周波数表、音律について、音律実験 (http://www.tg.rim.or.jp/~ejiri/)に記載されていたセントから最初の音を440Hzとし、周波数に変換してある。
Hz | C | D | E | F | G | A | H | C | |||||||||
平均率 12Equal | 440 | 494 | 554 | 587 | 659 | 740 | 831 | 880 | |||||||||
純正律 Pure(5-3) | 440 | 495 | 550 | 587 | 660 | 733 | 825 | 880 | |||||||||
純正律 Pure(5-3)' | 440 | 495 | 550 | 594 | 660 | 743 | 825 | 880 | |||||||||
純正律 PureQ-39(3-5) | 440 | 489 | 550 | 587 | 652 | 733 | 815 | 880 | |||||||||
純正律 PureT-71(5-3b) | 440 | 495 | 570 | 594 | 660 | 760 | 855 | 880 | |||||||||
メルセンヌ純正律 | 440 | 495 | 550 | 587 | 660 | 733 | 825 | 880 | |||||||||
ピタゴラス律 | 440 | 495 | 557 | 587 | 660 | 743 | 835 | 880 | |||||||||
中全音律 | 440 | 492 | 550 | 588 | 658 | 736 | 822 | 880 | |||||||||
キルンベルガー 第2 | 440 | 495 | 550 | 587 | 660 | 738 | 825 | 880 | |||||||||
キルンベルガー 第3 | 440 | 492 | 550 | 587 | 658 | 736 | 825 | 880 | |||||||||
キルン-ヴェルク | 440 | 492 | 552 | 587 | 658 | 736 | 828 | 880 | |||||||||
ヴェルク 第1技法第3番 | 440 | 492 | 551 | 587 | 658 | 735 | 827 | 880 | |||||||||
ヴェルクマイスター 第3' | 440 | 495 | 553 | 589 | 660 | 740 | 830 | 880 | |||||||||
ラモー | 440 | 492 | 550 | 588 | 658 | 736 | 822 | 880 | |||||||||
ヴァロッティ-ヤング | 440 | 493 | 552 | 588 | 659 | 737 | 826 | 880 | |||||||||
ヤング 第2 | 440 | 493 | 552 | 587 | 659 | 737 | 826 | 880 | |||||||||
43平均律 | 440 | 493 | 551 | 588 | 658 | 737 | 825 | 880 | |||||||||
53平均律 | 440 | 495 | 550 | 587 | 660 | 733 | 824 | 880 |
National InstrumentsのLabViewのExample例の中でWindows環境でSoundを入出力するViがあったのでこれを利用する。また、その使用例としてプッシュホンの発信音を出力するものがあった。これを適当にいじって作ってみる。今回は簡単のために単音のみの出力である。いずれ、もうすこしちゃんとしたものを作ってみたい。
作成したアプリケーションをここにおいておく。
Onkai.lzh 1,176kB(配布終了です。)
LabViewのライセンス上、ダウンロード数が50近くになったら削除する。(配布終了です。)
まずは、赤丸部分のボタンを押して実行モードにする。 |
このように色々な音階を 選ぶことが出来る。 |
1999-02-03[n年前へ]
■iMはドラえもんの夢を見るか?
さようなら、ドラえもん
Appleが出したiMacは「ドラえもん」を意識している、と私は思う。iMacの顔は白く頭は明るいブルーである。手、すなわち、マウスは真ん丸であり、体型も丸い。iMacのお腹にはCD-ROMが内蔵され、ドラえもんのお腹には4次元ポケットがある。顔の真ん中には丸い鼻(林檎マーク)がある。そして、色違いの妹がいる。ドラえもん(iMac)は色々なことを簡単にしてくれる(できる)し、部屋に一台いるという感じである。
というわけでiMacは「ドラえもん」を意識していると思うのだ。iMacのデザイナーが「ドラえもん」を意識したか、あるいは藤子不二雄の未来を感じる力が優れていたのだろう。
ところで、私の通っていた高校はずいぶんと自由な学風だった。もちろん、私服であった。授業の科目に至っては「近代アメリカ文学」などというものまであった。変わった先生も多かった。
その変わった先生の中で、サミー本田(一部仮名)先生は黒沢明の話になると(必ずその話になるのだが)、止まらなかった。
サミー本田の「七人の侍」と「ドラえもん」の共通点から日本人の特性を語る話などは、今でも覚えている。他人に頼るばかりで、自分で戦おうとしない。日本人を駄目にしたのは「ドラえもん」というマンガだと言っていた。サミー本田には、他にも「素晴らしい芸術は完全な自由の中では生まれない」という持論もあった。
確かに後者については私もそう思うのだが、前者については違う。藤子不二雄の画いた正式な3回目の最終回でものび太は一人でジャイアンと戦って、そしてドラえもんは未来へ帰って行った。また、fakeではあるがドラえもんの最終回(仮)(http://gamella.elcom.nitech.ac.jp/~satoh/doc/ware/dora.html)でものび太は自分の力で道を開くのである。fakeを例に出すのも、それが「ドラえもん」の生んだ文化であるという観点からすれば、構わないだろう。
「ドラえもんとの共通点」という観点から、iMacというコンピュータには私は非常に感じる所があるのだ。夢のような話だが、何のために技術者になったのか、何を作りたいのかなどと色々考えてしまうのだ。
1999-06-26[n年前へ]
■リモートカメラから世界をノゾこう!
Macintosh用カメラ制御プログラムを作る
今日もニュースを探しに
MAQ?MAK?MAC! ( http://www.maqmakmac.com/)
を見に行くと、おやおや何やら見たことのあるキーワードがある。これが「デジャブ」という奴かと一瞬思ったが、そうではないようだ。本WEBについての記載がある。ビックリだ。いや、ホント。
自分の興味の趣くままにやっているサイトではあるが、好きなサイトで「面白い」といってもらうと、とても嬉しい。また、そこから辿り
WebCatchを見る。「ノーラ」氏の文章には頭が下がる思いである。
MAQ?MAK?MAC!には「もっとMacintoshに関連した話題が多ければ良いのになぁ?。 」とも書いてある。そう、私もMacintoshの話題が少ないとは思っていたのだ。Macintoshが多い私の職場の人々からも(次回の話への伏線)言われ続けてきたことなのである。ならば、MAQ?MAK?MAC!( http://www.maqmakmac.com/ )登場記念にMacintoshを使った話をやってみたい。
というわけで、今回は急遽Macintoshを使った実験の話である。物語は、こんなジャンクを手に入れたところから始まる。ごくたまに、秋葉原でも見かける。もし見かけて、かつ、安かったら、迷わず「買い」だ。LEGOのMindstormsなんかと組み合わせたら、かなりかっこいいはずだ。
これが、「Canon製ビジュアルコミュニケーションカメラ」である。シリアル通信でカメラの向きやズームピントを変えることができるものである。上下左右に首を振ることができるし、ズームやマクロ撮影も可能だ。発売当初は20万円位もしていたものだ。この後継機種も出ている。
これを使って、何か面白いことをしてみようと思った。いや、はっきり言ってしまえば、ネットワーク上のMacintoshにこのカメラをつなげて、それを他のコンピュータから制御しようにしたい。今でこそ、そういったWEBサイトも多々あるが、今回の話の実験を行った時(確か2,3年前)にはまだ少なかったのだ。
このカメラはジャンクとして手に入れたので、ソフトも何も付いていない。しかし、シリアル通信のコマンドは何とか判明したので、制御プログラムを作ってみた。といっても、単なるシリアルポートへコマンドを送りつけるプログラムである。
プログラムはここに置いておく。名前もずばり、「のぞき見君」である。もちろん、Macintosh版なのでWindowsでは使えない。
のぞき見君 0.1anozokimi01a.sit ( sit形式 332kB )
正式にこのカメラを持っているユーザーにも今回のような用途(イヤな用途である)であれば、このソフトはきっと役に立つと思う。
今回(といっても作成したのはずいぶん昔だ)作成したプログラム「のぞき見君」の起動画面が下である。
下がメニュー画面である。画面を見れば判ると思うが、全てのメニューをコマンドキーを用いてキーボードのみでコントロールするようにしてある(これが素早く使うためのミソだ)。
このソフトをインストールして、Macintoshとカメラをシリアルポートでつないで、また、ビデオ出力もMacのビデオ入力につなげばとりあえず、接続完了だ。これで、Macintoshから自由自在に制御できるビデオカメラの完成だ。
さて、次はネットワーク経由で制御するための作戦だが、何ら苦労(私の)は必要ない。例えば、innfo-macに登録されているremote-mouse-keysというようなソフトを使えば、ネットワークにながっているMacintoshのキーボードやマウスを制御することが簡単にできる。
ftp.flashnet.it/mirror/8/sumex-aim.stanford.edu/comm/remote-mouse-and-keys-10.hqx
ビデオ画面の転送はもちろん、Cu-SeeMeでも使えば良い。最近はその手のソフトも多いだろう。それでは、今回のプログラム群を使った構成図を以下に示す。Macintoshはネットワークの自由度が高いので色々な使い道がある。
remote-mouse-keysとCu-SeeMeの組み合わせが軽くてお勧めなのだが、今なら
vnc (http://www.uk.research.att.com/vnc/index.html )
を使うといったやり方もアリだろう。これなら、プラットフォームをあまり選ばないので、WindowsやUnix系OSからでも制御できるし、一つのソフトで制御もビデオ画面転送も済んでしまう。ただし動作がまだ重いとは思う。
それでは、今回のソフトを使った顧客例を紹介しよう。
それは私の職場の「ち*の」氏の使用例である。彼は結婚間近であった。いずれ妻と住む新居にPowerMacintosh6100がこのカメラとともに設置してあった。彼は家の戸締りが気になって、職場から家にPPP経由でRemote-Accessを試みた。彼のPowerMacintosh6100は電話がかかってくるとともに起動音を発し、起動した。そして、彼は職場からの制御により、家のPowerMacintosh6100につながったカメラは首を起こし右へ左へと方向を変え、戸締りのチェックを始めた。彼の目的は達成された。家の戸締りは完璧であった。
ただ一つの問題は、彼は知らなかったが、結婚間近の恋人が掃除をするために新居を尋ねていたことである。彼女の目の前で、電話の音とともに勝手にMacの電源が入り、「ジャーン」という音を発し、そして、そこにあるカメラが「ウィィィーン、ウィィィーン」と右へ左へ動き始めたのである。「ひどい恐怖を感じました」、と彼女は後に語ることになる。
その後、彼の結婚がはたして実現したのか、それとも実現しなかったのかはここでは明らかにしない。
1999-08-20[n年前へ]
■色空間の世界へ (色弱と色空間 その3)
Someday
今回は、
色を伝える時に、考え忘れていたこと(色弱と色空間 その1) - We can work it out! - (1999.08.09)
で行った計算を少し改良し、なおかつ色空間の世界を自由自在に動かしてみたいと思う。今回のメインは「立体グリグリ」のテストである。
まずは、前回と今回の計算の違いは、
- 前回はL,M,Sの各錐体の波長感度特性はRed,Green,Blueの単波長であるという仮定の元の計算
- 今回はL,M,Sの各錐体の波長感度特性はRed,Green,Blueの単波長とは異なるという条件での計算
- X= 0.412391R + 0.357584G + 0.180481B
- Y= 0.212639R + 0.715169G + 0.072192B
- Z= 0.019331R + 0.119195G + 0.950532B
- l = 0.16*X + 0.54*Y - 0.033*Z
- m = -0.16*X + 0.46*Y+0.033*Z
- s = Z
それでは、通常のRGB色空間と第1色盲(赤色盲)のRGB色空間を以下に示してみる。今回はMathematicaの出力をJavaAppletで動かすことができるLiveGraphics3Dを使用している。そのため、RGB色空間をグリグリ動かすことができる。それどころか、ステレオ画像にしてグリグリ動かすこともできる。ステレオ画像の見方は交差法である。ぜひ、試してもらいたい。
下のグラフの操作方法は
- 操作 = 作用
- マウス左ボタンドラッグ = 回転
- シフトキー + 垂直ドラッグ = ズームイン・アウト
- シフトキー + 水平ドラッグ = 垂直軸についての回転
- コントロールキー + 垂直ドラッグ = 焦点距離の変更
- マウス右ボタン垂直ドラッグ = 部品除去
- "s"キー = ステレオ画像作成
PageLiveGraphics3D
( http://www.nikonet.or.jp/spring/sanae/LiveGraphic3D/LiveGraphic3D.htm)
を参考にして欲しい。それでは、RGB色空間(ハリボテバージョン)を自由自在に動かしてみよう。
|
|
どうだろうか? RGB色空間を自由自在に動かせただろうか? 立体グリグリはできただろうか? 「ハリボテでつまらない」なんていう文句がある人もいるかもしれないが、気が向けば立方体の全面について描画を行うよう変更するつもりである。
こういった、Javaなどを使用した立体表現は表現力が非常に高い。しかし、読み手によっては必ず見れるとは限らないところが難しいところである。読み手を限定してしまう可能性が有る。それは、まさに色覚異常に関する問題と同じである。
TVが白黒放送からカラー放送に移行する当時は、カラー放送においても白黒TVでもきちんと識別できる色を考慮しながら放送しようとしていた、と聞く。白黒TVで観ている人が困らないようにである。しかし、現在はどうだろうか? 白黒TVで観ている人のことを考慮したTVなどほとんど無いのではないのではないか?
TV放送に限らずWEB、プレゼンテーションなどにおいて、最新の可能性と広い互換性を両立させていくためには、他の人を配慮する力が必要だと思う。そういう点においても非常に優れ、私がとても好きなWEBサイトが今日から一時停止してしまった。非常にさみしい。
それでは、今回の色空間自由自在はこんな所で終わりにしたい。
2000-01-13[n年前へ]
■WEBサイトの絆
WEBの世界を可視化しよう
目に見えないものを実感できるものにしようと思うことは多い。「直接感じることが出来ないものを感じられる形にする」という作業とその結果には非常にわくわくさせられる。それは、きっと私だけではないと思う。
目に見えないものは色々ある。可視化して見てみたいものは多々あるのだが、以前、
の時に扱った、WEBのトポロジーなどもその最たるものである。WEBページはもちろん目に見えるわけではあるが、それらがどう繋がっているか、すなわち、WEB[= クモの巣(状の物);織物 ]そのものは目には見えない。ネットワークという目に見えない世界でWEBサイト同士がどう繋がっているか、それは企業のWEBサイト同士であれば企業間の繋がりを示すかもしれないし、公的機関のWEBであれば公的機関内部の繋がりが見えてくるかもしれない。そして、個人WEBであれば、個人どうしの繋がりが見えてくるだろう。そして、さらに考えを進めるならば、それが「WEBの繋がりだ」と端的に言い切ってしまっても良いと思う。
そういう色々なWEBサイト同士が互いに結びつき合う、つまりWEBそのものを今回は可視化してみたい。その結果はきっと「WEBサイトの絆」を私に見せてくれるはずだ。
例えば、ファイルシステムを可視化するものであれば、
- xcruise( http://tanaka-www.cs.titech.ac.jp/~euske/index-j.html )
そして、今回の本題のWEBサイトのHyperlink構造を可視化するソフトウェアも、少し探しただけでも結構ある。例えば、
- Site Manager
- ( http://www.sgi.com/software/sitemgr.html )
- HyperLINKWWW Visualization/Navigation
- ( http://www.acl.lanl.gov/%7Ekeahey/c3/navigate/navigate.html )
しかし、よく調べていないので間違っているかもしれないが、この辺りのソフト(appleを除く)はWEBサイト内のリンクのみに限られるようである。それでは、今回の目的とは違う。何しろ、今回知りたいのはWEBサイト同士のリンクの度合いである。WEBのトポロジーなのである。
そこで、もう少し探してみる。すると、今回の目的にかなり近い情報が
- Web構造の把握 宮久地博臣 都立科学技術大学大学院 平成9年度修士論文
- ( http://home2.highway.ne.jp/miyakuji/shuron.html )
やり方はどうしたら良いだろうか?宮久地氏と同じようにWeb Robotを作成して、データを集めるのが理想的だろう。しかし、「perl入門」を昨日やっと買ったばかりの私にはとても難しそうである。いや、もしそんなことをしたらとんでもないことになるに違いない。
そこで、perlのlwp-rgetを用いて各WEBの内容をローカルのPC内にダウンロードした上で、勉強がてらperlで解析を行うことにした。と、思ったのだが、lwp-rgetが上手く動いてくれない。まだドキュメントをちゃんと読んでいないせいだろうか?何故か、ダウンロードの途中で終了してしまう。仕方がないので、急遽作戦を変更し、ダウンロード作業はlwp-rgetではなくてwgetを用いることにした。
行った手順は以下のようになる。
- 5つのWEBサイトを広いWEB内から適当に選択する
- 選んだ各WEBサイト内のファイルについて、相互のハイパーリンクを抽出し、その数を解析する
- その結果を可視化する
以下に、解析を行った結果、すなわちサイトA,B,C,D,Eの相互に対するリンク数を示す。
↓から→へのリンク数 | |||||
0 | 2 | 0 | 27 | ||
1 | 0 | 13 | 273 | ||
20 | 2 | 0 | 43 | ||
0 | 11 | 0 | 285 | ||
1 | 1 | 1 | 1 | ||
合計 | 22 | 14 | 3 | 14 | / |
サイトE「日記猿人」へのリンクがムチャクチャ多いのは投票ボタンという形で、他のサイトからリンクがなされているからである。
さて、上の表からではWEBの絆を実感できないので、「WEBの絆」を3次元空間に可視化するJavaアプレットを以下に張り付けておく。WEBサイトが5つあるので、それぞれのサイトをピラミッド構造(四角柱状)に配置した。
各WEBサイトの表示色は、
- A = 赤
- B = 緑
- C = 青
- D = 黄
- E = 灰
それぞれのサイトから伸びる直線の長さは、そのサイトから他のサイトへ向かうリンク数に比例したものにしている。また、直線の太さもリンク数に比例させている。また、それぞれのWEBサイトを示す立方体の大きさは自分へ向かうリンク数に比例させている。ただし、サイトEの大きさはあまりにも巨大なため、リンク数に比例したものにはなっていない。また、サイトE、すなわち「日記猿人」、へのリンクは省略し、全てサイトEからの直線リンクを表示するだけにした。
さぁ、WEBサイトの構造を自分の目でみて、そしてグリグリ動かして見てもらいたい。このグラフの操作方法は
- 操作 = 作用
- マウス左ボタンドラッグ = 回転
- シフトキー + 垂直ドラッグ = ズームイン・アウト
- シフトキー + 水平ドラッグ = 垂直軸についての回転
- コントロールキー + 垂直ドラッグ = 焦点距離の変更
- マウス右ボタン垂直ドラッグ = 部品除去
- "s"キー = ステレオ画像作成
Java表示が上手く動かない人のために、静止画も一応張り込んでおく。
どうだろう?この5つのWEB間のWEB構造から何が見えるだろうか?こういう解析を数多くのサイトに行うと非常に面白い結果が得られそうである。特に「日記猿人」のようなコミュニティーに対して行うと興味深い結果が得られるはずだ。
私のような「日記猿人」の日記はほとんど読まない(サイトAに関しては大ファンであるが)人間にとっても興味深いのであるから、関係者にとってはきっと...の筈だ。
さて、今回はテストのためにごく少数(5つ)のWEBの解析を行ってみた。いつか、こういった解析を広い範囲で行い、そして、時系列的な変化をも調べようと思う。銀河のvoid構造が観測され、可視化されたものを見たときもとてもわくわくしたものだが、WEBの構造・変化ならばどうだろうか?
不思議なことに、そういうことを考えていると、「新宿都庁」と「思い出横町」が頭の中に浮かんできてしまうのは何故だろうか?押井守の影響だろうか。謎である。
そして、こうも思う。WEBネットワークの中でWEBサイトは何を感じているのだろうか?これらのWEBサイトはもしかしたら孤独を感じているのだろうか、それとも繋がりを感じているのだろうか?あの時のページの中の一フレーズがその答えの一つなのかもしれない。