いらないモノ、ひつようなモノ

書籍、音楽、そして若干のテクノロジー

csound

csoundAPI

まずはマニュアルから整理 API file basic Csound C API H/csound.h libcsound.aとリンク basic Csound C++ API H/csound.hpp libcsound.aとリンク extened Csound C++ API interraces/CppSound.hpp, interfaces/CsoundFile.hpp 利用時は2つのライブラリと…

csoundを使った作曲でひと段落 - 曲

パーカッションを含めcsoundで音源、スコア記述をおこなって曲を完成させた。スコアの記述にはrubyを用いて意図した曲構成通りのスコアを生成させた。各トラック/楽器のボリュームの調整にはaudacityでmixerの代わりとた。 ミックスダウン 当初はzakを用いて…

csoundで曲を作るプロセスとrubyによるスコア生成に関するメモ

色々素敵なcsoundのフロントエンドがあるけれど、どうもそれには馴染めないところがあるので手作業が続く中、仕方なくプログラムを作って作業をすることになりました。また、楽器や他の部分についてルールを自分なりに作っておけば後から再利用可能な楽器に…

TIPS

instr 0のなぞ グローバル変数はinstr 0で定義されなくてはいけない。sr,kr,ksmps,nchnlsの後にあって、最初の楽器の間にある見えないinstr。プログラマの感覚ではinstrの間においてもよさそうだけど駄目です。インプリメンテーションの説明にも「This is th…

INSTR ライブラリ

こちらも少しづつせいり 平凡な音 ←csoundメモ 目次に戻る サイン波+ローパスでまずはシンプルなやつから <CsoundSynthesizer> ;2007/9/9 - by a9a9qq@gmail.com ; <CsOptions> -d -W -o vidro.wav </CsOptions> <CsInstruments> sr = 44100 kr = 44100 ksmps = 1 nchnls = 2 #define IFN_1 #1# gitab ftgen $IFN_1, 0</csinstruments></csoundsynthesizer>…

UDOライブラリ

少しづつできてきたものをば。 multiTapOnBeat マルチタップする。エコーとか。ディレイとか、マルチタップとか、大好き。BPMを引数にとって、8ビート間隔で減衰率を指定しながら。 ;; multiTapOnBeat ;; 2007/09/09 - a9a9qq@gmail.com ;; ;; [Syntax] ;; ;…

音程

←csoundメモ 目次に戻る csoundで扱う単位を整理。 pch pchはX.YYの形で表すピッチクラスと呼ばれる。ド=C4=8.00で、半音増えるごとに1増えてゆく1オクターブで12の半音があるので8.11でシ=B4=8.11。高いドは9.00。ひとつ疑問がわいてくるのは、8.12が9.0…

midi用ツール

mid2sco 自分で作ろうかと途中までJavaで書き始めたが、あることに気が付いていなかった。あらら。./install.shしたらコンパイル&インストールしてくれた。MIDIのnote, ampを0-127のMIDIの世界のスケールで書くのでMIDIノートから変換が必要になる。このバー…

note/pch/cps/oct table*1

←csoundメモ 目次に戻る ドレミ MIDI note pch*1 cps1*2 cps2*3 cps3*4 oct*5 C 03.008.1768.1768.1763.000 C# 13.018.6618.6628.6613.083 D 23.029.1789.1779.1773.167 D# 33.039.7239.7239.7223.250 E 43.0410.30010.30110.3003.333 F 53.0510.91410.91310…

日本語フォルマント周波数

確かなんかの論文かなんかからとってきました 表 1:日本語の 5母音のホルマント周波数( Hz) F1 F2 F3 F4 F5 /a/ 800 1300 2500 3500 4500 /i/ 250 2100 3100 3500 4500 /u/ 250 1400 2200 3500 4500 /e/ 450 1900 2400 3500 4500 /o/ 450 900 2600 3500 45…

csoundでのMIDIの実験

きっとmidiremot等MIDIイベントをネットワーク越しに渡すとか、いろいろやりだすときりがないかもしれないのでちまちまといきます。 test1: MIDI楽器用opcdeをscoreから利用すると、、 MIDI駆動される楽器とScore駆動される楽器で使えるopcodesが違いという…

csoundの利用方法*2

←csoundメモ 目次に戻る csoundはaudio/midiのリアルタイムモード等が加わってどのような使い方ができるか? 非ライブ利用の場合 csoundのみを使って1曲をレンダリングする方法。オーケストラとスコアファイルを書いてcsoundで結果をオーディオファイルを落…

リアルタイム用のMIDI

スコア リアルタイムでMIDIの入力をcsoundが受け付けるように場合にはスコアの書き方でポイントがある。 要はcsoundが持ち切りになって終わらせないことがポイント。 例1: f0 9999 スコアステイトメントfのp1は、正であればテーブルの生成、負であればテーブ…

bashのalias/function

←csoundメモ 目次に戻る作業を始めるといろいろ気になる. orcファイルとscoファイルがバラになっているサンプルをまとめてコンパイル function csd(){ csound -d $1.orc $1.sco -W -o $1.wav } emacsのシェルでコンパイルすると制御コード(^[m)が五月蝿いの…

UDO(User Defined Opcode)

使い方:マクロやユーティリティー関数のように決まりきった部分を切り出して再利用が基本的な考え方 書き方:定義時に1文字で表した型を連結し並びを表現。xin, xoutを使って変数と紐付け opcode OPCODENAME, INPUT_TYPE, OUTPUT_TYPE inarg1[, inarg2, ..…

csoundの型と変数とその動作について

←csoundメモ 目次に戻るcsoundのマニュアルにはa-rate,i-rate,k-rateという言葉が頻出する。csoundのオーケストラセクションを書き下すためにはその「rate」を含む型の概念があり、型と変数が一体となった言語体系であることを理解する必要がある。またマニ…

i-time,k-timeについての実験

←csoundメモ 目次に戻る音の出ない、テキスト出力だけのcsoundコードでさらにi-time, k-timeを見てゆく。いくつかのオプコードはi,kのタイミングをかなり意識したつくりになっている。print文にも種類が分かれている!これは正直かなり、嫌な感じであるが、…

マニュアルエントリーの書かれ方

k-rateやらa-rateやらをマニュアル表記の面から見る。i: ただの値を意味する1.0, 1024, -1など。マニュアルではifn(i FunctionNumber)とか、iphs(i PHaSe)とかk: 数字、もしくはコントロールレート(k-rate)の値を意味する。1.0の値でもよいが、制御信号列を…

csoundのsr、krの詳細

←csoundメモ 目次に戻る楽器を定義する一番最初に、何も触れなかったが、 sr = 44100 kr = 4410 ksmps =10 という2行を書いた。srをサンプリングレート、krをコントロールレートである。コントロールレートは意訳すれば「オーディオ信号書き込み粒度」みたい…

real-time midi, real-time audioを試す。

目次: virtual keyboarを使ってrealtime-audio。 実際の楽器を使ってrealtime-audio。 virtual keyboarを使ってrealtime-audio リアルな楽器をつなぐ前にvirtualKeyboardを使ってみる。virtualKeyboardありでコンパイルしたので使えるはずである。real-time…

csoundの環境変数などを、、

←csoundメモ 目次に戻る 時々悩むので整理。引数とあわせて整理したいな。。 csound環境変数から見た整理/未整理 変数名 略(想像) 意味 備考 OPCODEDIR OPCODE DIRectory of 32bit version ... opcode pluginが置いてあるべきディレクトリ。single precision…

csoundのソースファイルを持ってくる

cvsを使ってリポジトリからソースファイルを持ってくる。パスワードが求められても「単にリターン」を入れるだけ。初めてなので戸惑った。結局コマンドラインで1行目を入力するとログインされるのだが、プロンプトが変わるでも無しそのままshellプロンプトが…

まずcsound以外をインストール

以下、Fedora 7にインストールした時のメモ。Windows環境のインストールは異なるし他の環境の人には参考にならないかも。 gcc これはFedoraを入れたときに開発環境ごと入れてあれば入っているはず。インストールは不要だった [root@localhost ]# rpm -qa gcc…

インストールの方針とcsound-5.06

対象: 現時点の最新である2007/6/6リリースのcsound-5.06 方法: 基本的にソースからのコンパイルを目指す 新しいcsound5では、 csLADSPAcsLADSPAとは「csLADSPAを利用するとLADSPAのplug-inがcsoundのコードとして書くことができる。またAudacity、jack-ra…

csoundをコンパイル。

scons -hでオプションを見なさいとマニュアルに言われても、何のことやら。いろいろ調べて、単に引数で指定しなさいということか。今のところはこのようにコンパイル scons useDouble=1 buildCsoundAC=1 buildCsound5GUI=1 useOSC=1 buildInterfaces=1 build…

環境、その他

csound-x(http://www.zogotounga.net/comp/csoundx.html) メインエディタはemacsなのでemacsで「M-x customize」で、Programming-Languages-Csound Xから各種ディレクトリを設定。 ディレクトリ 過去はplanet ccrmaでcsound-5.03がインストールされていた。…

zakって良く分かっていないので、少しお勉強

http://ecmc.rochester.edu/onlinedocs/Csound/Zak/zakinit.html を読んでいいたらちょっと内容が面白かった。ZAKってこういう風に考えてもいいのか。。 - zakは一言で言うと、k-rate, a-rateのパッチング(i-rateでもよいが)。名前の付け方はzで始まるよう…

lorisread, lorisplay

まずlorisreadでデータの読み込み、読み込んだデータの再生をするlorisplayの動きを確認しよう!! csoundのユーティリティーのhetro(http://www.csounds.com/manual/html/hetro.html)を使ってsdif[Sound Description Interchange Format](http://recherche.ir…

実験しながらFLTKとlorismorph(その1)

GUIをイメージしながら、モーフィングする音を決めるようなツールを作る。本当にそれがCSOUNDでかけるのかどうか試す。 本当はモーフィングする二つのファイルをファイルをディスクから読み込んで立ち上げた後も変更できるのが望ましいけど、まあ、…

csoundの動きを止める

FLbuttonでquitさせ方は、csoundメーリングリストのサブジェクト「Re: [Csnd] stopping a csound performance...」で流れていた話題の一つの方法をとった。元話題としては、「csoundの動きを止めるようなopcodeはないか」という質問の回答で、 exitnowオプコ…