2010年4月29日木曜日

【UTAU・デフォ子】Defauko sleeps in the night sky.【オリジナル】

Pure Data、GemのパッチにUTAU・デフォ子の声などを入れて作りました。


2010年4月24日土曜日

メモ

  1. キーの押下に反応させて、音ならして、MPCっぽく?する。
  2. タイムストレッチのサンプルを改良して、パッチに組み込む。

2010年4月23日金曜日

[line]

lineは線なので、線をたどって徐々に変化させるということなのでしょうか?
数値A(開始値)から数値B(終了値)にXミリ秒かけて変化させるオブジェクトです。

【書式】
[line]
[line arg1]
【引数】
  • arg1:開始値

【inlet, outlet】
  • inlet1:終了値
  • inlet2:変化させるミリ秒
  • outlet1:inlet2の秒数をかけ、arg1(2回目以降は直前のinlet1)からinlet1の数値に向けて変化させる数値を出力

【サンプル】


このオブジェクトはちょっと気をつけないといけないかもしれません。
それはinlet1に100を入力した後、200を入力したとき、その変化は
0→100、100→200となります。lineは前回の終了値を記憶してます。
(ちなみに開始値、終了値という言葉は勝手に作りました。)

つまり上のサンプルの(1)→(7)→(1)の順に押してもlineが
前回の終了値1000を記憶してるため(8)のNumオブジェクトを直接0にしても
出力は開始値1000から終了値1000を1秒かけて変化させる
というものになるので一瞬で1000になるだけです。

もう一点、inlet2に値を入れた後、inlet1に数値を入力すると
inlet2に入れた値は無効となり、多分0になります。
(5)→(4)→(3)の順に押すと、500への変化は20秒かかりますが
30000への変化は0秒です。
(1)→(2)→(1)→(2)→(1)……の順に押せば指定した時間かけて変化します。
ですので変化させる時間は変化があまりない場合は、[$1 $2]として
これをinlet1に入れた方がよさそうです。

【追記】
[5000, 0 1000]としてメッセージオブジェクトなどでinlet1に入力してやると
5000から0に1000msで変更しました。つまり
[開始値, 終了値 変更時間]
ですね。

2010年4月21日水曜日

メモ

値変更してるのを[line]でゆっくり変更も選択できるようにする予定。

2010年4月15日木曜日

separatorのエラー?

GEMで映像を表示してるときに

GL: ヨᄈフøツȗñヒモ

↑こんなエラー?か何か文字化けしてて分からないメッセージが表示され続けてて、なんだろうかと思って無視してたんですが、どうも重い。

前の実験で、[print]なんかを使ってコンソールに文字を出力するのはpdにとって大変な作業みたいだということは分かってたので、あーこれかと思ったんですが、何が原因か今日見つけました。
(因みに、コンソールチェックボックスをオフにして見た目消しても多分変わらず重いと思います。内部では出力し続けてるのかな?)

[separator]はここによると「gemlist の分割」らしいんですが、よく分かりません。
動きとしては、1個の[gemhead]からオブジェクトを何個生成しても個別で位置などを設定できる?みたいな感じです。
ヘルプを見て[gemhead]が1個ですむから、何か良さそうだな~と思って何となく使ってましたw

[separator]を[gemhead]に変更することによって変な文字も出力されずに同じ動きを実現することができて、軽くなりました。いやーすっきり!

2010年4月13日火曜日

[moses]

mosesは多分「モーゼの十戒」のmosesで、モーゼが海を二つに分けたように引数によって出力を二つに分けるオブジェクトです。ちょっと面白いですね。

【書式】

[moses]
[moses arg1]


【引数】
  • arg1:分岐する数値


【inlet, outlet】
  • inlet1:数値
  • inlet2:分岐する数値
  • outlet1:arg1またはinlet2によって設定された数値未満の場合、その数値を出力
  • outlet2:arg1またはinlet2によって設定された数値以上の場合、その数値を出力


【サンプル】


------------------------------------

初めてこのオブジェクトを知ったときは、何に使うんだ?と思いましたが

今はこんなサブパッチで使ったりしてます。

ここでの[moses]の役割は、ランダムで生成された数値を
50未満、以上で分けてるんですが、inlet2から数値を入力することによって
出力結果の確率を操作することが出来ます。
当然、inlet2に100を入力すれば100%出力は「1」になるということです。

[clip~]

早速、pdの覚書。

clipとは英語で「切る」とか「刈る」と言う意味で、このオブジェクトは入力されたオーディオシグナルを設定された下限、上限で切るってことでしょう。

【書式】
[clip~]
[clip~ arg1 arg2]

【引数】
  • arg1:オーディオシグナルの下限
  • arg2:オーディオシグナルの上限

【inlet, outlet】
  • inlet1:オーディオライン
  • inlet2:オーディオシグナルの下限
  • inlet3:オーディオシグナルの上限
  • outlet1:clipされたオーディオライン

【サンプル】



多分、こんな感じ。サンプルはヘルプを見ると分かりやすい。
当然、 inlet2 < inlet3 じゃないとうまいこと動きません。

コンプレッサー作るときに使えそう。
ってか既にコンプレッサーと言えばコンプレッサーか。

音楽とか映像とかアプリとか

音楽とか映像とかアプリとか自分の作ったものを公開とかして行こうと思ってます。

Pure Dataの覚書とかにも使うだろうな。

そんな感じでよかったらどうぞ。