跳到主要內容

麥克風

即時音訊輸入監測,配合實時波形視覺化、音量計量及詳細音訊引擎診斷。

麥克風控制面板,包括錄音按鈕、現用裝置資訊、輸入裝置選擇器,以及音量等級面板開端。
即時音訊波形狀態列、音量分析圖配合時間範圍選擇器,以及技術細節面板。

概覽

麥克風工具可以將你嘅裝置變成即時音訊監測器。佢會用 Apple 嘅 AVAudioEngine,從所選輸入裝置擷取音訊,實時處理 PCM 緩衝區,並透過多個視覺化面板展示結果:圓形振幅儀表、原始音訊波形、滾動音量歷史圖,以及全面技術細節儀表板。你可以隨時切換所有可用音訊輸入裝置——包括內置麥克風、藍牙耳機(包括經 HFP 連接嘅 AirPods)、有線耳機麥克風、USB 音訊介面、CarPlay 同 AirPlay——無需離開工具。

當你打開工具並已授權麥克風權限時,監測會自動開始。當你離開工具或應用程式進入背景時,音訊擷取會自動停止,確保唔會有殘留麥克風使用。

目錄


畫面標題列

畫面頂部會顯示:

  • 麥克風監測 標題。
  • 錄音狀態指示器——一個有標籤嘅彩色圓點:
    • 啟動中(綠色)——音訊引擎運作中並擷取音訊。
    • 未啟動(灰色)——監測已停止。
  • 裝置數量——目前可用音訊輸入裝置數目(例如「1 個裝置」)。

麥克風控制面板

麥克風控制面板係畫面上第一張卡片。其標題會顯示 錄音中待命 標籤,錄音時會有閃爍紅點。

錄音按鈕

面板中央有一個大型圓形按鈕:

  • 咪高峰圖示(藍色)——點擊開始監測。音訊引擎啟動,波形數據開始流動,所有視覺化面板會啟動。
  • 停止圖示(紅色)——點擊停止監測。音訊引擎會關閉,視覺化畫面會凍結。

按鈕下方會顯示標籤,根據當前狀態顯示 點擊錄音點擊停止

裝置資訊區塊

錄音按鈕下方,面板會顯示目前啟用音訊輸入裝置嘅資訊:

  • 裝置——現用輸入裝置名稱(例如「內置麥克風」、「AirPods Pro」,或無偵測到時顯示「無麥克風」)。

  • 三個狀態卡片以網格方式排列:

    卡片說明
    狀態啟動中(綠色)或未啟動(紅色)。
    類型裝置類別:內置、耳機、藍牙、USB 音訊、CarPlay、AirPlay 或外置。
    品質當取樣率為 48 kHz 或以上時顯示高品質,否則為標準。
  • 網格下方有兩張技術規格卡片

    卡片說明
    取樣率現用音訊工作階段取樣率(例如「48.0 kHz」)。
    聲道數裝置支援嘅最大輸入聲道數。

音訊輸入裝置選擇器

裝置選擇面板會列出所有可用音訊輸入裝置,並讓你切換。

  • 內置麥克風——永遠排第一,副標題為「內置裝置麥克風」。當無外置裝置連接時預設選用。
  • 外置裝置——排在內置麥克風之下,每個顯示:
    • 裝置名稱(例如「AirPods Pro」、「USB 麥克風」)。

    • 副標題描述連接類型:

      連接埠類型副標題
      藍牙 A2DPBluetooth A2DP
      藍牙 HFPBluetooth Hands-Free
      藍牙 LEBluetooth LE
      耳機耳機
      耳機咪高峰耳機麥克風
      USB 音訊USB 音訊
      其他外置裝置

每個裝置列都有單選按鈕指示器(選中時填滿)及現用裝置會有剔號圖示。點擊其他裝置會切換音訊輸入。音訊引擎重新設定期間,畫面會短暫顯示載入指示。

當裝置連接或斷開(例如插入 AirPods)時,列表會自動更新。工具會根據優先次序自動選擇最佳裝置:藍牙 HFP 優先,其次耳機麥克風,再其次內置麥克風。


音量等級面板

音量等級面板提供目前音訊振幅嘅詳細即時視圖。

圓形振幅儀表

面板中央有一個圓形儀表,根據目前振幅(0–100%)比例填色。弧線由綠(低)漸變至黃、橙、紅(高)。儀表中央會以大字顯示目前振幅百分比。

音量條

儀表下方有一條橫向音量條,根據目前振幅由左至右填色。音量條同樣用綠至紅漸變,並標示 0%、25%、50%、75%、100%。

音量指標

四個指標卡片以 2x2 網格排列:

指標說明
目前即時振幅百分比,按等級顏色標示(綠 < 30%、黃 < 60%、橙 < 85%、紅 >= 85%)。
峰值目前波形歷史緩衝區內最高振幅值。
RMS由波形歷史計算嘅均方根等級,代表平均訊號能量。
dBFS目前振幅以全幅度分貝表示,計算方式為 20 × log10(振幅)。數值約由 -80 dB(靜音)至 0 dB(全幅度)。

音量狀態列

面板底部有一條狀態列,顯示:

  • 訊號質素——當 dBFS 高於 -20 dB 時顯示「強訊號」(綠色),否則為「中等訊號」(橙色)。
  • 削波警告——當振幅超過 95% 時,會顯示紅色「削波」標籤及警告圖示,提示音訊訊號可能失真。

即時音訊波形面板

即時音訊波形面板會以示波器風格實時顯示原始 PCM 音訊數據。

波形視覺化

主要區域會以滾動方式繪製波形,來自原始音訊緩衝區樣本(每幀最多 1024 個樣本)。波形以青色繪於深色背景,配有專業網格:

  • 網格——垂直及水平參考線,方便對齊。
  • 中心線——虛線青色,標示零交點。
  • dB 刻度標記——左側標示 +0 dB、-20 dB、-40 dB、-60 dB、-∞。
  • 發光效果——波形背後有細緻放射狀發光,訊號愈強愈明顯。
  • 倒影——中心線下方有淡淡波形鏡像,增添層次感。

面板標題會顯示 即時 指示器,配合閃爍綠點及目前樣本數(例如「1024 個樣本」)。

訊號等級指示器

波形區右側有一條垂直 10 格 LED 風格計量條,根據訊號強度亮起。格數按顏色區分:綠(低)、黃(中)、橙(高)、紅(極高)。

波形狀態列

面板底部顯示:

  • 訊號——RMS 訊號強度百分比,按顏色標示(灰 < 20%、綠 < 50%、橙 < 80%、紅 >= 80%)。
  • 峰值——目前原始緩衝區內最高樣本值。
  • 取樣率及位元深度——右側顯示(例如「48kHz 24-bit」)。

音量分析面板

音量分析面板會以滾動歷史圖顯示音訊振幅隨時間變化,類似傳統音量計。

時間範圍選擇器

面板標題有分段控制器,可選擇圖表顯示嘅時間範圍:

範圍樣本數
1 秒50
5 秒250
10 秒500

音量圖表

主要區域會繪製填色波形圖,顯示振幅歷史(滾動緩衝區最多 60 個數據點)。圖表根據振幅用綠至紅漸變填色,配合細緻發光及下方鏡像。

參考線包括:

  • 詳細網格,每 50% 有主線,每 10% 有次線。
  • 25%、50%、75% 振幅有虛線參考線,按等級顏色標示。
  • 左側有百分比刻度(0%–100%)。
  • 底部有時間刻度,顯示樣本範圍。

VU 計量條

圖表右側有一條垂直 20 格 VU 計量條,根據目前振幅由下至上填色。格數按顏色區分:綠(0–50%)、黃(50–75%)、橙(75–90%)、紅(90–100%)。

統計列

面板底部會並排顯示四個統計數據:

統計說明
最小值目前波形歷史內最小振幅(藍色)。
最大值目前歷史內最大振幅(紅色)。
平均值歷史緩衝區內振幅平均值(黃色)。
目前最新振幅值,按等級顏色標示。

技術細節面板

技術細節面板係一個全面儀表板,展示音訊引擎、音訊工作階段及硬件設定嘅完整狀態。監測啟動時,所有數值每 0.5 秒更新一次。

效能指標

指標說明
取樣率現用音訊工作階段取樣率(例如「48.0 kHz」)。
緩衝區大小音訊引擎緩衝區大小(以 frame 計,例如 1024)。
輸入延遲音訊工作階段回報嘅輸入延遲(毫秒)。超過 10 ms 會特別標示。
I/O 緩衝區I/O 緩衝區時長(毫秒)。

音訊等級

指標說明
峰值等級峰值振幅百分比。偵測到削波(超過 95%)時會紅色標示。
RMS 等級均方根振幅百分比。
dBFS全幅度分貝。高於 -20 dB 時會黃色標示。
訊號質素根據訊噪比(SNR)判斷:優良(SNR > 40 dB)、良好(SNR > 20 dB)、一般(SNR > 10 dB)、或差。

裝置設定

指標說明
現用路由目前啟用音訊輸入裝置名稱。
輸入聲道可用最大輸入聲道數。
指向性模式輸入數據來源偏好指向性(例如全向)。

工作階段狀態

指標說明
引擎狀態運作中(綠色)或已停止(紅色)。
類別現用 AVAudioSession 類別(例如 PlayAndRecord)。
模式現用音訊工作階段模式(例如 VoiceChat)。
選項現用類別選項(例如「BT • 混音」)。

路由變更

偵測到音訊路由變更時,此區塊會顯示:

指標說明
上次變更最近一次路由變更嘅時間戳。
原因變更原因:新裝置可用、裝置斷開、類別變更、路由覆蓋、喚醒、無合適路由、設定變更或未知。

系統資訊

指標說明
時間戳目前系統時間。
樣本數目前原始波形緩衝區內樣本數。
運作時間系統運作時間(秒)。

額外效能

指標說明
輸出延遲音訊工作階段回報嘅輸出延遲(毫秒)。
偏好取樣率工具要求嘅偏好取樣率。
偏好緩衝區工具要求嘅偏好 I/O 緩衝區時長(毫秒)。
偏好聲道數偏好輸入聲道數。

引擎細節

指標說明
輸入格式音訊引擎輸入節點嘅完整 AVAudioFormat 描述(取樣率、聲道、位元深度、交錯)。
輸出格式音訊引擎輸出節點嘅完整 AVAudioFormat 描述。
節點數音訊引擎已連接節點數。
最大 frame 數手動渲染模式下最大 frame 數(只於手動渲染模式顯示)。

品質指標

指標說明
平均等級波形歷史緩衝區內振幅平均值。
動態範圍峰值 dBFS 與噪音底線(-60 dB 參考)之差,單位 dB。
噪音底線RMS 等級以 dBFS 表示,代表背景噪音水平。
削波峰值振幅超過 95% 時顯示「是」(紅色高亮),否則為「否」(綠色)。

工作階段狀態細節

指標說明
工作階段啟動若有其他音訊播放則顯示「背景音訊」,否則為「啟動中」。
音訊提示系統建議靜音次要音訊時顯示「應靜音」,否則為「可混音」。

硬件細節

指標說明
最大輸出聲道支援嘅最大輸出聲道數。
輸入可用是否有音訊輸入硬件可用。
輸入增益目前輸入增益值(如可設定),否則顯示 N/A。
輸入數據來源現用輸入數據來源名稱(例如「底部」、「前方」、「後方」)。
系統音量目前系統輸出音量(0.00–1.00)。

工作階段格式資訊

現用輸入數據來源嘅原始描述,提供完整系統層級細節字串。


私隱聲明

畫面底部會有私隱聲明及盾牌圖示,說明所有音訊數據都唔會儲存、錄音或傳送——所有處理都係即時於本機裝置進行。


權限

  • 麥克風權限——所有功能都必須授權。首次初始化音訊引擎時,系統會自動彈出權限提示。
  • 如權限尚未決定,Lirum 會顯示權限畫面,並有 授權存取 按鈕觸發系統提示。
  • 如權限曾被拒絕,Lirum 會顯示 打開設定 按鈕,導向 iOS 設定應用程式,讓用戶重新啟用麥克風存取。

技術細節

  • 工具使用 AVAudioEngine,於 bus 0 安裝輸入 tap 擷取 PCM 音訊緩衝區。緩衝區大小為 1024 frame
  • 音訊工作階段設定為 .playAndRecord 類別及 .voiceChat 模式,並啟用 .allowBluetooth.mixWithOthers 選項。確保藍牙 HFP 裝置(如 AirPods)可被偵測為輸入來源。
  • 偏好 I/O 緩衝區時長設為 5 ms,以提升視覺化反應速度。
  • 非藍牙裝置會要求偏好取樣率 48 kHz。藍牙 HFP 裝置則交由系統決定,避免格式衝突。
  • RMS 振幅 由 PCM 緩衝區計算,公式為:sqrt(sum(sample^2) / count),再乘以 5 並限制於 [0, 1]。
  • dBFS(全幅度分貝)計算方式為 20 * log10(振幅)
  • 原始波形更新會限制至 每秒 60 幀,避免 UI 過度更新。
  • 波形歷史緩衝區最多儲存 60 個數據點,每次顯示連結幀從振幅緩衝區處理。
  • CADisplayLink 以最高 120 fps 運行,通過平均幀間收集嘅振幅樣本推動波形歷史更新。
  • 音訊引擎細節每 0.5 秒 透過計時器輪詢。
  • 切換輸入裝置時,音訊引擎會完全關閉並以新音訊工作階段重建,確保使用正確格式。過渡期間會顯示載入覆蓋層(最少顯示 300 ms,UX 流暢,2 秒超時備用)。
  • 藍牙格式處理——對於藍牙裝置,tap 會以 nil 格式安裝,讓系統自動選擇合適格式,避免 HFP 裝置出現無效格式錯誤。
  • 音訊路由變更 透過 AVAudioSession.routeChangeNotification 監察。新裝置出現或現有裝置移除時,工具會自動更新裝置列表,如錄音中則以最佳裝置重啟。路由變更會限制(最少 300 ms 間隔)以防止重啟循環。
  • 裝置自動選擇優先次序:藍牙 HFP、耳機麥克風、內置麥克風。
  • 工具消失或應用程式進入背景時,音訊引擎會停止,音訊工作階段會完全停用(切換至 .ambient 類別並以 .notifyOthersOnDeactivation 停用),釋放麥克風,讓其他應用程式可恢復音訊播放。

注意事項與限制

  • 工具只會監測即時音訊輸入等級,唔會錄音、儲存或傳送任何音訊數據。
  • 切換輸入裝置時,Lirum 會短暫顯示載入指示,音訊引擎重新設定通常少於一秒。
  • 藍牙耳機及 USB 麥克風回報嘅增益及取樣率可能與內置麥克風不同。
  • 藍牙 HFP 裝置(如 AirPods)因 Hands-Free Profile 限制,取樣率可能較低(如 16 kHz 或 8 kHz)。
  • 削波指示器會於振幅超過全幅度 95% 時觸發。持續削波可能代表輸入增益過高或聲源太近麥克風。
  • 當應用程式進入背景或最小化時,音訊監測會自動停止,確保唔會有殘留麥克風存取。