このサイトについて

制作した音に関連したインタラクティブ作品の紹介を中心に、その他ソフトウェアなども紹介するサイトです。
後は、諸々の制作に関するメモなどもしてます。

正月2日にちょっとMax初めをやってみようと、映像のdelayについて調べていたら結構面白いのができたのでご紹介

まず最初に思いついたのはこちら

なんと!一人でEX◯LEやZ◯◯で有名なCh◯Ch◯Trainのダンスができちゃんうんです。

続いてはこちら、しょっちゅう連載がストップしてしまうジャンプの大人気マンガの暗殺一家の必殺技の一つみたいなもの

とあることからマイクからの音の周波数をMIDIノートナンバーに変換して、シンセをならせる簡単なアプリをMax/MSP(今はMax5っていうんですかね)作りました。
画面だとこんな感じ。
Bigpiano.jpg
昔周波数を解析するオブジェクトに fiddle~というのがあったのですが、今使えるのはそれを元にして作られた「pitch~」というのがあるみたいです。
後ほどサンプル動画もあげようかと思います。

配列とfor文

| コメント(0) | トラックバック(0)
lineprogramDebug.jpg
openFrameworks勉強中。中学生の頃?直線をひいて曲線を作る、この方法に魅入られていた時期があり。
以下重要なソース部分をコピペ

インストール時に引っかかった点メモ

このページの
http://www.movabletype.jp/documentation/mt5/installation/linux.html

この辺


  • ブログディレクトリの権限を、777 に設定します。

  • mt-static ディレクトリ内の support ディレクトリの権限を、777 に設定します。


インストールウィザードでmt-static が見つからない場合は直接mt-config.cgiを作成
http://www.movabletype.jp/faq/mt-static.html

DefaultLanguage ja の追加を忘れない

mtフォルダはcgi-bin配下で、mt-staticは公開サイト直下

Max/MSPで画像オブジェクトを動かすパッチを作っているので、その一部をメモ。
liveCharaMix01 (unlocked).jpg
上記パッチでは、以下の処理を行っています。
  • 一定時間でX,Y方向にランダムでプラスかマイナスで移動する
  • metroによってbangをおくり、それに数値を足して(引いて)setし、さらにbangでまた足して、、、と繰り返して数値の増減を実現
  • 増減する数値の幅をランダムで1から5の値にする
  • 上下左右の壁に当たったら、逆方向に動くようにする
今作っている(作っていた)Maxパッチは、サウンドファイルを20×6くらい使うため、20個ごとにファイルをわけたフォルダをそのつどドラッグ&ドロップと、ちょっと面倒でした。

で、同じ階層にあるファイルを読み込むことは簡単なのですが、フォルダの読み込みってパスの問題でなぜか難しく悪戦苦闘しました。

その結果、編み出したのはこの方法です、どん
mikukeyvoiceFull03.jpg
はい、thispatcherを使います。

thispacherオブジェクトにpathのメッセージを送ると、右アウトレットからそのパッチのある階層パスが出力されます。

そして、sprintfでフォルダ名(上記では aiueo1/)追加するとめでたくフォルダーのパスができるわけです。
これをしかるべきfolderなオブジェクトに読み込ませればパッチとして作るには全然OKです。


そう、、なんとなく予想されましたが、問題はアプリケーション化したときに起こりました。
thispatcherのpathがアプリ化するとうまいこといかないようなんです。

ということで、あっさり深追いしないことを決め、この方法を応用して1つのフォルダをドラッグ&ドロップすると残りの5つのフォルダも自動的に読み込まれるようにする仕様にしました。

アプリでもフォルダ完全自動読み込みについては、後ほどトライしてみます。
(誰かもっとよい方法などあったら教えてください!)
MT4からのアップグレード、 mt-config.cgi だけ新しい方にいれるだけですんなり行えましたが、
一点以下の部分にはまってしまい、プロフェッショナルテンプレートがエラーとなってしまいました。(ログイン画面も英語だった)

アップグレードの注意点
mt-config.cgi で DefaultLanguage の記述がない場合は、"DefaultLanguage ja" を追記してください。mt-config.cgi に直接追記するか、mt-wizard.cgi を再度実行して、新しくmt-config.cgi を作成します。
とりあえず、mt-config.cgi の一番下に DefaultLanguage ja を記述したらログイン画面も日本語になったし、テンプレートも初期化すればなおるようです。

とりあえず、このサイトは通常のブログテンプレートからいじり始めたので、このままちょこちょこやっていこうと思います。

フェーダー部分

| コメント(0) | トラックバック(0)
DJソフトだったら、2曲をミックスしますよねってことで、フェーダー部分を実装。

[mix] (unlocked).jpgということで、フェーダー部分は後で画像にするかもしれないけど、横向きsliderをインタフェースにしました。
その値を使って2曲の音量のバランスを調整できるようにします。
右へよせれば右のソースがよくきこえ、逆にすれば左が。。という状態です。

直線的にクロスフェードしようとすると音の場合はちょっとおかしなバランスになるので、mixパッチャーの中身はちょっと工夫しています。(だったようなうっすら記憶)
実際に直線的なものと比べましたがこちらが自然でした。

音楽再生部分

| コメント(0) | トラックバック(0)
前に作ったDJソフトは、sfplay~というオブジェクトを使ったので、mp3などは使えずAIFFなどを利用する必要がありました。

jit.qt.movieも使ってみましたが、QuickTimeの仕様の問題で曲を読み込む際に必ずもう片方の曲が、ブチっと途切れてしまう問題がありました。

そして、最近MacBookPro15inchを手に入れてふと。。。。

今のご時世、メモリに丸っと曲読み込んじゃってよくね?

とおもっちゃいました。だって、スペック比較が

7年前
iBook G3 PPC 600MHz メモリ128MB

現在
MacBookPro  2.66GHz Intel Core 2 Duo メモリ4GB

なんですもの。

ということで、今回は以下のようにimportでbuffer~に突っ込む、groove~で再生するように試してみました。
djreborn (unlocked).jpgとりあえず、同じようなセットをもう1組作って試したところ、特に音が途切れるなどなく無事再生できたようです。
実メモリの使用率は、2曲読み込んで364MB程度で、昔なトリプルスコアで容量オーバーでしたが、全然問題ありません。

もっとよい選択肢もあるかもしれませんが、なんとなくひとまずはこれで進めていってみようと思います。
7年ほど前にMax/MSPを始めて3ヶ月の頃、DJソフトを作りました。(実際に一度だけプレイしたことあり)

その直後くらいにJitterがでて、 QuickTimeを使ってmp3対応を試みたところ、何故か「mp3でやる必要があるのか?」的な魔女裁判にかけられた記憶がうっすらあります(@_@)

最近まったくMaxを触ってなかったこともあり、リハビリも兼ねてDJソフトをリメイクして作ってみようと何となく思い立ちました。

ということで、制作過程をブログしていってみようと思いまっす。