[obsidian] vault backup: 2023-11-15 16:09:00[

This commit is contained in:
2023-11-15 16:09:00 +09:00
parent 1e58d8fd70
commit 7b883fa5d7
11 changed files with 101 additions and 9 deletions

View File

@ -19,7 +19,7 @@ TTCはジェネリックなタイプ`A`に対して、以下の3つの型コン
type time = Real;
//時間に紐づいたイベント。MIDIートとか
struct Event<A>{v:A, t:time}
//有限ベクトル。オーディオファイルとか
//有限ベクトル。オーディオクリップとか
type Vec<A> = std::Vec<A>
//無限ベクトル、またはストリーム。1論理時刻毎にA型のものを返す漸化式内部状態を持つかもしれない
type iVec<A> = Box<dyn FnMut()->A>
@ -67,7 +67,11 @@ let Track2 = Generator::SineWave(Track1,Constant(1.0),Constant(0.0));
CubaseにおけるインストゥルメントトラックとかはMIDIトラックシンセサイザーの合成なので、
`Track<NOTE,NOTE>``Vec<NOTE>->iVec<Audio>`みたいなのを適用する関数としてあらわせ、、、る?
## 考えうるユースケース
- ドラッグしてるオブジェクトのスナップ対象は例えばCubaseなら固定のグリッドor既存のイベントorその両方とかだけど、例えばグリッドをジェネラティブに生成できる
- もちろんクオンタイズにも使える
- 非破壊的クォンタイズ。録音されたと