今までChucKについて大抵は、公式サイトにある The ChucK Tutorial ChucK : Language Specification ChucK : Programmer's Reference 特にChucK : Programming Guide Unit Generators を見てやってきたんだけど今さらPDFのマニュアルを眺めてみた。そしたら!!! こっちのほうが少し詳しい! そしてチュートリアルが良い! なんだよー! えー、数日しか書いてないメモなのに追記事項が…。まず、srandはProgramming Guideの一覧には載ってないけど、マニュアルの一覧には載っている。他にもいくつかこっちだけに載っている関数がある。でもまあこれはいい。 問題なのは、波の合成でdacに二個のオシレータの出力を直につないでいたこと。マニュアルの方のチュートリアルにはこう書いてあ
マウスの横方向の移動をパンに、縦方向の移動を音高に対応させて、音を鳴らすプログラム。左右のクリックで楽器を変更することもできる。 Hid hi; HidMsg msg; if ( !hi.openMouse(0) ) me.exit(); Shakers s => JCRev r => Pan2 p => dac; 800 => s.freq => float freq; s.preset() => int pst; .1 => r.mix; p.pan() => float pan; while(hi => now) { while(hi.recv(msg)) { // X軸の変化量はパンに使う msg.deltaX / 500.0 +=> pan; Math.min(Math.max(-1.0, pan), 1.0) => pan; pan => p.pan; // Y軸の変化量は音高
今のままだとジョン・ケージの有名な曲くらいしか再現できないので音の鳴らし方を。チュートリアルを見ると、まずはサイン波を作って鳴らそう、と書いてある…。音は波だそうで、波の形とか高さによって異なる音になるらしい。つまり適当な波を作ってそれをいじってやれば色々な音が出せる。波形のひとつがサイン波(正弦波)で、オルガンの音に近い音になる。 サイン波を作って2秒鳴らすコードは、 SinOsc s => dac; 2::second => now; 続きを読む チュートリアルで「昔のSF映画に出てくる大型コンピュータっぽい音」を出すといってるコード。 SinOsc s => dac; while( true ) { 100::ms => now; //30.0から1000.0までのランダムな数を周波数に設定 Std.rand2f(30.0, 1000.0) => s.freq; }ぎりぎりな高周波を
http://soundlab.cs.princeton.edu/images/chuck_logo2.jpg Topics (add your own) - (also see miniAudicle) ChucK homepage ChucK/Users (identify yourself) ChucK/Programs (share programs written in ChucK here) ChucK/Sounds (share sounds/pieces here) ChucK/FAQ (what the chuck?) ChucK/Tutorials (tutorials on various topics) ChucK/Propaganda (articles, reviews, presentations, blogs) ChucK/UserStudy (partic
ChucKにはネットワーク系の機能が実装されているため、ChucK単体で使うだけでなく他のアプリケーションと連携させることもできる。今回はOSCという通信プロトコルを使って、ChucKとProcessingを連携させる。 OSC(OpenSound Control)とは、音響データをネットワークで転送するための通信プロトコル。同種の通信プロトコルであるMIDIには、速度が遅い、帯域が狭い、データ表現の制約が強いなどの欠点があったため、ポストMIDIとしてOSCが考案された。OSCをサポートしているソフトウェアやハードウェアは多く、OSCを使うことでそれらを連携させることができる。 ChucKは標準でOSCをサポートしている。Processingは標準ではOSCをサポートしていないけど、oscP5というライブラリをインストールしてインポートすればOSCを使える。 OSCに関しては既にいくつか
<< SuperCollider入門、SuperCollider・Max・Processingの連携 | top | processing 基礎1 - Programming with processing >> OpenSoundControl 3 - ChucK入門、ChucKとProcessingの連携 講義資料 今回の授業は、音響合成のまた別のアプローチとして、ChucKというプログラミング言語+開発環境を紹介します。ChucKはSuperColliderのようなテキストベースの音響合成のための言語なのですが、SCとはまた別の、独特なアプローチで音響合成を行います。 講義の前半で、まずChucKの基本的な構造、文法を把握します。基本を押さえた上で、後半では、OpenSoundControlを介してChucKとProcessingの連携を試してみます。 講義スライド サンプ
動機 ふとこんなエントリをみたら自分でもいじってみたくなってしまいました。ちょっと前にSuperColliderを一瞬だけ触って使わなかった記憶があるため、こちらもそうならないようにメモに残しておこうと思いました。 参考リンク ChucK => Strongly-timed, On-the-fly Audio Programming Language Princeton大学の方が作ってるみたいですね。 Page Not Found - FL Prim ここでEmacsのchuck-modeを配布しています。 チュートリアル The ChucK Tutorial ChucK - [Examples By Category] ここでざざっと説明を読んで下のサンプルコードを眺めるのがいいと思います。(サンプルコードはバイナリが入っているアーカイブに同梱されている)以下でチュートリアルを読んでの個
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く