Android 互換性テストスイート(CTS)には、Android 11 以降を搭載したデバイス用のメディア パフォーマンス クラスのテストが含まれています。Android 13 を搭載したデバイスと Android 11 または Android 12 を搭載したデバイスではテストプロセスが異なるため、デバイスに搭載されている Android のバージョンに応じた手順を実施してください。
テストをダウンロードする
以下のテストをダウンロードします。
CTS テスト。Android 11 以降のテストをダウンロードするには、互換性テストスイートのダウンロードをご覧ください。
メディアテスト。CL の一覧については、AOSP をご覧ください。
ハードウェア テスト。
Android 14 以降のデバイスをテストする
パフォーマンス クラス 14(PC14)動画エンコード品質(VEQ)テストを実行する
Android 14 では、パフォーマンス クラス 14(PC14)デバイス向けの動画エンコード品質(VEQ)要件が導入されています。PC14-VEQ 要件は、基本的に PC14 デバイスの HW 動画エンコーダに対して、測定可能な方法でベースライン品質目標要件を定義します。
その目標は、パフォーマンス クラス 14 にクラスタ化された各 Android デバイスが、高品質の動画コンテンツを作成することにより、エンドユーザーにプレミアムなメディア エクスペリエンスを提供できるようにすることです。
PC14-VEQ 要件は、CtsVideoEncodingQualityHostTest
という新しい CTS テストで検証されます。
この CTS テストでは、構成 JSON ファイルが定義する一連のエンコード テストケースを実行します。各テストケースでは、JSON ファイルのエンコーダ設定を使用してビットストリームをエンコードすることで、テスト対象のエンコーダのレート歪み(RD)曲線が生成されます。参照レート歪み(RD)曲線は、同じ JSON ファイルに含まれています。Video Multimethod Assessment Fusion(VMAF)vmaf_v0.6.1.json
は、歪み(つまり品質低下)の計算に使用されます。
テストケースは、BDRATE-VMAF の結果が 0 以下の場合のみ合格です。
PC14-VEQ CTS テストは、以下を含むエンコード構成に対応しています。
- AVC と HEVC HW エンコーダ
- VBR レート コントロール モード
- P フレーム / B フレーム エンコード
- 1,920 x 1,080 p、30 fps(横向き)または 1,080 x 1,920 p、30 fps(縦向き)
Android 13 以降のデバイスをテストする
テストを開始する前に、テスト用のデバイスを準備します。
_ro.odm.build.media_performance_class
システム プロパティ値を33
に設定して、メディア パフォーマンス クラス 13(PC13)をアドバタイズするようにデバイスをセットアップします。デバイスのシステム イメージが Android 13 以降であることを確認します。メディア CTS テストは Android 11 以降のシステム イメージでも実行できますが、カメラ CTS テストには PC13 用の Android 13 の機能が必要です。
カメラ 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 要件のうち、メディア パフォーマンス クラスの要件(CDD セクション 2.2.7.1)とカメラの要件(CDD セクション 2.2.7.2)を検証します。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 テストは、MediaDrm の要件(CDD セクション 2.2.7.1)を検証します。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 を搭載したデバイスをテストするには、最初にテストデバイスをセットアップしてから、CTS テストと CTS 検証ツールテストを実行します(セットアップの方法は Android バージョンに応じて、また userdebug デバイスか user デバイスかによって異なります)。
メディア パフォーマンス クラスをアドバタイズする
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 の userdebug デバイス:
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
システム プロパティは、再起動ごとに一度だけ設定できます(ただし、初めて設定する前にデバイスを再起動する必要はありません)。
user デバイス
Android userdebug デバイスをセットアップするには、目的のパフォーマンス クラス値を指定した ro.odm.build.media_performance_class
プロパティを product.prop
ファイルに追加します。以下に例を示します。
ro.odm.build.media_performance_class=31 // use 30 for PC11
Android 11 を搭載した user デバイスの場合は、次の追加手順を実施します。
[1627181] メディア パフォーマンス クラスのプロパティを sepolicy に追加するパッチをチェリーピックします。
次のコマンドを実行します。
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