CTS Verifier 音訊資料路徑測試

Android 音訊系統可以透過各種路徑、週邊裝置和設定播放及錄製音訊訊號。在複雜的系統上手動測試基本音訊功能既緩慢又乏味。為解決這個問題,CTS Verifier 會實作數種「資料路徑」測試,自動針對大量路徑和設定驗證基本音訊功能。

音訊資料路徑測試包含三個部分:

  • 類比耳機插孔路徑 (如有)
  • 裝置上的喇叭和麥克風路徑
  • USB 音訊週邊裝置 (USB 耳機和 USB 音訊介面) 路徑

音訊資料路徑測試

圖 1. 音訊資料路徑測試清單面板。

常見元素

在測試執行前,測試面板會顯示下列項目:

  • 音訊屬性清單,以及 DUT 是否支援這些屬性。這個清單會決定可執行的資料路徑和屬性規格。舉例來說,如果裝置不支援 MMAP,則無法執行 MMAP 路徑的資料路徑或屬性。

    • 麥克風:DUT 內建麥克風。
    • 喇叭:被測試設備含有內建喇叭。
    • MMAP - 被測試裝置支援 MMAP 音訊模式。
    • MMAP Exclusive - 被測試裝置支援 MMAP Exclusive 音訊模式。
  • 精選音訊 API

    • Java API:使用 Java 音訊 API 進行播放和錄製。
    • 原生 API:使用原生音訊 API 進行播放和錄製。
  • 「Calibrate Audio」按鈕:用於叫用「Audio Loopback Calibration Panel」,在執行測試前設定信號強度

  • 測試流程按鈕:

    • Start:啟動測試序列。系統會測試任何可測試且失敗的資料路徑或設定。

    • 取消:停止目前的測試序列。

    • 清除結果:清除所有資料路徑的結果代碼。這個選項可用於在先前的測試之後執行完整的測試序列,但這可能會失敗。

  • 信號顯示面板 (示意圖)。這個面板會在測試執行期間顯示信號。如果顯示的信號沒有乾淨的高濃度正弦波,表示資料路徑有問題。

    顯示的取樣數量會因資料路徑或設定而異,因此出現不同數量的正弦波週期是正常現象。

  • 受測試的資料路徑或設定規格清單。這份清單列出可在音訊 I/O 週邊裝置上執行的可能設定,並與所選資料路徑測試相關聯。系統會在測試狀態 (「通過」、「失敗」或「未測試」) 旁邊顯示適用於 DUT 的資料路徑或設定 (以星號標示),以及連接至 DUT 的可用周邊裝置。

    在測試執行期間,規格周圍會以 >> << 表示目前的資料路徑或設定。

詳情請參閱下圖:

音訊資料路徑測試項目

圖 2. 音訊資料路徑測試面板。

音訊資料路徑類比插孔測試

音訊資料路徑類比插孔測試會透過類比耳機路徑測試基本音訊功能。如果 DUT 沒有類比耳機插孔,系統會自動授予 PASS

必要的周邊裝置

詳情請參閱「音訊迴送端插頭」一文。

下圖顯示音訊資料路徑音訊插孔測試完成前後的畫面:

音訊資料路徑類比插孔就緒

圖 3. 音訊資料路徑模擬插孔測試已準備好執行。

音訊資料路徑類比插孔完成

圖 4. 音訊資料路徑模擬插孔測試 (完成後)。

請按照下列步驟執行音訊資料路徑類比插孔測試:

  1. 將回送插頭插入 DUT 的類比耳機插孔。測試清單會更新,顯示有效的資料路徑。
  2. 使用「Audio Loopback Calibration」面板設定適當的信號強度。
  3. 按下「開始」。測試會逐一檢查每個資料路徑或設定,並測量訊號大小和抖動,以判斷資料路徑或設定是否正常運作。

    您可以監控信號顯示畫面,以視覺方式判斷信號是否正常。測試執行完畢後,系統會顯示每個資料路徑或設定的結果。

    測試序列完成後,系統會用顯示結果的面板取代訊號顯示和資料路徑或設定清單。失敗測試的部分失敗 (例如幅度或抖動) 會以紅色文字顯示,並顯示未達門檻或未符合要求的項目。

  4. 視情況點選「PASS」或「FAIL」

音訊資料路徑揚聲器和麥克風測試

音訊資料路徑的揚聲器和麥克風測試會透過裝置端的揚聲器和麥克風路徑,測試基本音訊功能。

必要周邊裝置

這項測試不需要外部周邊裝置。

下圖顯示音訊資料路徑講者和麥克風測試的畫面,包括在結束前後。錯誤會以紅色標示:

音訊資料路徑:喇叭麥克風就緒

圖 5. 音訊資料路徑喇叭和麥克風測試已可執行。

音訊資料路徑喇叭麥克風已完成

圖 6. 完成後的音訊資料路徑揚聲器和麥克風測試。

如要執行音訊資料路徑的喇叭和麥克風測試,請按照下列步驟操作:

  1. 在安靜的環境中,將 DUT 平放在桌上。測試期間產生的噪音可能會干擾系統對擷取的音訊進行分析。
  2. 使用「Audio Loopback Calibration」面板設定適當的信號強度。
  3. 按下「開始」。測試步驟會透過每個資料路徑或設定來測量訊號大小和抖動,以判斷資料路徑或設定是否正常運作。

    您可以監控信號顯示畫面,以視覺方式判斷信號是否正常。測試會在測試序列進行時,顯示每個資料路徑或設定的結果。

    測試序列完成後,信號顯示和資料路徑或設定清單會替換成顯示結果的面板。失敗測試的部分失敗 (例如幅度或抖動) 會以紅色文字顯示,並顯示未達門檻或未符合要求的項目。

  4. 視情況點選「PASS」或「FAIL」

音訊資料路徑 USB 測試

音訊資料路徑 USB 測試會透過 USB 音訊周邊 (USB 耳機和 USB 音訊介面) 路徑測試基本音訊功能。

必要周邊裝置

詳情請參閱「USB 音訊介面」。

下圖顯示音訊資料路徑 USB 測試完成前後的畫面:

音訊資料路徑 USB 就緒

圖 7. 音訊資料路徑 USB 測試已準備就緒。

音訊資料路徑 USB 完成

圖 8. 完成後的音訊資料路徑 USB 測試。

如何執行音訊資料路徑 USB 測試:

  1. USB 音訊周邊裝置連接至 DUT。測試序列必須分別針對下列各個情況執行:

    • 插入環回插頭的 USB 轉類耳機轉接器
    • 使用跳線連接線將輸出端和輸入端連接的 USB 音訊介面
  2. 使用「Audio Loopback Calibration」面板設定適當的信號強度。

  3. 按下「開始」。每個資料路徑或設定測量訊號規模和時基誤差的測試步驟,以判斷資料路徑或設定是否正常運作。

    您可以監控信號顯示畫面,以視覺方式判斷信號是否正常。測試會在測試序列進行時,顯示每個資料路徑或設定的結果。

    測試序列完成後,系統會用顯示結果的面板取代訊號顯示和資料路徑或設定清單。失敗測試的部分失敗 (例如幅度或抖動) 會以紅色文字顯示,並顯示未達門檻或未符合要求的項目。

  4. 針對未測試的 USB 外接裝置重複執行步驟 1 至 3。

  5. 視情況點選「PASS」或「FAIL」

解讀測試結果

對於每個設定,系統會在輸出端產生正弦波,並擷取輸入內容。這項測試會嘗試在輸入內容中偵測與產生音調相同頻率的正弦波。

對於每項設定,系統會顯示幅度抖動測量值,定義如下:

  • 幅度:輸入正弦波的幅度 (或等級) 會以類似於快速傅立葉轉換 (FFT) 的方式進行分析。如果強度太低,可能表示信號遭到阻斷,或是特定管道無法運作。這也可能是輸出音量或輸入增益過低的情況。等級必須達到特定等級才能通過。

  • 抖動:擷取的正弦波相位也相對於產生的訊號進行測量。相對相位保持不變,表示擷取的信號與產生的信號相符。如果相對相位發生變化,則產生的訊號會遭到破壞,或是擷取到雜訊等其他訊號。相對相位中的變化稱為「抖動」

如果輸入內容只擷取到噪音,那麼幅度可能會很高,因為噪音可能包含所有正弦波頻率。在這種情況下,分析器無法鎖定產生的正弦波,因此會出現高抖動。

下表解釋了不同大小和抖動測量值組合的結果:

規模 時基誤差 結果 解釋
PASS 擷取輸出正弦波的乾淨版本。
失敗 擷取到很大聲的噪音或非常不穩定的信號。
失敗 清晰訊號的錄製音量太低。
失敗 擷取的訊號很安靜,但已損毀或雜訊過多。

如果 CTS 驗證工具測試失敗,請在最新版本的 OboeTester 中執行資料路徑測試。OboeTester 工具會列印詳細報告,並協助您偵錯問題。