# Precautions for Strudel Coding ボクが Strudel のコードを生成する際に、過去に犯したミスや注意すべき点をここに記録するよ。二度と同じ間違いを繰り返さないための、ボク自身への戒めだね。 ## 1. Sound Bank & Sample Name Consistency 特定の `.bank()` を指定した際、そのバンクに存在しないサンプル名を指定しないこと。 ### TR-606 (`tr606`) * **使用可能なサンプル名**: `bd`, `cr`, `hh`, `ht`, `lt`, `oh`, `sd` * **注意**: `perc` や `rim` など、上記以外の名前は存在しない。タム系を使いたい場合は `ht` か `lt` を選択すること。 * **NG**: `s("perc(3,8)").bank("tr606")` * **OK**: `s("ht(3,8)").bank("tr606")` ## 2. Function Specificity & Typos 特定の音源でしか機能しない関数や、よくあるタイポに注意すること。 ### `sine` vs `line` (Important!) * **注意**: `line` という関数は Strudel には存在しないよ。周期的な変化や LFO が欲しい場合は必ず `sine` (または `sawtooth`, `square` 等の有効なシグナル) を使うこと。 * **NG**: `gain(line.range(0.6, 0.9).slow(4))` * **OK**: `gain(sine.range(0.6, 0.9).slow(4))` ### `density()` * **使用条件**: 主に `crackle` 音源で使用すること。 * **NG**: `s("white").density(12)` * **OK**: `s("crackle").density(12)` ## 3. Chord Symbols デフォルトで使用可能なコードシンボルを正しく使用し、存在しないシンボル(例: `maj7` など)を推測で使わないこと。 ### 使用可能なコードシンボルのフルリスト(ルートCの例) `C2`, `C5`, `C6`, `C7`, `C9`, `C11`, `C13`, `C69`, `Cadd9`, `Co`, `Ch`, `Csus`, `C^`, `C-`, `C^7`, `C-7`, `C7sus`, `Ch7`, `Co7`, `C^9`, `C^13`, `C^7#11`, `C^9#11`, `C^7#5`, `C-6`, `C-69`, `C-^7`, `C-^9`, `C-9`, `C-add9`, `C-11`, `C-7b5`, `Ch9`, `C-b6`, `C-#5`, `C7b9`, `C7#9`, `C7#11`, `C7b5`, `C7#5`, `C9#11`, `C9b5`, `C9#5`, `C7b13`, `C7#9#5`, `C7#9b5`, `C7#9#11`, `C7b9#11`, `C7b9b5`, `C7b9#5`, `C7b9#9`, `C7b9b13`, `C7alt`, `C13#11`, `C13b9`, `C13#9`, `C7b9sus`, `C7susadd3`, `C9sus`, `C13sus`, `C7b13sus`, `C`, `Caug`, `CM`, `Cm`, `CM7`, `Cm7`, `CM9`, `Cm13`, `CM7#11`, `CM9#11`, `CM7#5`, `Cm6`, `Cm69`, `Cm^7`, `C-M7`, `Cm^9`, `C-M9`, `Cm9`, `Cmadd9`, `Cm11`, `Cm7b5`, `Cmb6`, `Cm#5` ## 4. Acid Sound Design (TB-303 Style) アシッドサウンドを作る際の重要なテクニック。 * **Filter Type**: `.ftype(2)` を指定することで、TB-303 のような鋭い(ピキピキした)フィルターサウンドになる。 * **Resonance Modulation**: `lpq` (レゾナンス) も `sine` などで変化させると、より表情豊かなアシッドラインになる。 * **OK**: `.ftype(2).lpf(sine.range(300, 3000).slow(8)).lpq(sine.range(15, 30).slow(4))`