※現在、ブログ記事を移行中のため一部表示が崩れる場合がございます。
順次修正対応にあたっておりますので何卒ご了承いただけますよう、お願い致します。

Raspberry Pi の Mathematicaで円周率の演奏をしてみた


2019年 05月 01日

MIDIでは、音色というか楽器を非常に多数用意している。
何もしなければ、ピアノの音が出るようだが、次のように楽器の名前を指定すれば、その楽器で演奏してくれる。

Sound[SoundNote["C", 10, "Violin"]]

楽器の種類はMIDIなので、128種類ある。
以下が、指定可能な名称である。

“Accordion” “Agogo” “AltoSax” “Applause”
“Atmosphere” “Bagpipe” “Bandoneon” “Banjo”
“BaritoneSax” “Bass” “BassAndLead” “Bassoon”
“Bird” “BlownBottle” “Bowed” “BrassSection”
“Breath” “Brightness” “BrightPiano” “Calliope”
“Celesta” “Cello” “Charang” “Chiff”
“Choir” “Clarinet” “Clavi” “Contrabass”
“Crystal” “DrawbarOrgan” “Dulcimer” “Echoes”
“ElectricBass” “ElectricGrandPiano” “ElectricGuitar” “ElectricPiano”
“ElectricPiano2” “EnglishHorn” “Fiddle” “Fifths”
“Flute” “FrenchHorn” “FretlessBass” “FretNoise”
“Glockenspiel” “Goblins” “Guitar” “GuitarDistorted”
“GuitarHarmonics” “GuitarMuted” “GuitarOverdriven” “Gunshot”
“Halo” “Harmonica” “Harp” “Harpsichord”
“Helicopter” “HonkyTonkPiano” “JazzGuitar” “Kalimba”
“Koto” “Marimba” “MelodicTom” “Metallic”
“MusicBox” “MutedTrumpet” “NewAge” “Oboe”
“Ocarina” “OrchestraHit” “Organ” “PanFlute”
“PercussiveOrgan” “Piano” “Piccolo” “PickedBass”
“PizzicatoStrings” “Polysynth” “Rain” “Recorder”
“ReedOrgan” “ReverseCymbal” “RockOrgan” “Sawtooth”
“SciFi” “Seashore” “Shakuhachi” “Shamisen”
“Shanai” “Sitar” “SlapBass” “SlapBass2”
“SopranoSax” “Soundtrack” “Square” “Steeldrums”
“SteelGuitar” “Strings” “Strings2” “Sweep”
“SynthBass” “SynthBass2” “SynthBrass” “SynthBrass2”
“SynthDrum” “SynthStrings” “SynthStrings2” “SynthVoice”
“Taiko” “Telephone” “TenorSax” “Timpani”
“Tinklebell” “TremoloStrings” “Trombone” “Trumpet”
“Tuba” “TubularBells” “Vibraphone” “Viola”
“Violin” “Voice” “VoiceAahs” “VoiceOohs”
“Warm” “Whistle” “Woodblock” “Xylophone”

もうちょっと分かりやすいもとのしては、WikipediaのMIDIの説明がある。

これによると、琴、尺八、三味線、和太鼓が入っている。



さて、タイトルにあった円周率を演奏することを考えよう。

円周率を40桁まで求め、各桁の数字(0から9)を音程として与えてることを考えよう。

以下、複数のステップに分けて示すが、実際には、最後のだけで演奏できる。

SoundPi-1.png

さて、次は音の長さを1から8までの乱数整数で与え、楽器にバイオリンをしてしてみた。

円周率の各桁の数字は note で参照できるようになっているので、Tableを使ってnoteを取り込んでみた。

SoundPi-2.png

音は奥がとても深く、延々と書くと切りがないので、ここらでやめておく。

もっと知りたい場合には、Wolfram Toneというサイトが用意されていて、ここで実際にどんな音が出るか試すことができるので見て(聴いて)みよう。
Mathematica/Wolfram が無くても、色々試すことができるようだ。