View on GitHub

cat-plugin-player

cat-plugin-player

ADR 0001: 波形の変化を見せるため、表示の横位置を追跡する

何の話か

オシロスコープでは、今鳴っている音の波形を違和感なく見たい。 音色による形の変化を観察する際、同じような波形の横移動やnote切替時のジャンプが邪魔になる。 形が変わることと、時間軸の平行移動で合うことは区別する。

保存WAVの連続4周期をHTMLで表示し、人間が確認した。 同じnote内の表示は良好で、次noteを横移動すると切替時のジャンプ感が減った。 正側の山頂を目印にした境界合わせと500msの追従を経て、Rust GUIでも合格した。

決定

見送ったもの

案 理由
最初の波形の形への固定 自然な音色変化まで取り除こうとする。今回の目的は横位置の安定
前回や複数履歴との相関探索 調査用の試作。人間が合格した連続窓・山頂追跡方式を採用
ドリフトの0ms追従 userは0msと500ms両方の利点を確認し、まず500msを選択
手動縦倍率 userは従来のnormalizeだけを希望。固定×4と倍率操作を削除

制約

検証と再発時の入口

撤去前の保存WAVの600窓で、GUI共通処理の元sampleはbit一致し、HTML500msとの補正量の差は 最大2.22e-16周期だった。これに加えてuserの実GUI確認を採否の根拠とした。

回帰テストはscope_boundary_tests.rs、scope_drift_tests.rs、scope_stream_tests.rsと 音声取り込み・worker・normalizeのテストに残す。 再発時は同note中かnote境界か、形の変化か横移動かを分け、山頂の高さ逆転、目印不足、 sample欠落、参照チャンネル切替を確認する。描画の滑らかさは実GUIで測定して判断する。