Tests für die Medienleistung ausführen

Die Android Compatibility Test Suite (CTS) enthält Tests für die Media Performance Class für Geräte mit Android 11 oder höher. Da sich der Testprozess für Geräte mit Android 13 und Geräte mit Android 11 oder Android 12 unterscheidet, müssen Sie die Anleitung für die Android-Version befolgen, die auf Ihren Geräten ausgeführt wird.

Tests herunterladen

Laden Sie die folgenden Tests herunter:

Android 14 oder höher-Geräte testen

VEQ-Tests (Video Encoding Quality) der Leistungsklasse 14 (PC14) ausführen

Mit Android 14 werden Anforderungen an die Video Encoding Quality (VEQ) für Geräte der Performance Class 14 (PC14) eingeführt. Die PC14-VEQ-Anforderungen definieren im Wesentlichen eine messbare Mindestanforderung für die Qualität der Hardware-Video-Encoder auf einem PC14-Gerät.

Ziel ist es, dass jedes Android-Gerät, das in die Leistungsklasse 14 eingeteilt ist, Endnutzern durch die Erstellung hochwertiger Videoinhalte ein erstklassiges Media-Erlebnis bietet.

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

Bei diesem CTS-Test wird eine Reihe von Codierungstestläufen ausgeführt, die durch die JSON-Konfigurationsdateien definiert werden. Für jeden Testlauf wird die Rate-Distortion-Kurve (RD) des zu testenden Encoders generiert, indem ein Bitstream mit den Encoder-Einstellungen aus der JSON-Datei codiert wird. Die Referenzkurve für Ratenverzerrung 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 Testlauf kann nur bestanden werden, wenn das BDRATE-VMAF-Ergebnis kleiner oder gleich null ist.

Der CTS-Test für PC14-VEQ deckt Codierungskonfigurationen ab, darunter:

  • AVC- und HEVC-Hardware-Encoder
  • VBR-Steuerungsmodus
  • P-Frame-/B-Frame-Codierung
  • 1.920 × 1.080 Pixel bei 30 Bildern pro Sekunde (Querformat) oder 1.080 × 1.920 Pixel bei 30 Bildern pro Sekunde (Hochformat)

Geräte mit Android 13 oder höher testen

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

  1. Richten Sie das Gerät so ein, dass es die Media Performance Class 13 (PC13) bewirbt, indem Sie den Wert der Systemproperty _ro.odm.build.media_performance_class auf 33 setzen.

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

ITS-Kameratests ausfü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 für Media Performance Class ausführen

Der cts-media-performance-class-Testplan überprüft die CDD-Anforderungen für Anforderungen an die Media-Leistungsklasse (CDD Abschnitt 2.2.7.1) und Kameraanforderungen (CDD Abschnitt 2.2.7.2). 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 Media-CTS-Tests auszuführen:

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

MediaDrm-CTS-Tests ausführen

Mit den MediaDrm-CTS-Tests werden die MediaDrm-Anforderungen in Abschnitt 2.2.7.1 des CDD überprüft. Führen Sie 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

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

  • Verwenden Sie den folgenden Befehl, um die Anforderungen für sequenzielles Lesen und Schreiben zu testen:

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
  • Verwenden Sie den folgenden Befehl, um die Anforderungen für zufälliges Lesen und Schreiben 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, müssen Sie zuerst die Testgeräte einrichten. Die Einrichtung unterscheidet sich je nach Android-Version und je nachdem, ob es sich um Userdebug- oder User-Geräte handelt. Führen Sie dann CTS- und CTS-Verifier-Tests aus.

Werben Sie mit der Media Performance Class.

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

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

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

Userdebug-Geräte

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

  • Android 12-Userdebug-Geräte:

    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
  • Userdebug-Geräte mit 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

Die Systemeigenschaft ro.odm.build.media_performance_class kann nur einmal pro Neustart festgelegt werden. Das Gerät muss jedoch nicht neu gestartet werden, bevor sie zum ersten Mal festgelegt wird.

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. Ein Beispiel ist unten aufgeführt:

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ähle 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 Media-CTS-Tests mit dem folgenden Befehl aus:

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

Kamera

Führen Sie die CTS-Tests für die Kamera 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 für Geräte 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