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:
CTS-Tests. Informationen zum Herunterladen von Tests für Android 11 oder höher finden Sie unter Compatibility Test Suite-Downloads.
Medientests: Eine Liste der CLs finden Sie unter AOSP.
Hardwaretests:
Android 14-Geräte oder höher testen
In diesem Abschnitt werden die Tests beschrieben, die für Geräte mit Android 14 oder höher erforderlich sind.
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, zu prüfen, ob jedes Gerät, auf dem Android ausgeführt wird und 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 werden eine Reihe von Codierungstestläufen ausgeführt, die durch die JSON-Konfigurationsdateien definiert sind. Dabei wird die Jetpack Media3 Transformer API verwendet. 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 „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:
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_classauf33setzen.Prüfen Sie, ob auf dem Gerät ein System-Image mit Android 13 oder höher installiert ist. 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 ITS-Kameratests ausführen möchten, legen Sie zuerst die Seriennummern des Geräts und des Tablets in config.yml fest. Führen Sie nach der Einrichtung Tests für die Front- und Rückkamera durch:
python tools/run_all_tests.py camera=[PRIMARY_REAR_CAMERA_ID] scenes=2_cpython 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 cts-media-performance-class-Test aus:
cts-tradefed run cts-media-performance-classSo führen Sie nur die CTS-Tests für die Kamera aus:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristicsSo führen Sie nur die Media-CTS-Tests aus:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCasesMediaDrm-CTS-Tests ausführen
MediaDrm-CTS-Tests überprüfen die MediaDrm-Anforderungen in Abschnitt 2.2.7.1 des CDD. MediaDrm CTS-Tests ausführen:
cts-tradefed run singleCommand cts --disable-reboot -c android.mediapc.cts.PerformanceClassTest -m testSecureHwDecodeSupportcts-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.
So testen Sie die Anforderungen für sequenzielles Lesen und Schreiben:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTestSo testen Sie die Anforderungen für zufällige Lese- und Schreibvorgänge:
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.
Media Performance Class bewerben
So richten Sie Testgeräte ein, um die richtige Leistungsklasse mit der Systemeigenschaft ro.odm.build.media_performance_class anzukündigen:
Legen Sie für die Leistungsklasse 12 (PC12) den Wert des Attributs auf
31fest.Legen Sie für die Leistungsklasse 11 (PC11) den Wert des Attributs auf
30fest.
Userdebug-Geräte
So richten Sie Android-Userdebug-Geräte ein:
Android 12-Userdebug-Geräte:
adb rootadb shell setprop ro.odm.build.media_performance_class 31 // use 30 for PC11adb shell stop && sleep 1 && adb shell startadb shell pkill -f cameraUserdebug-Geräte mit Android 11:
adb rootadb shell setenforce 0adb shell setprop ro.odm.build.media_performance_class 31 // use 30 for PC11adb 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-Nutzergeräte einrichten möchten, fügen Sie der Datei product.prop das Attribut ro.odm.build.media_performance_class mit dem ausgewählten Wert für die Leistungsklasse hinzu:
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:
Wählen Sie den Patch [1627181] Add media performance class property to sepolicy aus.
So legen Sie
MANAGE_EXTERNAL_STORAGEfürcom.android.cts.verifierfest: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
So führen Sie Media-CTS-Tests aus:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCasesKamera
So führen Sie CTS-Tests für die Kamera aus:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristicspython tools/run_all_tests.py device=DEVICE camera=PRIMARY_CAMERA_ID chart=CHART_ID scenes=2_cFür Geräte mit Android 12:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraApi31TestCasesHardware
So führen Sie Hardware-CTS-Tests aus:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.RandomRWTestcts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest