Pakiet testów zgodności Androida (CTS) zawiera testy klasy wydajności multimediów na urządzeniach z Androidem 11 lub nowszym. Proces testowania różni się w zależności od tego, czy urządzenie ma Androida 13, czy Androida 11 lub 12, dlatego postępuj zgodnie z instrukcjami odpowiednimi dla wersji Androida na Twoich urządzeniach.
Pobieranie testów
Pobierz te testy:
Testy CTS. Aby pobrać testy na Androida 11 lub nowszego, zapoznaj się z artykułem Pobieranie pakietu testów zgodności.
Testy multimediów Listę CL znajdziesz w AOSP.
Testy sprzętu
Testowanie na urządzeniach z Androidem 14 lub nowszym
Przeprowadzanie testów jakości kodowania wideo (VEQ) klasy wydajności 14 (PC14)
W Androidzie 14 wprowadzono wymagania dotyczące jakości kodowania wideo (VEQ) w przypadku urządzeń klasy wydajności 14 (PC14). Wymagania PC14-VEQ określają w mierzalny sposób podstawowe wymagania dotyczące jakości enkoderów wideo sprzętowych na urządzeniu PC14.
Celem jest zapewnienie, aby każde urządzenie z Androidem zaklasyfikowane do klasy wydajności 14 zapewniało użytkownikom najwyższą jakość multimediów dzięki tworzeniu wysokiej jakości treści wideo.
Wymagania PC14-VEQ są weryfikowane przez nowy test CTS o nazwie
CtsVideoEncodingQualityHostTest
.
Ten test CTS uruchamia zestaw przypadków testowych kodowania zdefiniowanych przez pliki JSON konfiguracji. W przypadku każdego przypadku testowego krzywa zniekształceń (RD) kodera jest generowana przez zakodowanie strumienia bitów przy użyciu ustawień kodera z pliku JSON. Referencyjna krzywa zniekształceń jest zawarta w tym samym pliku JSON. Do obliczania zniekształceń (czyli utraty jakości) używamy metody Video Multimethod Assessment Fusion (VMAF).
vmaf_v0.6.1.json
Test może zostać zaliczony tylko wtedy, gdy wynik BDRATE-VMAF jest mniejszy lub równy 0.
Test CTS PC14-VEQ obejmuje konfiguracje kodowania, w tym:
- Kodery sprzętowe AVC i HEVC
- Tryb kontroli szybkości VBR
- Kodowanie klatek P i B
- 1920 x 1080 pikseli przy 30 kl./s (orientacja pozioma) lub 1080 x 1920 pikseli przy 30 kl./s (orientacja pionowa)
Testowanie urządzeń z Androidem 13 lub nowszym
Przed rozpoczęciem testu przygotuj urządzenia do testowania:
Skonfiguruj urządzenie do reklamowania klasy wydajności multimediów 13 (PC13), ustawiając wartość właściwości systemowej
_ro.odm.build.media_performance_class
na33
.Upewnij się, że obraz systemu urządzenia to Android 13 lub nowszy. Testy CTS multimediów możesz przeprowadzać na obrazie systemu Androida 11 lub nowszego, ale testy CTS aparatu wymagają funkcji Androida 13 dla PC13.
Przeprowadzanie testów ITS kamery
Aby uruchomić tylko testy ITS aparatu, najpierw ustaw numery seryjne urządzenia i tabletu w config.yml
, a potem uruchom te polecenia:
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
Przeprowadzanie testów klasy skuteczności multimediów
cts-media-performance-class
Plan testów weryfikuje wymagania CDD dotyczące wymagań klasy wydajności multimediów (CDD sekcja 2.2.7.1) i wymagań dotyczących aparatu (CDD sekcja 2.2.7.2). Uruchom plan testów cts-media-performance-class
za pomocą tego polecenia:
cts-tradefed run cts-media-performance-class
Aby uruchomić tylko testy CTS aparatu, użyj tego polecenia:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristics
Aby uruchomić tylko testy CTS multimediów, użyj tego polecenia:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases
Przeprowadzanie testów CTS MediaDrm
Testy CTS MediaDrm weryfikują wymagania MediaDrm w sekcji 2.2.7.1 dokumentu CDD. Uruchom testy CTS MediaDrm za pomocą tych poleceń:
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
Uruchamianie testów CTS systemu plików
Testy CTS systemu plików weryfikują wymagania dotyczące wydajności w sekcji 2.2.7.4 dokumentu CDD.
Aby przetestować wymagania dotyczące odczytu i zapisu sekwencyjnego, użyj tego polecenia:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
Aby przetestować wymagania dotyczące losowego odczytu i zapisu, użyj tego polecenia:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.RandomRWTest
Testowanie na urządzeniach z Androidem 11 lub 12
Aby przetestować urządzenia z Androidem 11 lub 12, najpierw skonfiguruj urządzenia testowe (konfiguracja różni się w zależności od wersji Androida oraz tego, czy są to urządzenia użytkownika czy urządzenia z wersją debugowania), a następnie uruchom testy CTS i CTS Verifier.
Reklamowanie klasy wydajności multimediów
Aby skonfigurować urządzenia testowe do wyświetlania reklam z prawidłową klasą wydajności za pomocą właściwości systemowej ro.odm.build.media_performance_class
:
W przypadku klasy wydajności 12 (PC12) ustaw wartość właściwości na
31
.W przypadku klasy wydajności 11 (PC11) ustaw wartość właściwości na
30
.
Urządzenia userdebug
Aby skonfigurować urządzenia z Androidem w trybie userdebug, uruchom te polecenia:
Urządzenia z Androidem 12 w wersji 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
Urządzenia z Androidem 11 w wersji 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
Właściwość systemową ro.odm.build.media_performance_class
można ustawić tylko raz podczas ponownego uruchamiania (ale nie musisz ponownie uruchamiać urządzenia przed pierwszym ustawieniem).
Urządzenia użytkowników
Aby skonfigurować urządzenia z Androidem w wersji debugowania, dodaj właściwość
ro.odm.build.media_performance_class
z odpowiednią wartością klasy wydajności do pliku product.prop
. Przykład znajdziesz poniżej:
ro.odm.build.media_performance_class=31 // use 30 for PC11
W przypadku urządzeń użytkowników z Androidem 11 wykonaj te dodatkowe czynności:
Wybierz poprawkę [1627181] Add media performance class property to sepolicy patch.
Uruchom to polecenie:
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
Przeprowadzanie testów CTS i ITS
Skompiluj CTS i CTS Verifier z zastosowanymi pobranymi poprawkami, a następnie uruchom odpowiednią wersję Androida dla urządzeń testowych (CTS Androida 11 dla urządzeń z Androidem 11, CTS Androida 12 dla urządzeń z Androidem 12).
Multimedia
Uruchom testy CTS multimediów za pomocą tego polecenia:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases
Aparat
Uruchom testy CTS aparatu za pomocą tych poleceń:
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
W przypadku urządzeń z Androidem 12 uruchom to polecenie:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraApi31TestCases
Sprzęt
Uruchom testy CTS sprzętu za pomocą tych poleceń:
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