O conjunto de testes de compatibilidade do Android (CTS) inclui testes de classe de desempenho de mídia para dispositivos com o Android 11 ou mais recente. Como o processo de teste é diferente entre dispositivos com Android 13 e dispositivos com Android 11 ou Android 12, siga as instruções para a versão do Android em execução nos dispositivos.
Fazer o download de testes
Faça o download dos seguintes testes:
Testes CTS. Para fazer o download de testes para o Android 11 ou versões mais recentes, consulte Downloads do conjunto de teste de compatibilidade.
Testes de mídia. Para conferir uma lista de CLs, consulte AOSP.
Testes de hardware.
Testar dispositivos com o Android 14 ou versões mais recentes
Executar testes de Performance Class 14 (PC14): qualidade de codificação de vídeo (VEQ, na sigla em inglês)
O Android 14 lançou requisitos de qualidade de codificação de vídeo (VEQ) para dispositivos da classe de desempenho 14 (PC14). Os requisitos do PC14-VEQ definem essencialmente um requisito de meta de qualidade de referência de maneira mensurável para os codificadores de vídeo de hardware em um dispositivo PC14.
O objetivo é garantir que cada dispositivo Android agrupado na classe de desempenho 14 ofereça uma experiência de mídia premium aos usuários finais, criando conteúdo de vídeo de alta qualidade.
Os requisitos do PC14-VEQ são verificados por um novo teste de CTS chamado
CtsVideoEncodingQualityHostTest
.
Esse teste do CTS executa um conjunto de casos de teste de codificação definidos pelos arquivos
JSON de configuração. Para cada caso de teste, a curva de taxa-distorção (RD, na sigla em inglês) do codificador
que está sendo testado é gerada codificando um fluxo de bits usando as configurações do codificador
do arquivo JSON. A curva de distorção de taxa de referência é incluída no mesmo
arquivo JSON. A fusão de avaliação de vídeo por vários métodos (VMAF, na sigla em inglês)
vmaf_v0.6.1.json
é usada para calcular a distorção (ou seja, a perda de qualidade).
Um caso de teste só pode ser aprovado quando o resultado BDRATE-VMAF for menor ou igual a zero.
O teste CTS PC14-VEQ abrange configurações de codificação, incluindo:
- Codificadores AVC e HEVC HW
- Modo de controle de taxa VBR
- Codificação de P-frame/B-frame
- 1920x1080p30fps (paisagem) ou 1080x1920p30fps (retrato)
Testar dispositivos Android 13 ou mais recente
Antes de iniciar uma execução de teste, prepare os dispositivos para testes:
Configure o dispositivo para anunciar a classe de performance de mídia 13 (PC13) definindo o valor da propriedade do sistema
_ro.odm.build.media_performance_class
como33
.Confira se a imagem do sistema do dispositivo é o Android 13 ou mais recente. Embora seja possível executar testes de CTS de mídia em uma imagem do sistema do Android 11 ou mais recente, os testes de CTS da câmera exigem recursos do Android 13 para PC13.
Executar testes ITS da câmera
Para executar apenas os testes ITS da câmera, defina os números de série do dispositivo e do tablet
em config.yml
e execute os seguintes comandos:
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
Executar testes de classe de performance da mídia
O plano de teste cts-media-performance-class
verifica os requisitos do CDD para
requisitos da classe de desempenho de mídia (CDD Seção
2.2.7.1) e requisitos de câmera
(CDD Seção 2.2.7.2). Execute o
plano de teste cts-media-performance-class
usando o seguinte comando:
cts-tradefed run cts-media-performance-class
Para executar apenas os testes CTS da câmera, use o seguinte comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraTestCases -t android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testCameraPerfClassCharacteristics
Para executar apenas os testes de CTS de mídia, use o seguinte comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases
Executar testes de CTS para MediaDrm
Os testes do CTS do MediaDrm verificam os requisitos do MediaDrm na Seção 2.2.7.1 do CDD. Execute os testes do CTS do MediaDrm usando os seguintes comandos:
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
Executar testes do CTS do sistema de arquivos
Os testes CTS do sistema de arquivos verificam os requisitos de desempenho na Seção 2.2.7.4 do CDD.
Para testar os requisitos de leitura e gravação sequenciais, use o seguinte comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.SequentialRWTest
Para testar requisitos de leitura e gravação aleatórios, use o seguinte comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsFileSystemTestCases -t android.filesystem.cts.RandomRWTest
Testar dispositivos Android 11 ou 12
Para testar dispositivos com o Android 11 ou 12, primeiro configure os dispositivos de teste (a configuração difere entre a versão do Android e o userdebug em comparação com os dispositivos do usuário) e execute os testes do CTS e do verificador do CTS.
Anunciar a classe de performance de mídia
Siga as etapas abaixo para configurar dispositivos de teste para anunciar a classe de desempenho
correta usando a propriedade do sistema ro.odm.build.media_performance_class
:
Para a classe de performance 12 (PC12), defina o valor da propriedade como
31
.Para a classe de desempenho 11 (PC11), defina o valor da propriedade como
30
.
Dispositivos Userdebug
Para configurar dispositivos userdebug do Android, execute os seguintes comandos:
Dispositivos userdebug do 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
Dispositivos userdebug do 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
É possível definir a propriedade do sistema ro.odm.build.media_performance_class
apenas uma vez
por reinicialização, mas não é necessário reiniciar o dispositivo antes de definir pela primeira
vez.
Dispositivos do usuário
Para configurar dispositivos userdebug do Android, adicione a
propriedade ro.odm.build.media_performance_class
com o valor da classe de performance
desejada ao arquivo product.prop
. Veja um exemplo abaixo:
ro.odm.build.media_performance_class=31 // use 30 for PC11
Para dispositivos de usuários com o Android 11, siga estas etapas adicionais:
Escolha o patch [1627181] Adicionar a propriedade da classe de performance de mídia ao sepolicy.
Execute este comando:
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
Executar testes CTS e ITS
Crie o CTS e o CTS Verifier com os patches baixados aplicados e execute a versão apropriada do Android para seus dispositivos de teste (CTS do Android 11 para dispositivos do Android 11, CTS do Android 12 para dispositivos do Android 12).
Mídia
Execute testes de CTS de mídia usando o seguinte comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsMediaPerformanceClassTestCases
Câmera
Execute os testes CTS da câmera usando estes comandos:
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
Para dispositivos com o Android 12, execute este comando:
cts-tradefed run singleCommand cts --disable-reboot -m CtsCameraApi31TestCases
Hardware
Execute testes CTS de hardware usando estes comandos:
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