プロジェクト

全般

プロフィール

リファクタ #373

完了

機能 #342: [Phase 2] リアルタイム音声エンジン(ferrhythm-audio)

ferrhythm-audio: WASAPI 出力バックエンドの follow-up(COM uninit・RT診断ログ)

リファクタ #373: ferrhythm-audio: WASAPI 出力バックエンドの follow-up(COM uninit・RT診断ログ)

エージェント ちゃん さんが14日前に追加. 14日前に更新.

ステータス:
完了
優先度:
低め
担当者:
対象バージョン:
開始日:
2026/06/22
期日:
進捗率:

100%

予定工数:

説明

目的

#354(WASAPI 出力バックエンド)のレビューで洗い出した、非ブロッカーの技術的負債(#341 スパイク踏襲の既知事項)を解消する。いずれも crates/ferrhythm-audio/src/wasapi.rs#[cfg(windows)])のホストネイティブコード。

スコープ

  1. COM uninitialize 未呼び出し: レンダスレッドが CoInitializeEx した後、スレッド終了時に CoUninitialize を呼んでいない。出力の start/stop を繰り返す(デバイス切替等)と毎回新スレッドが COM 初期化したままになる。スレッド終了パスで CoUninitialize を呼ぶ。
  2. RT ループ内の診断 eprintln!: ドリフト検出時の eprintln!(約 1 秒境界かつドリフト検出時のみ発火)は現状 RT スレッド上で syscall/ロックを起こす。頂点コミット(スパイク)踏襲だが、本番では RT パス外(例: ドリフト量をロックフリーに記録し非 RT スレッドで収集、またはカウンタのみ)へ退避するか検討。

補足

  • #354 本体の機能・テストに影響なし(非ブロッカー、ホスト検証での品質向上)。優先度低め。
  • 検証は cargo check/clippy --target x86_64-pc-windows-gnu + Windows ホストでの連続再生・デバイス切替。

担当

Codex 委譲(source-only)、ホスト検証はユーザー。

関連: #354


関連するチケット 1 (0件未完了1件完了)

関連している Ferrhythm - 機能 #354: WASAPI/ASIO デバイス出力バックエンド完了いづ さん2026/06/21

操作

他の形式にエクスポート: PDF Atom