Sonir Bench モジュール仕様
SPEC V1DSPモジュールとレート変換段の設計に必要な情報を1ファイルにまとめました。本文・JSON Schema2本・エラーコード全件・そのまま通るリファレンスの実例。読み手は人だけでなくAIも想定しています。
AIに書かせる
この仕様は人だけでなくAIが読むことを前提に書いてあります。経路は3手で、そのどこにもAIが鳴っている音に触る口はありません。
- 01
仕様を渡す。
下のURLを貼るか、ファイルを添えて渡します。1ファイルにまとめてあるので、本文・Schema・エラーコード全件・通る実例がまとめて届きます。
- 02
JSONを1つ書かせる。
モジュールはJSONファイル1つです。spec_versionを必ず名乗らせ、付録Cのリファレンスモジュールを真似させます。
- 03
アプリの欄にファイルを落とす。
「新しく作る」にファイルを受ける欄があります。保存すると再生時と同じ検証が走り、通らなければ落ちた段・コード・測定値が返ります。それをアプリからコピーして渡し直すと、AIは自分の誤りを直せます。
貼るもの
https://sonir.app/spec/sonir-bench-v1.ja.md にあるSonir Benchのモジュール仕様を読んで、DSPモジュールをJSONで1つ書いてください。spec_versionを必ず含め、付録Cのリファレンスモジュールに合わせ、Schemaに無い項目は作らないでください。- AIは音を鳴らせません。Sonir Benchを操作する口が無いので、AIの返答で聴いている音が変わることはありません。
- 書けるのはファイルです。グラフと、帯域制限を持つレート変換段の設計の両方が載っています。鳴らす操作とアプリ側の設定は入っていません。
- 鳴らすのはSonir Bench本体です。仕様だけでは音は出ません。
この文書の作り
生成物です。
本文は仕様書、JSON Schemaとエラーコードは実装、実例はテスト済みのリファレンスモジュールから組み立てています。手で書き写した部分はありません。
載っているJSONはすべて実際に通ります。
構造チェック・検証・シミュレーション・安全起動の4段階のテストを通過したものだけを掲載しています。通らない実例を載せると、それを真似した誤った実装が増えてしまうためです。
閾値や範囲は文章に書いていません。
数値はJSON Schemaが実装の定数から取得しています。文章側にも転記すると二重管理になり、必ず乖離が生じるためです。
必要な範囲のみ掲載しています。
モジュールを書く側に必要な情報に絞っています。OS別の入出力実装・内部構造・今後の予定は含めていません。