IRCAM OpenMusic 支援内検索 / 「ワークスペースでのパッチの操作」で検索した結果
-
ワークスペースでのパッチの操作
2. パッチの作成 < 3. ワークスペースでのパッチの操作 > 4.1 アプリケーションを作る (1) 3. ワークスペースでのパッチの操作 この章はPCの扱いに慣れている人にとってはパッチ等の削除方法以外大した内容はない。 ワークスペース内でパッチをカット・コピー・ペースト・複製(Duplicate)したり、フォルダを作ってその中にパッチを入れたりという操作ができる。パッチの操作はメニューバーのEditからや各種ショートカットキーで、フォルダの作成はメニューバーFile- New Folderもしくは右クリックコンテキストメニューNew- New Folderから。 普通のファイルなどを扱う時と1つ違う点は、パッチ等はDeleteキーでは消えず、メニューバーEdit- Clearを選択する必要があるということ。 ワークスペースの保存はFile- SaveかCtrl+Sで... -
パッチの作成
1. セッションの開始 < 2. パッチの作成 > 3. ワークスペースでのパッチの操作 2. パッチの作成 ワークスペースウィンドウのメニューバーからFile- New Patch、もしくは右クリックコンテキストメニューのNew- New Patchからパッチを作成する。記されているように「Ctrl + 1(テンキーでない)」のショートカットキーでも同様に作成できる。 名前をダブルクリック- 入力でリネームできる。 パッチアイコンをダブルクリックするとパッチエディタが開く。この中にプログラムを組んでいく。 メニューバーHelp- Editor Command Keysを選択する、もしくはhキーを押すとパッチエディタで使うコマンド一覧が開く。 が、とりあえず今回はFile- Save、もしくはCtrl+Sショートカットキーでパッチを保存してパッチエディタを閉じる。関数・インスタン... -
クイックスタート
...パッチの作成 3. ワークスペースでのパッチの操作 4.1 アプリケーションを作る (1) 4.2 アプリケーションを作る (2) 4.3 アプリケーションを作る (3) 5.1 オブジェクトの操作と視覚化 (1) 5.2 オブジェクトの操作と視覚化 (2) 6. 保存・終了 参照 公式 Documentation OM 6 QuickStart チュートリアル(英語) まずこれをマスターすることで最も早く理解が出来る。 OpenMusic Tutorial YouTube 動画(英語) http //www.youtube.com/watch?v=N4s83rEG028 http //www.youtube.com/watch?v=4Y_D5BfrGGY http //www.youtube.com/watch?v=osjxrLF8Wa0 htt... -
メニュー
...開始 パッチの作成 ワークスペースでのパッチの操作 アプリケーションを作る (1) アプリケーションを作る (2) アプリケーションを作る (3) オブジェクトの操作 (1) オブジェクトの操作 (2) 保存・終了 ユーザーマニュアル 基本リファレンス ライブラリリファレンスEsquisse LZ OMAlea OMChaos OMClouds Profile RepMus Situation OpenMusicの歴史 非公式Tutorial 概要01 note chord chord-seq 02 repeat-n omloop 03 random 04 omif subpatch 05 様々なファンクション 06 バッハ平均律 07 武満徹分析 08 multi-seq voice poly 09 ディアトニック即興 10 メシアン様式即興 11 文字列のファンクション 12... -
アプリケーションを作る (1)
3. ワークスペースでのパッチの操作 < 4.1 アプリケーションを作る (1) > 4.2 アプリケーションを作る (2) 4.1 アプリケーションを作る (1) パッチエディタの使い方、関数の基本を学習。 関数の例として、足し算をする関数をパッチに組み込んでみる。ワークスペースに作ったパッチをダブルクリックしてパッチエディタを開く(第2章の内容)。右クリックコンテキストメニューもしくはメニューバーからFunctions- Basic Tools- Arithmetic- OM+と選択すると、OM+関数が作成される。あるいは、ダブルクリックかCtrl + クリックで入力ボックスを出し「om+」と入力することでも作成できる。 基本的な操作を解説していく。右下をドラッグすることでリサイズできる。キーボードのiキーを押すと標準の大きさに戻る。 各アイコン(以下ボックスと呼ぶ)の... -
セッションの開始
1. セッションの開始 > 2. パッチの作成 1. セッションの開始 起動に際しての操作について解説。 ショートカットをダブルクリックなどして起動する。 以下のウィンドウが出る。・Open previous workspace(前回使っていたワークスペース(作業場)を開く)・Open a workspace(ワークスペースを選んで開く)・Create a new workspace(ワークスペースを作る)の3つがあるが、初回起動なので一番下、Create a new workspaceを選んで「OK」。 適当な場所で名前を入力してOKを押すとその名前のフォルダができ、そこがワークスペースとなる。 ワークスペースの設定が済むと、OMリスナーとワークスペースウィンドウが開かれる。 2. パッチの作成 へ進む -
通常の抽象化
このページでは既にある青パッチbluepatch_icon.pngを別のパッチで使う方法を解説。 ワークスペースにあるパッチを別のパッチの中で使う 手順 ワークスペースにあるパッチを別のパッチの中にドラッグ&ドロップすれば抽象ボックス(青)ができる。 これはワークスペースにある元のパッチ(マスターと呼んでおく)への参照である。 dragpatchinpatch.png 名前はマスターと同じになる パッチ側から開こうがワークスペース側から開こうがエディタは同じ(つまりパッチ側の抽象ボックスを変更すればマスターも変更される。逆もしかり。) masteraffect.png 複製を使ってみると 複製されたものもマスターへの参照なので、片方変更するともう片方も変更される。 step2.png 片方のアウトプットを増やしたらもう片方も増える例。 抽象ボックスの管... -
保存・終了
5.2 オブジェクトの操作と視覚化 (2) < 6. 保存・終了 6. 保存・終了 ワークスペースを閉じると「OMを終了しますか?」「ワークスペースを保存しますか?」「このパッチ保存されてませんが保存しますか?」など聞いてくるので適当に答える。 OMは結構落ちるのでパッチにしてもワークスペースにしてもCtrl+Sを駆使してこまめにセーブするべき。 クイックスタート終わり -
抽象ボックス
抽象ボックスは2つの種類がある。 青パッチbluepatch_icon.pngはワークスペースに属する 赤パッチredpatch_icon.pngはパッチの中で作る 他にも、OMLoop、Lisp Function Boxes、Maquettesなどもモノをまとめるのに使われる。が、それはまた別の項目で。 -
ユーザーマニュアル
日本語マニュアル公開しました。 https //note.com/tatulumi0331/n/n8c68efd31f36 ユーザーガイドの中核。クイックスタートでやったところとかどうでもいいところは飛ばし飛ばし。 参照:公式 Documentation Online User Manual 左端の「-」をクリックすると公式の該当ページが別ウィンドウで開く(英語)。位置がズレてるかもしれないがそこはご勘弁。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -... -
オブジェクトの操作と視覚化 (1)
4.3 アプリケーションを作る (3) < 5.1 オブジェクトの操作と視覚化 (1) > 5.2 オブジェクトの操作と視覚化 (2) 5.1 オブジェクトの操作と視覚化 (1) オブジェクトを直感的に使う章。 前章では音高を6000・6400などと数値で手入力していたが、CHORDオブジェクトにはもっと簡単に入力できるようにエディターが付いている。ここではその使い方を解説。 CHORDオブジェクトボックスをダブルクリックするとCHORDエディタと付属パレットが起動する。 メニューバーHelp- Editor Command Keysを選択する、もしくはhキーを押すとエディタで使うコマンド一覧が開く。 音高を追加するにはCtrlを押しながら好きな高さの場所をクリック。 高さを動かすには、いろいろ方法はあるが、パレットのを選んでおき、動かしたい音をクリックおよび範囲選択で選択... -
変換
青抽象ボックスを赤抽象ボックスに変換 手順 ボックス選択してAキー。 switchtored1.png 赤にすると完全に自立するので、赤を変更してもワークスペースにあるマスターには影響しなくなる。 赤抽象ボックスを青抽象ボックスに変換 手順 赤パッチをワークスペースにドラッグ&ドロップする。 dropredintowrksp2.png すると青に変わる。これはもちろんワークスペースにあるマスターへの参照なので、パッチ側のを変更するとマスターに影響する。逆もしかり。 dropredintowrksp3.png -
非公式Tutorial 09 ディアトニック即興
09 ディアトニックによる即興 今回はディアトニック(いわゆるドレミファソラシからなる7音)を使ってメロディ、コード、ベースの各パートからなる即興的な調性音楽を作る。出力は前回触れたvoiceおよびpolyを用いる。 早速順を追って解説して行こう。 まず最初にchordで「ドレミファソラシ」(C4, D4, E4, F4, G4, A4, B4)を用意する。(ブロックを忘れずに!) その下にomloopを用意する。以下の画像を見てみよう。 length, 1-, forloopを応用する方法は、これまでにも触れた通りである。今回は和音の数だけループの回数が必要で、その回数を参照する。 和音そのものもやはり参照するが、和音の中の1音ずつを参照する必要は無いので、ここではnthと組み合わせたりlistloopを使う必要は無い。 左のrot... -
非公式Tutorial 12 ハイドンの名によるメヌエット
非公式チュートリアル12 ハイドンの名によるメヌエット モーリス・ラヴェル作曲の「ハイドンの名によるメヌエット」という曲がある。これは国民音楽協会という当時のフランスの作曲家の協会が、ハイドン没後100周年を記念して、ラヴェルを含む6人の作曲家に、ハイドンHaydnの名を音列に見立てて、その動機をもとにピアノ小品の作曲を委嘱したものである。ラヴェルの他は、ドビュッシー、デュカス、ダンディ、アーン、ヴィエルヌがそれぞれピアノ曲を作曲した(ヴィエルヌはオルガニストであり、オルガンでの演奏を想定していたと思われる)。とはいえラヴェルの曲が圧倒的に優れていた点は、Haydnの音列を逆行形や反行形も用いながら作曲したことであり、調性音楽(厳密に言えば旋法音楽とも言える)でありながらシェーンベルクら新ウィーン楽派の十二音技法のアイデアをも先取りするものであった。筆者(imahori)は作曲家として... -
オブジェクトの操作と視覚化 (2)
5.1 オブジェクトの操作と視覚化 (1) < 5.2 オブジェクトの操作と視覚化 (2) > 6. 保存・終了 5.2 オブジェクトの操作と視覚化 (2) 微分音を扱う方法とコメントの入れ方を学習。読み飛ばしてもOK。 微分音(Windows) WindowsにおいてはMicroPlayerという微分音を扱うのに特化したプレイヤーは使えない。 しかし、デフォルトのMidiShareというプレイヤーでも四分音・八分音は扱うことができる(六分音や十分音はできない)。以下に説明。 四分音・八分音入りの和音を作ってみる。CHORDオブジェクトを作ってエディタを開き、C-E-G-Bの和音を入力。Approxを1/8にする。Eを1つ上に、Gを2つ上に、Bを1つ下にずらすと図のようになる。これを再生しても微分音は鳴らない。どうするか? 実はこのとき+25centsの音は1つ先のmidi... -
非公式Tutorial 06 バッハ平均律
非公式チュートリアル06 バッハ平均律1-1プレリュード冒頭の音形を作成する さて、ずっと基礎的な動作の説明が続くと退屈してしまうので、ここからしばらくは今まで習ったことを元に幾つかのサンプルパッチを作成してみよう。 ページ名を「バッハ平均律」などとしたが、別にこれから「フーガ自動作成パッチ」などという対位法の先生が聞いたらぶったまげそうな代物を作るわけではない。(それはそれで興味のあることだが。) ここではバッハの平均律クラヴィーア曲集の第1巻第1番ハ長調プレリュード冒頭の音形を作成することを目的としてパッチを作成する。 この曲については皆良くご存知のことと思うが、念のため各種リンク。 ヨハン・ゼバスティアン・バッハ 平均律クラヴィーア曲集第1巻第1曲 BWV846 プレリュード 楽譜 IMSLP 音源 (Julia Cload) Spotify... -
非公式Tutorial 概要
ここはOpenMusicを学ぶための非公式の解説ページである。 ここを読む前に目を通すと良いもの ここを読む前に、OpenMusic公式サイトおよびチュートリアルには一通り目を通しておくことをお勧めする。 本サイトの他の記事(OpenMusic公式サイトの部分翻訳) OpenMusic 公式サイトOnline User Manual QuickStart tutorials Libraries 公式チュートリアル インストール時にはサンプルパッチが付属する。 OpenMusicのWorkspaceで右クリックしてImport folderを選び、以下のフォルダごとインポートすることをお勧めする。 フォルダ Applications/OM 6.7/tutorials/ 拡張ライブラリにもそれぞれサンプルパッチが付属する。もしこれから非公式チュートリアルを読む読者... -
非公式Tutorial 04 omif subpatch
非公式チュートリアル04 omif条件文とサブパッチ ここでは「もしも」で判断する条件文omifおよびサブパッチの使い方を学ぶ。 BASICやC言語、あるいはMax/MSPの経験のある方は、 IF THEN ELSE という条件文をご存知だろう。 「もしも(if)〇〇なら、それから(then)〇〇せよ、そうでなければ(else)〇〇せよ」というのが、プログラム言語におけるif条件文の構造である。 OpenMusicでこれにあたる条件文はomifというファンクションで行う。 まずomifファンクションを作ると、インプットが2つあらわれる。左側のインプットには「論理演算子」を接続する。右側のインプットには、その条件文がt(真)である場合、つまりその条件を満たした場合に、そこに接続したコードがevaluateされる。(BASICやMax/MSPで言うTHEN... -
非公式Tutorial 16 リズム4ファーニホウ3
非公式チュートリアル16 リズム4 ブライアン・ファーニホウのリズム分析と模倣3 このアーティクルは以下の論文の例を引用しています。 ミハイル・マルト「ブライアン・ファーニホウの音楽言語におけるいくつかの考察」The OM composer s book 第2巻より This article is quoted the original examples from; Mikhail Malt Some considerations on Brian Ferneyhough s musical language The OM composer s book. 2 (ed. Delatour, IRCAM), page 7-19 この章は前回からのマルトの論文の続きだが、論文本文では「このようなやり方もある」と言った結果の説明だけで、その計算に至る過程のパッ... -
内的な抽象化
内的な抽象ボックスである赤パッチredpatch_icon.pngはパッチエディタから作る。このページは赤パッチの使い方を解説。 赤抽象ボックスは青と違って自立していて、1コいじったからって他に影響する心配がない。 赤抽象ボックスを作る手順 パッチエディタ内で右クリックしてコンテキストメニューからInternal- Patchを選択する、もしくはパッチエディタ内でダブルクリックかCtrl+クリックで入力ボックス出しpatchと入力 addinternal.pngcreateredpatch.png 赤抽象ボックスをダブルクリックするとエディタが開くのでその中に好きなものを組む。 複製 参照である青の抽象ボックスと違って、赤のは1コ1コ自立したパッチなのでコピーして片方いじっても影響はそれ単独だけ。 duplicatered.png コピーされたもののイ... -
アプリケーションを作る (2)
4.1 アプリケーションを作る (1) < 4.2 アプリケーションを作る (2) > 4.3 アプリケーションを作る (3) 4.2 アプリケーションを作る (2) インスタンスの基本を学習。 「インスタンスとは何ぞや」ということだが「クラスから作ったオブジェクト(もの)」「何かいろいろまとめてある」程度に流しておく。ユーザーマニュアルだとFactoryという表現をしてたりする。 とりあえずクラスからインスタンス=オブジェクト=Factoryができるって感じで。 CHORDクラスのインスタンスを作ってみる。パッチエディタの空いたところで、右クリックコンテキストメニューもしくはメニューバーからClasses- Score- CHORDと選択すると、CHORDオブジェクトが作成される。あるいは、ダブルクリックかCtrl + クリックで入力ボックスを出し「chord」... -
掲示板
articleプラグインが使えないので掲示板もどきです。 スレッド1 freq-modとring-modの概要がよく分からないというか、具体的にああいう出力になるパッチが思い浮かばない。 Désintegrationsのパッチもざっと見た感じfreq-modは入っていないのでなおさら混乱。 OSやバージョンによる仕様違いだろうか? -- (gobou@admin) 2013-11-06 21 28 30 近いうちにサンプルパッチを作ってスクリーンショットを載せます。 Désintegrationsは作曲の技術として周波数変調を用いているという話で引用したつもりでした。サンプルパッチには確かにfreq-modは入っていませんね。歪んだ音は確認できると思います。こちらもリンクを載せておきましょう。 -- (takuyaimahori) 2013-11-07 00 2... -
例:ランダムな音列を作る
Midiセントで5000~8000の音域で15音の音列を作る。以下の規則を課す。 同一の音がない(オクターブを含め) 四分音まで使う 公式マニュアルのパッチの問題点 http //support.ircam.fr/docs/om/om6-manual/co/LoopExample.html テスト用パッチ test-octave-quartertone の設計ミス。例えば6001(ほぼC4)と6050(Cの四分音上)を与えた場合には、これらは違う音だと判定し、nilを出力しなければならないが、実際はtが出る。 1刻みの乱数を発生させて後で四捨五入的に四分音を作る方式は計算に無駄が多く、さらに5000と8000(範囲の端の音)の出る確率はそれ以外の音の出る確率の半分になる(5050は5025~5074の範囲からできるのに対し、5000は5000~5024と半分の範囲しかないため... -
非公式Tutorial 10 メシアン様式即興
10 オリヴィエ・メシアンの様式に基づく即興の自動生成パッチ オリヴィエ・メシアンは、その著書「わが音楽語法 Mon langage musical (1944)」(日本語版は平尾貴四男訳、昭和29年(1954年)出版で現在は絶版。フランス語原語版はAlphonse Leduc社から2014年現在も発売中) 追記:2018年に 細野 孝興 (翻訳) 「音楽言語の技法」としてヤマハミュージックエンタテイメントホールディングスから新規発売された。 で、その当時の彼自身の語法を詳しく説明している。これによって、メシアン初期の楽曲、例えば「主の降誕」「キリストの昇天」「アーメンの幻影」「時の終わりのための四重奏曲」(「世の終わりのための四重奏曲」という訳が日本では出回っているが、あくまでもfin du temps時の終わりであり、fin du monde世の終わりではない。)な... -
非公式Tutorial 07 武満徹分析
武満徹「鳥は星形の庭に降りる」分析パッチ 今回は武満徹のオーケストラ作品「鳥は星形の庭に降りる A Flock descends into the Pentagonal Garden」で使われた和音構成を、作曲者本人の著書「夢と数」(リブロポート社 1987年(絶版)、ただし「武満徹著作集 第5巻」新潮社 2000年 に再録)に書かれた自作分析の解説をもとに、OpenMusic上で再現するためのパッチを作ってみよう。 武満徹「鳥は星形の庭に降りる」Toru Takemitsu A Flock descends into the Pentagonal GardenSpotify (2曲目) 武満徹の「鳥は星形の庭に降りる」は1977年に書かれたオーケストラ作品で、作曲家の代表作の一つである。この作品は、それ以前の1960年代までの複雑な音響を伴う作風から、初版の小澤征爾... -
非公式Tutorial 01 note chord chord-seq
非公式チュートリアル01 note chord chord-seq ここでは基本的なクラスであるnote, chord, chord-seqおよびそれらを統括するファンクションom+, list, x-append, flatについて扱う。 ここで扱うnote, chord, chord-seqは、いずれも音程(およびそれらのゲート、ヴェロシティ、MIDIチャンネルなど)を格納するための『入れ物』である。これをクラスと呼ぶ。これに対し、それらの値について計算を行うためのオブジェクトをファンクションと呼ぶ。 まず左上から。noteを作成する。オブジェクトの新規作成はcommand+クリックで行う。またはメニューにあるclass, functionから任意のオブジェクトを選ぶ。 以下の画像は上よりそれぞれnote, chord, chord-seqを並べたも... -
非公式Tutorial 08 multi-seq voice poly
今回のチュートリアルでは、multi-seq, voice, polyについて触れる。 今までの出力結果は、クラスchord-seqを用いて解説して来た。 単純に和音の羅列としての表示結果であれば、これでも十分である。 これは時間経過の表記をms(mill seconds, ミリ秒)単位で行う。 これが適しているのは、例えば伝統的な連譜では書ききれない複雑なリズムを伴う場合などである。 例えば以下のパッチを見てみよう。 これはom-randomによって1から100までの数値がforloopによって順に与えられ、om*で10倍して10-1000までの範囲でランダムな数値を生み出す。 つまり確率としては、omloopが徐々に大きな数値を出すほど、ループの後の方では大きな数値が出る確率が上がる。 これをミリ秒単位のリズムとして読み込んで表示させると、画像のよ... -
OpenMusicの歴史
OpenMusicの歴史 ここではOpenMusicが生まれるまでの歴史をざっと説明する。原文は筆者Takuya Imahoriが2013-14年度ジュネーヴ高等音楽院修士論文Réalisations d’analyses du style de 3 compositeurs avec un environnement d’aide à la composition OpenMusicに書いた文章のうちの第1章第3節Histoire de développement des logiciels de CAO à l’IRCAMからの抄訳である。 1982-1985年、IRCAMでFORMESと呼ばれるコンピュータ補助作曲(英語でComputer Aided Composition (CAC) フランス語でComposition Assisté par Ordinat... -
interpolation
2つの数値or数値リストの間を補間する関数。 入力 説明 デフォ [0]begin 数値or数値リスト。 0 [1]end 数値or数値リスト。 1 [2]samples 何段階の補間かを整数で指定。 5 [3]curve 数値。0だと線形補間、小さいほど前半の近づき方が小さく、大きいほど前半の近づき方が大きくなる。指数関数的カーブになる。0.0の時、1.0の時、-1.0の時。(チュートリアルパッチの記述は間違っているので注意されたし。) 0.0 -
落書き20150822
酒井健治氏のtwitterでたまたまOMのパッチ画像を見かけたので、右側らへんを再現してみるだけ。 https //twitter.com/isakajenki/status/620907064508981248 (ツイート見るとわかるとおり、思い出すための肩慣らしという感じで特段変わった点はないように見える。 Chord1はC倍音列由来、Chord2は1の各音を全音上方・下方いずれかに動かしたものか。) -
OpenMusic概要
OpenMusicはCommon Lispというプログラミング言語と、そのLispのオブジェクト指向プログラミング機能であるCLOSで出来ている。 ビジュアル化してるから難しい作曲思考もわかりやすく書ける。 ビジュアルプログラム OMでの作曲はパッチの中にオブジェクトとか関数とかつなげて行う。 リスト処理 "Lisp" は "LISt Processing"の略語であって、Lispではデータやら関数やらはみんなリスト構造で表現されている。リストとは( )でくくられた0コ・1コあるいは複数の要素のセット。例えば、( )は空のリスト、(FLOWER)は要素が1コだけのリスト、(1 pretty FLOWER)は要素が複数のリスト、(7 (2 8.4) (5 1 0) 0.3)はリストのリスト。従ってOMの音楽データもリスト構造だ。 ... -
プラグイン/ニュース
ニュース @wikiのwikiモードでは #news(興味のある単語) と入力することで、あるキーワードに関連するニュース一覧を表示することができます 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_174_ja.html たとえば、#news(wiki)と入力すると以下のように表示されます。 【カウンターサイド】リセマラ当たりランキング - カウサイ攻略Wiki - Gamerch(ゲーマチ) ウィキペディアを作ったiMacが箱付きで競売に登場。予想落札価格は約96万円!(ギズモード・ジャパン) - Yahoo!ニュース - Yahoo!ニュース 終末のアーカーシャ(終アカ)攻略wiki - Gamerch(ゲーマチ) メトロイド ドレッド攻略Wiki - Gamerch(ゲーマチ) 【まおりゅう】最強パー... -
テスト関数
関数の中にはtest引数を持っているものがある。test引数は関数のふるまいを定義するものである。例えば、ソートするときの比較ルールとか、リストから要素を削除する条件など。 このtestは主にラムダ関数で定義する。 例:リスト内の重複要素を削除する remove-dup関数は、リスト内で同じ要素を削除する関数。要素を2つずつ全ての組み合わせでチェックして同じだったら片方削除するというような感じ。 removedup-args_1.png 引数[0]はリスト。 引数[1]はテスト関数。これが消す条件を設定するところ。デフォルトでは eql。値はLisp eql関数で比較される。比較の結果がt(真偽値のtrue)ならば削除対象として消される。イコールにもいろいろ種類があるがそれはまた別のページで。 removedup.png 上例のremove-dup関数が重複している63... -
アプリケーションを作る (3)
4.2 アプリケーションを作る (2) < 4.3 アプリケーションを作る (3) > 5.1 オブジェクトの操作と視覚化 (1) 4.3 アプリケーションを作る (3) CHORDオブジェクトとOM+関数を使って、ある和音を移高するアプリケーションを組む。 前節でド,ミ,ソの和音は(6000 6400 6700)で表わされていた。ここにそれぞれ200、つまり全音を足して(6200 6600 6900)にすればレ,ファ#,ラの和音になりそうである。 下のようにババッと組んで下のCHORDオブジェクトボックス(図ではCHORD-Transposedと名前を付けてあるボックス)を評価してみると、実際そうなる。(6000 6400 6700)。これはドミソを表している。 CHORDオブジェクトに入れてみると実際そうである。鳴らしてみればドミソの和音が鳴る。 CHORDオブジェクト... -
比較述語
数値の比較が主。でも文字列用のもある。 数値の比較述語 数値の比較用のFunctions- Kernel- Control- Predicatesから呼び出せる。もちろん入力ボックスにその関数名を打ち込んでも呼び出せる。 関数 書き テスト pred9_icon.png OM= A=Bならt(真)、そうでないならnil(偽)を返す pred3_icon.png OM/=(OM!=ではない) A≠Bならt、そうでないならnil pred1_icon.png OM = A≦Bならt、そうでないならnil pred2_icon.png OM = A≧Bならt、そうでないならnil pred6_icon.png OM A<Bならt、そうでないならnil pred5_icon.png OM A>Bならt、そうでないならnil これらOM用のものの他に、Lispに基本的に備わ... -
非公式Tutorial 02 repeat-n omloop
非公式チュートリアル02 repeat-n, omloop 今回はrepeat-nとomloopの2つの使い方について述べる。 まずは前回と同じようにchordを作成する。mキーで中身を表示し、クラスの大きさを見やすいように整えておく。 左下をorderにすると編集しやすい。新規に音を追加する場合はcommand+クリックで行う。 編集し終わったら自動的にブロックされるが、ブロックされていない場合はbキーでブロックしておく。 まずfirstというファンクションについて解説する。これはその名の通り括弧で囲まれたリストの中の1番目の値を抽出するものである。OpenMusicの母体であるLISPは常に0からものを数えるのであるが、このオブジェクト名の場合はfirst, secondというように1から数える。同様のオブジェクトはtenthまで有効である... -
非公式Tutorial 14 リズム2ファーニホウ1
非公式チュートリアル14 リズム2 ブライアン・ファーニホウのリズム分析と模倣1 現代音楽に携わる作曲家、演奏家、研究家の皆さんには周知のことと思うが、ブライアン・ファーニホウ Brian Ferneyhough という作曲家がいる。1943年イギリス生まれで、「新しい複雑性 new complexity」と呼ばれる作風を確立させた。 複層的に重なる非常に多くの連符を駆使した複雑なリズムを指定するのが、彼の楽譜の大きな特徴である。このスタイルは一時期1980-90年代に、ドイツのダルムシュタット夏季現代音楽講習会を中心に現代音楽界において大きな流行を築いた。彼の影響を受けた作曲家は数え切れないほど挙げられる。ファーニホウ自身、現在も健在で精力的に作曲活動を続けている。 楽譜著作権の問題を回避するために、他のブログ(おそらく公的な出版関連もの)から借用した楽譜を紹介する。 これは「... -
エラー
警告 リスナーメッセージ さほど重要ではないエラーはたいていリスナーウィンドウに表示される。 error1.png エラーダイアログ より深刻なエラーは、Preferences(設定)のGeneralでhandle error messagesにチェックが入っていたら、エラーウィンドウが開く。 error2.png 入っていなかったら、ターミナル(Mac)/コマンドプロンプト(Win)が開く。 ターミナル(Mac)/コマンドプロンプト(Win) より深刻で予期しないエラー、もしくはhandle error messagesオプションが選択されていなければ、ターミナル(Mac)/コマンドプロンプト(Win)が開かれてエラーを報告され、エラーの理解と解決を行う。 error3.png とにかく「 c[半角スペース][abortの番号]」を入力してEnte... -
Profile
旋律輪郭の操作のための関数。 alea-pertb compr/expan control-pertb prof-change reflexion double-reflect multi-reflect mean-derivation pr-interlock derivation integration inter-dyn multi-interpol interpol-prof 2つの旋律輪郭の間を補間する range-approx notes-change weight-average pr-group-list subst-list interpol-tab bpf-interpolx -
非公式Tutorial 11 文字列のファンクション
非公式チュートリアル11 文字および文字列のファンクション 2年ぶりの更新。 今回は文字および文字列の扱い方、およびそのファンクションを列挙してみる。リファレンスマニュアルに載っていないLISP由来のファンクションがたくさんあるので、是非ともご活用いただきたい。 OpenMusicで文字を扱う場合は、以下の3つに分けられる。 単一の文字からなる「文字 character (char)」 複数の文字からなる「文字列 string」 文字列をシンボルとみなす「シンボル symbol」 非公式Tutorial 04 omif subpatchで条件判断文によりevenとoddの文字を表示させたが、この時は「シンボル」という扱いであった。今回は「文字」と「文字列」を扱う。 単一の文字(半角英数字と記号)を扱うときには、 #\ の次に文字を書く。 a とい... -
連続演算子
連続演算子は処理のおき方をコントロールするもの。 例えば、ある処理を反復したり、複数の処理を続けて発生させたり。 連続演算子はFunction- OM Kernel- Controlから。 controlmenu.png 反復 Repeat-n Repeat-n関数はある処理を好きな回数繰り返して、その結果をリストに集めるもの。 仕様 repeatn-box.png 引数[0] self:繰り返したい値・関数 引数[1] num:繰り返す回数 出力はリストの形式。 例 repeat-n.png 15個のランダムな音列を作るパッチ。 Repeat-n関数が15回om-random関数を呼ぶ。om-random関数はその度に6075から7230からランダムに値を選ぶ。15コ集まったらrepeat-n関数はそのリストをchord-seqファクトリーボックス... -
非公式Tutorial 05 様々なファンクション
非公式チュートリアル05 様々なファンクション ここでは様々なファンクションを見て行くことにする。今回は内容としてはリファレンスマニュアルに近いものである。 以前のリファレンスマニュアル(ver. 5以前)はアルファベット順で、目的別にまとめられておらず、非常に見にくいものであった。この一覧パッチはその時に作ったものであるが、ver. 6.6.2現在のリファレンスマニュアルは目的別にある程度分かれているので随分見やすくなった。なのでこの一覧パッチもそれほど頻繁に参照するものではなくなったが、今回のチュートリアルは補足的なインデックスとして扱ってほしい。 それぞれのファンクションについて詳しく知りたい場合は、公式リファレンスマニュアルを読むことをお勧めする。ファンクションを選択してdキーを押せば、ブラウザが開きリファレンスマニュアルが開く。これはブラウ... -
freq-mod
FM(周波数変調)。 入力 説明 デフォ [0]carrier キャリア。基音のmidiセントor周波数。 3600 [1]modul モジュレータのmidiセントor周波数。 4000 [2]index 変調指数。1~25の整数で指定。 1 carrier、modul、indexはリストでも可。そのときは、carrierリストの第1要素&modulリストの第1要素&indexリストの第1要素でFMされ、次はそれぞれの第2要素が・・・となる。 [3]unit 入力数値の解釈。インレットをクリックして選択する。 Midics を選ぶとcarrier、modulをmidiセントとして受け取る。 Freqs を選ぶとcarrier、modulを周波数として受け取る。 Midics [4]type リストだった場合の出力形式。インレットをクリックして選択する。 ChordSeq を選ぶ... -
ラムダモードと高階関数
Lispでの関数は第一級オブジェクトなので、関数自体を入力したり出力したりできる。 関数を受け取ったり出したりする関数を高階関数という。 OMでは高次のプログラミングは主にラムダモードのボックスで実現する。 関数を扱うのに特化した関数がいくつかある。 apply_icon.pngfuncall_icon.pngmapcar_icon.png // apply関数の話は後のページへ回す ラムダモードの使用 実際には 引数関数は以下の2つの構成で使われることが多い。 高階関数によってある関数に複数の引数を当てはめたい場合の、ある関数として 高階関数のふるまいを定義するテスト関数として // インプットの数の話は後のページへ回す -
トップページ
使い方とかマニュアル訳とかするOpenMusicの支援ページ。 OpenMusicとは IRCAM(イルカム、フランス国立音響音楽研究所)が作ったプログラミング作曲用のフリーソフト。 略は「OM」。MacOSX、Windows対応。Linuxも試験的に利用可能らしい。 参照:OpenMusic公式サイト 2chスレッド:現代音楽板 IRCAMソフトウェアスレ ダウンロード 公式DLページより各自のOS用のインストーラをダウンロード。 2017/09/23現在、OM 6.12が最新。 インストール Windows ダウンロードしたzipファイルを解凍、できたインストーラを実行して画面に従いインストール。 もしOM実行時に「MSVCRライブラリがない」というエラーが出た場合はMicrosoft Visual C++ Redistributable Pac... -
ring-mod
リングモジュレーション。 入力 説明 デフォ [0]ch1 基音のmidiセントor周波数。 6000 [1]ch2 モジュレータのmidiセントor周波数。 6200 ch1、ch2には音高値、音高値のリスト、音高値リストのリスト、CHORDオブジェクトが入力できる。 [2]unit 入力数値の解釈。インレットをクリックして選択する。 Midics を選ぶと音高入力をmidiセントとして受け取りmidiセントを出力。 Freqs を選ぶと音高入力を周波数として受け取り周波数を出力。 Midics [3]type ch1がリストであった場合の出力形式。インレットをクリックして選択する。 ChordSeq を選ぶと、ch1のリストの要素がそれぞれch2のモジュレータで処理され、和音のリストが返ってくる。 Chord を選ぶと、出来た全ての音成分が1つの和音にまとめられて返ってくる... -
非公式Tutorial 13 リズム1
非公式チュートリアル13 リズム1 ここではリズムに関するテクニックを解説する。最終的にはブライアン・ファーニホウのリズムテクニックを模倣することを目指すが、まずは一歩一歩解説していきたい。 非公式Tutorial 08 multi-seq voice polyにおいて、クラスvoiceとpolyの解説を書いたが、以前の執筆から3年以上の時間が経っているので、改めて解説する。 また、私以外のどなたかが翻訳して載せてくださっている、リファレンスマニュアルの以下の項目も合わせてご参照のほど。 [Trees]pulsemaker 小節分割でリズム構築 maketreegroups リズムパターンを組み合わせてリズム構築 tree2ratio 音価休価のリストを取得 mktree 音価休価リストからリズムツリーを構築 reducetree 連続する休符やタイを結合する tiet... -
リファレンス
関数・オブジェクトのリファレンス。 [Kernel]カーネル[Lisp]Lisp言語で定義されているものT 真偽値true INTEGER 整数 FLOAT 小数 NUMBER 数値全般 RATIONAL 分数 STRING 文字列 NIL(NULL) null値 first 最初の要素を返す second 2番目の要素を返す third 3番目の要素を返す nth n番目の要素を返す rest 最初の要素を取り除いた後のリストを返す nthcdr 前からnコの要素を取り除いた後のリストを返す butlast 最後の要素(もしくは終わりnコの要素)を取り除いた後のリストを返す reverse リストの順序を反転する length リストの長さ(要素数)を返す list リストを作る remove リストから任意の値を削除する cons consセル(ドット対)を作る append ... -
評価モード
評価モードを考える上で重要な2つの概念がある。 ユーザー評価。ユーザーがCtrlクリックやVキーで発生させる評価。 内部評価。1回のユーザーの評価操作の内部に生じる種々の評価。 この章は内部評価のコントロールを扱う。 ボックスにはデフォルトの評価モードの他に4つの評価モードがある。戻り値の返し方のコントロールを規定するのに用いられる。 ロックモード lock_icon.png ワンスモード once_icon.png ラムダモード lambada_icon.png 参照モード refmode_icon.png 評価モードを選ぶには、 ボックスを選択しbキーを押す(とロックモードになる)。 左上のラベルをクリックして他のモードに変更する。 評価モードを初期状態に戻すには再度bキーを押す。 -
Situation
Situationはピッチとリズムを操作する(?)。 csolver wsolver add-csolver i-dst_filt i-dst/reg_filt i/i-dst_filt i-dst_rnw x-dst_filt x-dst/reg_filt x-dst_rnw pts_filt pts_rnw x-pts_filt x-pts_rnw x_prof x/x_prof x-bpf_prof user-cnstr prev-instances wprev-instances wbest-so-far variable-domains generic-cnstr done-instances current-variable ch-sol rtm-sol part-sol bpf-ambdef default-fill all-permutations combinati... - @wiki全体から「ワークスペースでのパッチの操作」で調べる