技術を先に選ばず、まずタスクに必要なものを考える
リアルタイムのピッチフィードバックは数十〜数百ミリ秒以内に画面を更新する必要があり、元音声自体には長期保存の価値がありません。一方、完全な音声レポートには統一したデコードとより複雑な特徴集約が必要で、デバイス差によってブラウザだけの計算では一貫性を保ちにくい場合があります。処理場所を選ぶ際には、遅延、計算量、一貫性、障害復旧、データ最小化の5点を同時に考える必要があります。
CVoiceファミリーの4つの実際の経路
| アプリ | 処理場所 | この方式を選ぶ理由 |
|---|---|---|
| FrostNote | ブラウザ内のローカルピッチ検出 | リアルタイム軌跡が必要で、サーバー側には元録音やフレームごとのデータは不要 |
| MelodyCanvas | ブラウザ内のローカル合成とスケジューリング | 入力はマイクではなく描画線で、編集に対して再生が即座に反応する必要がある |
| CVoice | アップロード後のサーバー側分析 | 複数のファイル形式を統一処理し、完全な声の印象レポートを生成 |
| CVoice Insight | サーバー側のキュー分析 | 処理チェーンが長く、タスク復元と一貫したレポート生成が必要 |
「ローカル」だから自動的に安全なわけではなく、「サーバー側」だから自動的に乱用でもありません。本当の違いは、タスクに必要なデータだけを収集しているか、ページがデータのライフサイクルを正直に説明しているかです。
アップロード後こそ責任が始まる
サーバー側の経路では少なくとも、転送暗号化、一時ファイル名、アクセス分離、成功・失敗時の削除、異常中断からの復旧、最長保持期間を扱う必要があります。CVoiceの元録音は今回の分析だけに使い、完了または失敗後に削除します。Insightはキュー処理や異常復旧のためタスク状態を保持し、想定外に残った元ファイルには最長のクリーンアップ期限を設けています。生成された構造化結果と元音声も分けて説明する必要があり、「プライバシーを保護します」の一言だけで済ませることはできません。
ローカル経路でも、使っていないマイクトラックを停止し、メモリ内の録音を解放し、デバイス特性を無関係な識別に使わない配慮が必要です。FrostNoteの匿名統計に含まれるのはカード、時間、精度区分、重複排除情報だけで、元録音、声紋、フレームごとのピッチは含みません。
音声サイトの透明性をユーザーが判断する方法
- ページに入った時点でマイク権限を自動要求するのか、明示的な操作後に要求するのか?
- 音声はブラウザ内だけで処理されるのか、それともサーバーへ送信されるのか?
- 元録音、分析結果、匿名統計はそれぞれどれくらい保持されるか?
- 失敗、ページ終了、サーバー再起動時にデータはどう削除されるか?
- 結果は公開再生、ランキング掲載、第三者提供の対象になるか?