A toy piano in my pocket

この週末に簡単なPianoアプリをiPhone用に作っていた。売り出すためというのではなく、最近移動が多く移動に時間を多く費やしている妻のニーズに応えようと思ったのだ。

もちろん、多くの有料・フリーを問わずそういったアプリがすでに数多くAppStoreに登録されているのは知っていたのだが、作ってみたくなったというのと、一度作って仕組みを持っておくと他の遊びにも使えそうという思惑もあった。

さて、わざわざ作るのだから、たとえば全部の鍵盤の音を減衰しきるまで録音しておいて、スイッチでそれを再生するだけというのは、確かにゴールには近道かもしれないけども、面白くない。やはり、Wave Tableを扱うオシレータをもったシンセサイザ、つまり簡単なサンプラーぐらいにはしたい。

iPhoneで音を扱うためのAPIは大きく分けてOpenALかAudio Unitになる。他にも簡単に扱えるようなものもあるのだけど、今回はローレベルで扱いたかったので除外した。

OpenALは以前テストしてみたことがあったのだけど、今ひとつiPhone上ではよくなかった。バッファアンダフローが頻繁に発生した。Call stackみてもAudio Unitにラッパーをしているみたいだし、オーバーヘッドを考えたらAudio Unitを扱うのが良さそうと言うところまでは分かっていたのだけど、iPhoneでAudio Unitっていうのも負荷的な問題は大丈夫なのかなといった疑問も少しあったのだ。

結論から言ってしまうと、Audio Unitの部分は意外とすんなりといってしまった。Undocumentedな部分で???となることが少なくなかったが、書かないといけないコードは拍子抜けするぐらいシンプルだった。AUGraphを作ってその中にアウトプットを追加し、ミキサーを追加し、ルーティングしてやるだけ。

もっとも、Appleのドキュメントでの手順ではどこからとも無くアウトプットがやってきていたので、アウトプットはデフォルトで何かしらあるのかと思ったら無いというような、少々はまった箇所はいくつかあったけれども。音を出すソフトのデバッグは音が出るまでが大変だ。

OpenALのテストの時の印象からするとAudio Unitはずいぶんと良い。5音ポリ(iPhoneのマルチタッチは最大5ポイントなのだ)ぐらいだとアンダーフローは発生していない。そのかわりUI側のタスクが若干引っ張られてるような感じを受けることがあるけど、音途切れが発生するよりは良い。

出力までの経路が完成したなら、あとはオシレータだ。当初は軽さだけを追求して、WaveTableからの読み出しもスキップのみしかさせていなかった。未だに乗除算は避けられるものなら避けたいと思ってしまう。浮動小数点も同様に。

オシレータだけだと寂しいので、ADSR付のエンベロープジェネレータも実装する。そもそもエンベロープジェネレータないとキーのオンオフどうするんだという話でもある。

すべてを実装して、試しに鳴らしてみる。なんだか、処理落ちもなく普通に音が出ている。もちろん、個々のオシレータなどは注意深く軽く実装したのだけど、所詮まだCレベル、実用にはまだまだ最適化が必要だと思ってただけに、またしても拍子抜け。

iPhoneのスピーカから出てくる音はおもちゃのキーボードのピアノの音みたいで、これはこれでかわいくて良いなと思ったのだけど、簡単なオーバーサンプリングをオシレータに追加してみると、やはり手を入れた分ぐらいは音がよくなる。それでもまだ処理落ちする気配がない。

こうなってくると欲が出始めて、つぎはローパスフィルタが欲しいとか思ってしまうのだった。

Max for Live will be released!

ついにMax for LiveがリリースされるというメールがAbletonから来た。とても楽しみなのだけど、Liveが8になってからちょっとアプリケーションとして重くなってるので、どれぐらいのパフォーマンスが出るかというのが心配でもある。

Snow Leopardが発売されるにあたって、OpenCL時代をにらんで、買って以来GeForce7300そのままだったMacProのグラフィックカードをRadeon HD4870に交換してみたのだけど、LiveはOpenCLにもGrand Central Dipatchにも対応しないということなので、なんとなくOSを移行しないままになっている。

Max for LiveでもDSPとしてGPUを活用するということは望み薄なんだろうけど、それでも、Maxのように自分でモジュールが書けるなら可能かもしれない。

MaxがLiveにもたらす効果は、アルゴリズミック・コンポジションだけでなく、Arduinoなんかで作った自作デバイスを活用できるかもしれないという点にもある。大がかりなプログラムを書かなくても(それほど簡単ではないにせよ)ふと思ったことが実現できるまでのリーチの短さを想像するだけで楽しい。

発表があってから音沙汰がなかったので、まあ来年には出るかなと思ってたのだけど、久々に発売が待ち遠しい製品の発売日決定だった。

Who is wrong?

このところ、悩まされている問題がある。

とあるソフトウェアシンセのプラグインをホストアプリケーション(Live)で使用していると、ある程度の時間がすぎた頃に突然Liveばかりか、OS自体がほぼ無反応状態になってしまうのだ。近頃のOSで1アプリケーションごときがOSまで止めてしまうんなんて、と思うのだけど、事実そういう状態になってしまうのだから仕方が無い。

関係ありそうなメーカーのサポートにメールを投げつつ、自分でもできる限りのチェックをしてみる。いらないソフトがインストールされてないかとか、されてる場合はアンインストールしてみるとか。

思えばMacProは音楽用になるべくクリーンな状態に保とうと思っていたのだが、それなりに年月が経つとゴミのように少しずつ要らないものがインストールされっぱなしになっていた。それ自体は仕方のない事だろうし、この機会に掃除をしてみたりはしたのだけど、そんな努力もまったく件の症状の改善には影響がなかった。

ただふとした事から問題の症状が出ている頃に大量のLogがsystemlogに出力されている事を発見した。システムのロードがあがる原因はこれではないかと思う。

サポートに投げたメールも少しずつ返事が返ってきて、いくつかのものは原因でないばかりか、「うちで試してみたらこういうので症状が出たよ。これじゃない?」などとそのメーカーと関係ないチェックまでして結果を教えてくれたりした。なんて良いメーカーだ。

そうこうしてるうちに、ここのメーカーのプラグインが悪いんじゃないかという事がしぼれてきた。そしてそこのメーカーのサポートからのメールの返事が未だにない。そういうものか。

Electric Vehicle’s Song

電気自動車やハイブリッド車のモーター走行時の騒音が低すぎて歩行者が接近に気がつかなくて危険なので、何か音を出したらどうかという話が出ているみたい。それは、確かにそうかもしれないと思うのだけど、あまり変な音を立てて走られてもそれはそれで騒音問題になりそうだ。

記事中にもあるように、おそらくはガソリンエンジン音を出すのだろうけど、ドレスアップパーツなんかでいろいろな音が出せるような商品が出るんじゃないだろうか。フェラーリやポルシェや、そういった実際にあるものの再現ならまだしも、エフェクト音やだれそれの音楽とかになるとうるさいだろうな。

そういえば昔のSFでエアカーなんかがフィヨフィヨ音をさせながら動いていたのは衝突防止用だったかとか、未来の子供は車のことをブーブーといわずになんていうのだろうとか、とりとめなく想像するのだった。

Do Vocaloids Dream of Electric Apple?

わたしはMacintoshユーザーなので、Vocaloidを使おうと思ってもMacintosh版がないのでダメってことになる。でも、最近ではMacintoshもインテルのCPUになっていろいろと動かせる方法が出てきてる。もちろん、だからこそ先日(というには日がたってしまったのだけど)の曲を作る際に使えたのだけど。

昔Power BookG4の上でQEMUを使ってエミュレーションでWindows2000を動かしたときは、動いたということがすごくておもしろいのだけど、とうてい実用できる速さではなかった。

今ではVMWareの上の仮想マシンで、実用十分な速さでWindowsが使える。昔使ってたWindowsマシンより仮想マシンのが速いんじゃないかな。

さてさて、結論から言うと、わたしが試せる環境の中でという条件では、いちばんVocaloid Editorが快適に動いたのはCrossover Macだった。以前なにかのキャンペーンでフリーでレジストレーションできたときに、とりあえずとっておいたものだった。

ネット上でよくみかける通り、コントロールパラメータなどの描画はバグっているのだけど、UIのレスポンスが良いのがとても良い。ただ最大の欠点はサウンドのあたりが弱いのか再生させていたら再生がバグってくる。それがプレビューだけならまだいいのだけど、レンダリングさせたファイルにもこっそりノイズが乗ってたりするのが油断できない。

その点(サウンドまわり)はVMWare上の仮想環境の方がよくて、ファイルにノイズが混入するというのは今までは体験していない。ただ流行ものにのってWindows7のベータ版を使ったせいなのか、UIがかなりもっさりとしていてとても細かくいじろうという気にならない。

どちらもが帯に短したすきに長しという具合なので、エディットはCrossoverで、レンダリングはVMWareでというのが今のところ、わたし的にはベストなMacintosh上でのVocaloid Editor操作環境になってる。

Macintosh版はいつか出るのかな。需要はあると思うんだけど。

Missing Books

最近、というには旬が過ぎてしまった話題と言う事になるのかもしれないけど、グーグルが書籍検索サービスに関して、米国出版社協会和解した事により日本の出版社のあいだに巻き起こっている騒動がある。

ここの解説を読む限り、影響があるのは「著作権の保護期間内である書籍についても、絶版または市販されていない書籍」だと思うのだけど、Googleのこのページを見ると「今回の和解契約により、ユーザーは Google ブック検索に登録されているさまざまなカテゴリの書籍にアクセスできるようになります。」という項に「
著作権で保護された、刊行中または市販されている書籍」と書いてある。はて。

仮に「著作権の保護期間内である書籍についても、絶版または市販されていない書籍」が影響をうけるとして、それってそんなに問題ある事なのかな。もし、「将来価値が上がるまで待ってて、いまは絶版にしてるんだよ。権利は手放さないから。」というのなら、ちょっとやな感じだ。しかし、それが商売と言うものかもしれないけど。

と、いうのも、わたしは好きで音楽の理論書を読むのだけど、かなりの確率で初版で絶版というものにあたる。神保町の古賀書店という音楽関係の書籍専門の古書店があるのだけど、そこで見つかるとラッキー、見つかったにしてもプレミアがついてたりする。

原書だとまだ普通に刊行されてて、日本でもアマゾンで手に入ったりする。しかも、結構安い。なのだけど、原書が英語のものは、なんとか読めるのでそれで用は済むけど、なかには原書がフランス語とか言うものもあって、そんなのはお手上げだ。

アマゾンの書籍検索がだめだというなら、日本の出版社はそういった絶版で手に入らない書籍を読む方法を作ってほしいと思う。また、コピー不可とかWindowsのみとかガチガチに固まって身動きのできないようなシステムな予感でいっぱいなのだけど。

書籍においても、音楽産業が通ったDRMフリーに至るというあのゴタゴタをもう一度やるのかな。

Royal Road

photo by arbeer.de(flickr)

もう、ずいぶんと日が経ってしまったけど、ゴールデンウィークの連休中、3Dモデラーのソフトの操作を習得しようと思っていろいろ調べていたら、最近では3Dのソフトなんかはビデオなんかで一連の手順を見せてくれるといったチュートリアルビデオのたぐいが結構充実しているみたい。そのなかでもお値段的にもお手頃だったDigital-Tutorsを選んで、ワークフローが想像できるぐらいまでは、ひたすら見ていた。

もちろん、想像するのと実際にやってみるのは全然違うのだけど、どんなツールやルールがあって、その制約条件のなかで作業をしないといけないというのが何となくでも理解できてるのは結構有効なんじゃないかなと思ってる。

そうでなくても、昔から職人の技を見るのは好きだったので、そういった、ものができる現場が見られると言った点でもとても面白かった。

以前Nord Lead3を使えるようになるために何かないかと考えて、毎日毎日ランダムに選んだプリセットを、初期化状態からそれを再現できるようにパラメータを記憶してはやってみるというのをやっているうちに、なんとなく勘所はわかってきたような気がする。

まだまだ広く見渡したわけではないのだけど、音楽系のソフトの操作方法をビデオで見せてくれる(機能紹介程度ではなく)というのはかなり少ない印象なんだけど、どうなんでしょ。Sound&Recordingマガジンで時々、記事と連動してCDでその結果の音を聴ける、みたいなのはあるんだけどね。

DELL needs Google?

DELLのページを見たら左のような広告がサイドバーに出ていて、そうかDELLもGoogle Miniの代理店やるのねと少々興味があったので(以前導入に関わった事があったので)クリックしてみると・・・

ちょっとうけてしまった。

MP3 Format Problems

Worksのページに設置しているFlash製のオーディオプレーヤーが再生するmp3のフォーマットがVBRだった場合、再生する環境によっては、のびたテープみたいになったり、本来よりスローに再生されたり、正しく再生されないようです。Flashのランタイムの問題でしょうかね。CBRだと問題は起きないようなので、CBR版をプレーヤー用に追加しました。ダウンロードリンクのものは以前と同じくVBR版です。

mp3版を作るにあたってはiTuneのエンコーダだとどのビットレートでも破綻しない代わりにどれでももっさり聞こえるとか、lameはどのビットレートでも分離感は良いのだけどフィルターのエラーがたまるのかノイズが乗る事がある(毎回同じ場所)とか、どれもこれなら大丈夫とはいかないようです。

難しいですねぇ。