聲音留在本機還是上傳伺服器:四個真實產品的選擇

「需要麥克風權限」與「需要上傳錄音」是兩回事。本機處理更具隱私性、延遲也較低,卻不一定能負擔所有任務;伺服器端能力較統一,也必須承擔更明確的資料責任。

先問任務需要什麼,而不是先選技術

即時音高回饋需要在數十到數百毫秒內更新畫面,而原始聲音本身沒有長期保存價值;完整聲音報告則需要統一解碼與更複雜的特徵彙整,裝置差異可能讓純瀏覽器計算難以維持一致。選擇處理位置時,應同時回答延遲、運算量、一致性、故障恢復與資料最小化這五個問題。

CVoice 系列的四種實際路徑

應用程式處理位置為什麼這樣選
FrostNote瀏覽器本機偵測音高需要即時軌跡;伺服器端不需要原始錄音與逐幀資料
MelodyCanvas瀏覽器本機合成與排程輸入是畫線而不是麥克風,播放應立即回應編輯
CVoice上傳後由伺服器端分析統一處理多種檔案格式,並產生完整的聲音印象報告
CVoice Insight伺服器端排隊分析處理鏈路較長,需要任務恢復與一致的報告產生

「本機」不會自動等於安全,「伺服器端」也不會自動等於濫用。真正的差異在於,是否只收集完成任務所必需的資料,以及頁面有沒有誠實說明資料生命週期。

上傳之後,責任才剛開始

伺服器端路徑至少需要處理傳輸加密、暫存檔命名、存取隔離、成功與失敗後清理、異常中斷恢復,以及最長保留時間。CVoice 的原始錄音只用於當次分析,並在完成或失敗後刪除;Insight 為了排隊與異常恢復會保留任務狀態,意外遺留的原始檔案則設有最長清理邊界。產生的結構化結果與原始聲音也必須分開說明,不能只用一句「保護隱私」含糊帶過。

本機路徑同樣需要在不用時停止麥克風軌、釋放記憶體中的錄音,並避免把裝置特徵用於無關的識別。FrostNote 的匿名統計只包含卡片、時長、精度區段與去重資訊,不包含原始錄音、聲紋或逐幀音高。

使用者如何判斷一個聲音網站是否透明

  1. 麥克風是在進入頁面時自動要求權限,還是在明確操作後才要求?
  2. 聲音只在瀏覽器處理,還是會傳送到伺服器?
  3. 原始錄音、分析結果與匿名統計各自會保留多久?
  4. 失敗、關閉頁面或伺服器重新啟動時,資料會如何清理?
  5. 結果是否會公開播放、進入排行榜,或提供給第三方?
我們的原則功能可以複雜,但資料說明必須簡單。若無法用一般人能理解的語言說明一項資料為什麼需要、會保存多久,就應重新考慮是否真的需要收集。