Przeprowadzanie testów klasy skuteczności mediów

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. Postępuj zgodnie z instrukcjami odpowiednimi dla wersji Androida na Twoich urządzeniach.

Pobieranie testów

Pobierz te testy:

Testowanie urządzeń z Androidem 14 lub nowszym

Testowanie urządzeń z Androidem 14 lub nowszym

W tej sekcji opisujemy testy wymagane w przypadku urządzeń z Androidem 14 lub nowszym. 14 lub nowszy.

Przeprowadzanie testów jakości kodowania wideo (VEQ) klasy wydajności 14 (PC14)

Android 14 wprowadza wymagania dotyczące jakości kodowania wideo (VEQ) w przypadku urządzeń klasy wydajności 14 (PC14). Wymagania PC14-VEQ w zasadzie określają w mierzalny sposób podstawowe wymagania dotyczące jakości sprzętowych koderów wideo na urządzeniu PC14.

Celem jest sprawdzenie, czy każde urządzenie z Androidem zaklasyfikowane do klasy wydajności 14 zapewnia 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 i korzysta z interfejsu Jetpack Media3 Transformer API. W przypadku każdego testu krzywa zniekształcenia w funkcji szybkości transmisji (RD) testowanego 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 zakończyć się powodzeniem 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 (w orientacji poziomej) lub 1080 x 1920 pikseli przy 30 kl./s (w orientacji pionowej)

Testowanie na urządzeniach z Androidem 13 lub nowszym

Testowanie na urządzeniach z Androidem 13 lub nowszym

Zanim rozpoczniesz test, przygotuj urządzenia do testowania:

  1. 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 na 33.

  2. Sprawdź, czy obraz systemu urządzenia to Android 13 lub

  3. Sprawdź, czy obraz systemu urządzenia to Android 13 lub nowszy. Testy CTS Media można uruchamiać na obrazie systemu Android 11 lub nowszego, ale testy CTS aparatu wymagają obrazu systemu Android 13, a 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. Po skonfigurowaniu przeprowadź testy aparatu przedniego i tylnego:

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 wydajnoś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 test cts-media-performance-class:

cts-tradefed run cts-media-performance-class

Aby uruchomić tylko testy CTS dotyczące aparatu:

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

Aby uruchomić tylko testy CTS multimediów:

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

Uruchamianie testów CTS MediaDrm

Testy CTS MediaDrm weryfikują wymagania MediaDrm w sekcji 2.2.7.1 dokumentu CDD. Uruchom testy CTS MediaDrm:

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 sekwencyjnego odczytu i zapisu:

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
  • Aby sprawdzić wymagania dotyczące losowego odczytu i zapisu:

    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 jest to urządzenie użytkownika czy urządzenie z wersją debugowania), a następnie uruchom testy CTS i CTS Verifier.

Reklamowanie klasy skuteczności medió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 debugowania użytkownika:

  • 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 tej właściwości).

Urządzenia użytkowników

Aby skonfigurować urządzenia użytkowników z Androidem, dodaj do pliku product.prop właściwość ro.odm.build.media_performance_class z wybraną wartością klasy wydajności:

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:

  1. Wybierz poprawkę [1627181] Add media performance class property to sepolicy patch.

  2. Ustaw MANAGE_EXTERNAL_STORAGE dla com.android.cts.verifier:

    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 na urządzeniach testowych (CTS dla Androida 11 na urządzeniach z Androidem 11, CTS dla Androida 12 na urządzeniach z Androidem 12).

Multimedia

Aby uruchomić testy multimediów w narzędziu CTS:

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

Aparat

Aby uruchomić testy CTS kamery:

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

Na urządzeniach z Androidem 12:

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

Sprzęt

Aby uruchomić testy CTS sprzętu:

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