Sonir Bench モジュール仕様

SPEC V1

DSPモジュールとレート変換段の設計に必要な情報を1ファイルにまとめました。本文・JSON Schema2本・エラーコード全件・そのまま通るリファレンスの実例。読み手は人だけでなくAIも想定しています。

AIに書かせる

この仕様は人だけでなくAIが読むことを前提に書いてあります。経路は3手で、そのどこにもAIが鳴っている音に触る口はありません。

  1. 01

    仕様を渡す。

    下のURLを貼るか、ファイルを添えて渡します。1ファイルにまとめてあるので、本文・Schema・エラーコード全件・通る実例がまとめて届きます。

  2. 02

    JSONを1つ書かせる。

    モジュールはJSONファイル1つです。spec_versionを必ず名乗らせ、付録Cのリファレンスモジュールを真似させます。

  3. 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別の入出力実装・内部構造・今後の予定は含めていません。