Tests der Medienleistungsklasse ausführen

Die Android Compatibility Test Suite (CTS) umfasst Tests der Medienleistungsklasse für Geräte mit Android 11 oder höher. Der Testvorgang unterscheidet sich zwischen Geräten mit Android 13 und Geräten mit Android 11 oder Android 12. Befolge deshalb unbedingt die Anleitung für die jeweilige Android-Version auf deinen Geräten.

Tests herunterladen

Laden Sie die folgenden Tests herunter:

Geräte mit Android 14 oder höher testen

Tests für die Videocodierungsqualität (VEQ) der Leistungsklasse 14 (PC14) ausführen

Unter Android 14 werden Anforderungen an die Videocodierungsqualität (VEQ) für PC14-Geräte (Performance Class 14) eingeführt. Die PC14-VEQ-Anforderungen definieren im Wesentlichen auf messbare Weise eine grundlegende Qualitätszielanforderung für die Hardware-Videoencoder auf einem PC14-Gerät.

Ziel ist es, dass jedes Android-Gerät, das in die Leistungsklasse 14 eingestuft ist, Endnutzern durch hochwertige Videoinhalte ein Premium-Medienerlebnis bietet.

Die PC14-VEQ-Anforderungen werden durch einen neuen CTS-Test namens CtsVideoEncodingQualityHostTest überprüft.

Bei diesem CTS-Test werden eine Reihe von Codierungstests ausgeführt, die in den Konfigurations-JSON-Dateien definiert sind. Für jeden Testfall wird die Rate-Distortion-Kurve (RD-Kurve) des getesteten Encoders generiert, indem ein Bitstream mit den Encoder-Einstellungen aus der JSON-Datei codiert wird. Die Referenzratenverzerrungskurve ist in derselben JSON-Datei enthalten. Die Video Multimethod Assessment Fusion (VMAF) vmaf_v0.6.1.json wird verwendet, um die Verzerrung (d. h. den Qualitätsverlust) zu berechnen.

Ein Testfall kann nur bestanden werden, wenn das BDRATE-VMAF-Ergebnis kleiner oder gleich null ist.

Der CTS-Test PC14-VEQ umfasst die folgenden Codierungskonfigurationen:

  • AVC- und HEVC-HW-Encoder
  • VBR-Steuerungsmodus
  • P-Frame-/B-Frame-Codierung
  • 1920 x 1080p30fps (Querformat) oder 1080 x 1920p30fps (Hochformat)

Geräte mit Android 13 oder höher testen

Bevor Sie einen Test starten, müssen Sie die Geräte für den Test vorbereiten:

  1. Richten Sie das Gerät so ein, dass die Medienleistung 13 (PC13) beworben wird, indem Sie den Wert der Systemeigenschaft _ro.odm.build.media_performance_class auf 33 festlegen.

  2. Das System-Image des Geräts muss Android 13 oder höher sein. Sie können Media CTS-Tests auf einem System-Image mit Android 11 oder höher ausführen. Für Kamera-CTS-Tests sind jedoch Android 13-Funktionen für PC13 erforderlich.

ITS-Tests für Kameras durchführen

Wenn Sie nur die ITS-Tests für die Kamera ausführen möchten, legen Sie zuerst die Seriennummern des Geräts und des Tablets in config.yml fest und führen Sie dann die folgenden Befehle aus:

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

Tests zur Medienleistung der Klasse ausführen

Im cts-media-performance-class-Testplan werden die CDD-Anforderungen für die Leistungsklasse der Medien (CDD Abschnitt 2.2.7.1) und die Kameraanforderungen (CDD Abschnitt 2.2.7.2) überprüft. Führen Sie den Testplan cts-media-performance-class mit dem folgenden Befehl aus:

cts-tradefed run cts-media-performance-class

Wenn Sie nur die CTS-Tests für die Kamera ausführen möchten, verwenden Sie den folgenden Befehl:

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

Verwenden Sie den folgenden Befehl, um nur die CTS-Tests für Medien auszuführen:

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

MediaDrm-CTS-Tests ausführen

MediaDrm-CTS-Tests verifizieren die MediaDrm-Anforderungen in Abschnitt 2.2.7.1 der CDD. Führe MediaDrm-CTS-Tests mit den folgenden Befehlen aus:

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-Tests für das Dateisystem ausführen

Bei CTS-Tests für das Dateisystem werden die Leistungsanforderungen in CDD Abschnitt 2.2.7.4 überprüft.

  • Verwenden Sie den folgenden Befehl, um die Anforderungen an sequenzielle Lese- und Schreibvorgänge zu testen:

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
  • Verwenden Sie den folgenden Befehl, um Anforderungen an zufällige Lese- und Schreibvorgänge zu testen:

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

Geräte mit Android 11 oder 12 testen

Wenn Sie Geräte mit Android 11 oder 12 testen möchten, richten Sie zuerst die Testgeräte ein. Die Einrichtung unterscheidet sich zwischen der Android-Version und der Nutzerfehlersuche und der Nutzergeräte. Führen Sie dann CTS- und CTS-Verifizierungstests durch.

Die Medienleistung bewerben

So richten Sie Testgeräte ein, um mithilfe der Systemeigenschaft ro.odm.build.media_performance_class die richtige Leistungsklasse anzugeben:

  • Legen Sie für die Leistungsklasse 12 (PC12) den Wert der Property auf 31 fest.

  • Legen Sie für die Leistungsklasse 11 (PC11) den Wert der Property auf 30 fest.

Geräte mit Userdebug-Build

Führen Sie die folgenden Befehle aus, um Android-Userdebug-Geräte einzurichten:

  • Android 12-Geräte mit dem Nutzerdebug-Build:

    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-Geräte zum Debuggen von Nutzern:

    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

Sie können das Systemattribut ro.odm.build.media_performance_class nur einmal pro Neustart festlegen. Das Gerät muss vor der ersten Einstellung aber nicht neu gestartet werden.

Nutzergeräte

Wenn Sie Android-Userdebug-Geräte einrichten möchten, fügen Sie der Datei product.prop das Attribut ro.odm.build.media_performance_class mit dem gewünschten Wert für die Leistungsklasse hinzu. Hier ein Beispiel:

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

Führen Sie für Nutzergeräte mit Android 11 die folgenden zusätzlichen Schritte aus:

  1. Wählen Sie den Patch [1627181] Add media performance class property to sepolicy aus.

  2. Führen Sie den folgenden Befehl aus:

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

CTS- und ITS-Tests ausführen

Erstellen Sie CTS und CTS Verifier mit den heruntergeladenen Patches und führen Sie dann die entsprechende Android-Version für Ihre Testgeräte aus (Android 11 CTS für Android 11-Geräte, Android 12 CTS für Android 12-Geräte).

Medien

Führen Sie CTS-Tests für Medien mit dem folgenden Befehl aus:

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

Kamera

Führen Sie CTS-Tests für Kameras mit den folgenden Befehlen aus:

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

Führen Sie auf Geräten mit Android 12 den folgenden Befehl aus:

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

Hardware

Führen Sie Hardware-CTS-Tests mit den folgenden Befehlen aus:

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