執行媒體效能類別測試

Android 相容性測試套件 (CTS) 包含適用於搭載 Android 11 以上版本裝置的媒體效能等級測試。由於搭載 Android 13 的裝置與搭載 Android 11 或 Android 12 的裝置,測試程序有所不同,請務必按照裝置搭載的 Android 版本操作。

下載測試

下載下列測試:

測試 Android 14 以上版本裝置

執行效能等級 14 (PC14) 視訊編碼品質 (VEQ) 測試

Android 14 為效能類別 14 (PC14) 裝置導入視訊編碼品質 (VEQ) 要求。PC14-VEQ 需求基本上是以可測量的方式,為 PC14 裝置上的硬體視訊編碼器定義基準品質目標需求。

目標是確保每個歸類為效能等級 14 的 Android 裝置,都能透過建立高品質影片內容,為使用者提供優質媒體體驗。

PC14-VEQ 要求會透過名為 CtsVideoEncodingQualityHostTest 的新 CTS 測試進行驗證。

這項 CTS 測試會執行設定 JSON 檔案定義的一組編碼測試案例。針對每個測試案例,系統會使用 JSON 檔案中的編碼器設定,編碼位元串,產生受測編碼器的率失真 (RD) 曲線。參考率失真曲線會包含在同一個 JSON 檔案中。系統會使用影片多方法評估融合 (VMAF) vmaf_v0.6.1.json 計算失真 (即品質損失)。

只有當測試案例的 BDRATE-VMAF 結果小於或等於零時,該案例才能通過測試。

PC14-VEQ CTS 測試涵蓋編碼設定,包括:

  • AVC 和 HEVC 硬體編碼器
  • VBR 速率控制模式
  • P 影格/B 影格編碼
  • 1920x1080p30fps (橫向) 或 1080x1920p30fps (直向)

測試 Android 13 以上版本裝置

開始測試前,請先準備測試裝置:

  1. _ro.odm.build.media_performance_class 系統屬性值設為 33,即可將裝置設為宣傳媒體效能等級 13 (PC13)。

  2. 確認裝置系統映像檔為 Android 13 以上版本。雖然您可以在 Android 11 以上版本的系統映像檔上執行媒體 CTS 測試,但相機 CTS 測試需要 Android 13 功能才能進行 PC13。

執行攝影機 ITS 測試

如要只執行攝影機 ITS 測試,請先在 config.yml 中設定裝置和平板電腦的序號,然後執行下列指令:

python tools/run_all_tests.py camera=[PRIMARY_REAR_CAMERA_ID] scenes=2_c
python tools/run_all_tests.py camera=[PRIMARY_FRONT_CAMERA_ID] scenes=2_c

執行媒體成效類別測試

cts-media-performance-class 測試計畫會驗證媒體效能類別要求 (CDD 第 2.2.7.1 節) 和相機要求 (CDD 第 2.2.7.2 節) 的 CDD 要求。使用下列指令執行 cts-media-performance-class測試計畫:

cts-tradefed run cts-media-performance-class

如要只執行攝影機 CTS 測試,請使用下列指令:

cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristics

如要只執行媒體 CTS 測試,請使用下列指令:

cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases

執行 MediaDrm CTS 測試

MediaDrm CTS 測試會驗證 CDD 2.2.7.1 節中的 MediaDrm 要求。使用下列指令執行 MediaDrm CTS 測試:

cts-tradefed run singleCommand cts --disable-reboot -c android.mediapc.cts.PerformanceClassTest -m testSecureHwDecodeSupport
cts-tradefed run singleCommand cts --disable-reboot -c android.mediapc.cts.PerformanceClassTest -m testMediaDrmSecurityLevelHwSecureAll

執行檔案系統 CTS 測試

檔案系統 CTS 測試會驗證 CDD 2.2.7.4 節的效能要求。

  • 如要測試循序讀取和寫入需求,請使用下列指令:

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
  • 如要測試隨機讀取和寫入需求,請使用下列指令:

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.RandomRWTest

測試 Android 11 或 12 裝置

如要測試搭載 Android 11 或 12 的裝置,請先設定測試裝置 (Android 版本和使用者偵錯與使用者裝置之間的設定有所不同),然後執行 CTS 和 CTS 驗證器測試。

宣傳媒體成效課程

請按照下列步驟設定測試裝置,使用 ro.odm.build.media_performance_class 系統屬性宣傳正確的效能等級:

  • 如為效能類別 12 (PC12),請將屬性的值設為 31

  • 如為效能類別 11 (PC11),請將屬性的值設為 30

Userdebug 裝置

如要設定 Android userdebug 裝置,請執行下列指令:

  • Android 12 userdebug 裝置:

    adb root
    adb shell setprop ro.odm.build.media_performance_class 31   // use 30 for PC11
    adb shell stop && sleep 1 && adb shell start
    adb shell pkill -f camera
  • Android 11 使用者偵錯裝置:

    adb root
    adb shell setenforce 0
    adb shell setprop ro.odm.build.media_performance_class 31   // use 30 for PC11
    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0

您只能在每次重新啟動後設定一次 ro.odm.build.media_performance_class 系統屬性 (但首次設定時不需要重新啟動裝置)。

使用者裝置

如要設定 Android userdebug 裝置,請將 ro.odm.build.media_performance_class 屬性連同所需效能類別值新增至 product.prop 檔案。範例如下所示:

ro.odm.build.media_performance_class=31   // use 30 for PC11

如果使用者裝置搭載 Android 11,請額外執行下列步驟:

  1. Cherrypick [1627181] Add media performance class property to sepolicy patch。

  2. 執行下列指令:

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0

執行 CTS 和 ITS 測試

套用下載的修補程式,建構 CTS 和 CTS 驗證器,然後為測試裝置執行適當的 Android 版本 (Android 11 裝置的 Android 11 CTS,Android 12 裝置的 Android 12 CTS)。

媒體

使用下列指令執行媒體 CTS 測試:

cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases

相機

使用下列指令執行攝影機 CTS 測試:

cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristics
python tools/run_all_tests.py device=DEVICE camera=PRIMARY_CAMERA_ID chart=CHART_ID scenes=2_c

如為搭載 Android 12 的裝置,請執行下列指令:

cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraApi31TestCases

硬體

使用下列指令執行硬體 CTS 測試:

cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.RandomRWTest
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest