미디어 성능 클래스 테스트 실행

Android 호환성 테스트 도구 모음(CTS)에는 Android 11 이상을 실행하는 기기에 대한 미디어 성능 클래스 테스트가 포함되어 있습니다. Android 13을 실행하는 기기와 Android 11 또는 Android 12를 실행하는 기기 간에 테스트 프로세스가 다르기 때문에 기기에서 실행되는 Android 버전에 대한 안내를 따르세요.

테스트 다운로드

다음 테스트를 다운로드하세요.

Android 14 이상 기기 테스트

성능 클래스 14(PC14) - 비디오 인코딩 품질(VEQ) 테스트 실행

Android 14에는 성능 클래스 14(PC14) 기기에 대한 동영상 인코딩 품질(VEQ) 요구사항이 도입되었습니다. PC14-VEQ 요구 사항은 본질적으로 PC14 장치의 HW 비디오 인코더에 대한 측정 가능한 방식으로 기본 품질 목표 요구 사항을 정의합니다.

목표는 성능 등급 14로 클러스터링된 각 Android 장치가 고품질 비디오 콘텐츠를 생성하여 최종 사용자에게 프리미엄 미디어 경험을 제공하도록 보장하는 것입니다.

PC14-VEQ 요구 사항은 CtsVideoEncodingQualityHostTest 라는 새로운 CTS 테스트를 통해 확인됩니다.

이 CTS 테스트는 구성 JSON 파일에 정의된 일련의 인코딩 테스트 사례를 실행합니다. 각 테스트 사례에 대해 테스트 중인 인코더의 RD(속도-왜곡) 곡선은 JSON 파일의 인코더 설정을 사용하여 비트스트림을 인코딩하여 생성됩니다. 기준율-왜곡 곡선은 동일한 JSON 파일에 포함되어 있습니다. VMAF(Video Multimethod Assessment Fusion) vmaf_v0.6.1.json 왜곡(즉, 품질 손실)을 계산하는 데 사용됩니다.

테스트 케이스는 BDRATE-VMAF 결과가 0보다 작거나 같은 경우에만 통과할 수 있습니다.

PC14-VEQ CTS 테스트는 다음을 포함한 인코딩 구성을 다룹니다.

  • AVC 및 HEVC HW 인코더
  • VBR 속도 제어 모드
  • P-프레임/B-프레임 인코딩
  • 1920x1080p30fps(가로) 또는 1080x1920p30fps(세로)

Android 13 이상 기기 테스트

테스트 실행을 시작하기 전에 테스트용 장치를 준비하십시오.

  1. _ro.odm.build.media_performance_class 시스템 속성 값을 33 으로 설정하여 미디어 성능 클래스 13(PC13)을 광고하도록 장치를 설정합니다.

  2. 기기 시스템 이미지가 Android 13 이상인지 확인하세요. Android 11 이상 시스템 이미지에서 미디어 CTS 테스트를 실행할 수 있지만 카메라 CTS 테스트에는 PC13용 Android 13 기능이 필요합니다.

카메라 ITS 테스트 실행

카메라 ITS 테스트만 실행하려면 먼저 config.yml 에서 장치 및 태블릿 일련 번호를 모두 설정한 후 다음 명령을 실행하십시오.

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

미디어 성능 클래스 테스트 실행

cts-media-performance-class 테스트 계획은 미디어 성능 클래스 요구 사항(CDD 섹션 2.2.7.1 ) 및 카메라 요구 사항(CDD 섹션 2.2.7.2 )에 대한 CDD 요구 사항을 확인합니다. 다음 명령을 사용하여 cts-media-performance-class 테스트 계획을 실행합니다.

cts-tradefed run cts-media-performance-class

카메라 CTS 테스트만 실행하려면 다음 명령어를 사용하세요.

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

미디어 CTS 테스트만 실행하려면 다음 명령어를 사용하세요.

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

MediaDrm CTS 테스트 실행

MediaDrm CTS 테스트는 CDD 섹션 2.2.7.1 의 MediaDrm 요구 사항을 확인합니다. 다음 명령을 사용하여 MediaDrm CTS 테스트를 실행합니다.

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 테스트 실행

파일 시스템 CTS 테스트는 CDD 섹션 2.2.7.4 의 성능 요구 사항을 확인합니다.

  • 순차 읽기 및 쓰기 요구 사항을 테스트하려면 다음 명령을 사용하십시오.

    cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
    
  • 무작위 읽기 및 쓰기 요구 사항을 테스트하려면 다음 명령을 사용하십시오.

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

Android 11 또는 12 기기 테스트

Android 11 또는 12를 실행하는 기기를 테스트하려면 먼저 테스트 기기를 설정한 다음(Android 버전과 userdebug, 사용자 기기 간에 설정이 다름) CTS 및 CTS 검증 도구 테스트를 실행하세요.

미디어 퍼포먼스 클래스를 광고하세요

ro.odm.build.media_performance_class 시스템 속성을 사용하여 올바른 성능 클래스를 광고하도록 테스트 장치를 설정하려면 다음 단계를 따르세요.

  • 성능 등급 12(PC12)의 경우 특성 값을 31 로 설정하십시오.

  • 성능 등급 11(PC11)의 경우 속성 값을 30 으로 설정합니다.

사용자 디버그 장치

Android userdebug 기기를 설정하려면 다음 명령어를 실행하세요.

  • Android 12 사용자 디버그 기기:

    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 사용자 디버그 기기:

    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
    

ro.odm.build.media_performance_class 시스템 속성은 재부팅 시 한 번만 설정할 수 있습니다(그러나 처음 설정하기 전에 장치를 재부팅할 필요는 없습니다).

사용자 장치

Android userdebug 장치를 설정하려면 원하는 성능 클래스 값과 함께 ro.odm.build.media_performance_class 속성을 product.prop 파일에 추가하세요. 예가 아래에 나와 있습니다.

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

Android 11을 실행하는 사용자 기기의 경우 다음 추가 단계를 수행하세요.

  1. [1627181] sepolicy 패치에 미디어 성능 클래스 속성을 추가합니다 .

  2. 다음 명령을 실행하십시오.

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

CTS 및 ITS 테스트 실행

다운로드한 패치를 적용하여 CTS 및 CTS 검증 도구를 빌드한 다음 테스트 장치에 적합한 Android 버전을 실행합니다(Android 11 장치의 경우 Android 11 CTS, Android 12 장치의 경우 Android 12 CTS).

미디어

다음 명령어를 사용하여 미디어 CTS 테스트를 실행합니다.

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

카메라

다음 명령을 사용하여 카메라 CTS 테스트를 실행합니다.

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

Android 12를 실행하는 기기의 경우 다음 명령어를 실행하세요.

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

하드웨어

다음 명령을 사용하여 하드웨어 CTS 테스트를 실행합니다.

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