xref: /aosp_15_r20/cts/tests/mediapc/README.md (revision b7c941bb3fa97aba169d73cee0bed2de8ac964bf)
1*b7c941bbSAndroid Build Coastguard Worker## Media Performance Class CTS Tests
2*b7c941bbSAndroid Build Coastguard Worker
3*b7c941bbSAndroid Build Coastguard WorkerCurrent folder comprises of files necessary for testing media performance class.
4*b7c941bbSAndroid Build Coastguard Worker
5*b7c941bbSAndroid Build Coastguard WorkerThe test vectors used by the test suite is available at
6*b7c941bbSAndroid Build Coastguard Worker[link](https://dl.google.com/android/xts/cts/tests/mediapc/CtsMediaPerformanceClassTestCases-3.3.zip)
7*b7c941bbSAndroid Build Coastguard Workerand is downloaded automatically while running tests. Manual installation of
8*b7c941bbSAndroid Build Coastguard Workerthese can be done using copy_media.sh script in this directory.
9*b7c941bbSAndroid Build Coastguard Worker
10*b7c941bbSAndroid Build Coastguard Worker### Commands
11*b7c941bbSAndroid Build Coastguard Worker
12*b7c941bbSAndroid Build Coastguard Worker#### To run all tests in CtsMediaPerformanceClassTestCases
13*b7c941bbSAndroid Build Coastguard Worker
14*b7c941bbSAndroid Build Coastguard Worker```sh
15*b7c941bbSAndroid Build Coastguard Worker$ atest CtsMediaPerformanceClassTestCases
16*b7c941bbSAndroid Build Coastguard Worker```
17*b7c941bbSAndroid Build Coastguard Worker
18*b7c941bbSAndroid Build Coastguard Worker#### To run a subset of tests in CtsMediaPerformanceClassTestCases
19*b7c941bbSAndroid Build Coastguard Worker
20*b7c941bbSAndroid Build Coastguard Worker```sh
21*b7c941bbSAndroid Build Coastguard Worker$ atest CtsMediaPerformanceClassTestCases:android.mediapc.cts.FrameDropTest
22*b7c941bbSAndroid Build Coastguard Worker```
23*b7c941bbSAndroid Build Coastguard Worker
24*b7c941bbSAndroid Build Coastguard Worker#### To run all tests in CtsMediaPerformanceClassTestCases by overriding Build.VERSION.MEDIA_PERFORMANCE_CLASS
25*b7c941bbSAndroid Build Coastguard Worker
26*b7c941bbSAndroid Build Coastguard WorkerIn some cases it might be useful to override
27*b7c941bbSAndroid Build Coastguard WorkerBuild.VERSION.MEDIA_PERFORMANCE_CLASS and run the tests. For eg: when the device
28*b7c941bbSAndroid Build Coastguard Workerdoesn't advertise Build.VERSION.MEDIA_PERFORMANCE_CLASS, running the tests by
29*b7c941bbSAndroid Build Coastguard Workeroverriding this will help in determining the which performance class
30*b7c941bbSAndroid Build Coastguard Workerrequirements are met by the device. Following runs the tests by overriding
31*b7c941bbSAndroid Build Coastguard WorkerBuild.VERSION.MEDIA_PERFORMANCE_CLASS as S.
32*b7c941bbSAndroid Build Coastguard Worker
33*b7c941bbSAndroid Build Coastguard Worker```sh
34*b7c941bbSAndroid Build Coastguard Worker$ atest
35*b7c941bbSAndroid Build Coastguard WorkerCtsMediaPerformanceClassTestCases -- --module-arg
36*b7c941bbSAndroid Build Coastguard WorkerCtsMediaPerformanceClassTestCases:instrumentation-arg:media-performance-class:=31
37*b7c941bbSAndroid Build Coastguard Worker```
38*b7c941bbSAndroid Build Coastguard Worker
39*b7c941bbSAndroid Build Coastguard Worker### Features
40*b7c941bbSAndroid Build Coastguard Worker
41*b7c941bbSAndroid Build Coastguard WorkerAll tests accepts attributes that offer selective run of tests.
42*b7c941bbSAndroid Build Coastguard Worker
43*b7c941bbSAndroid Build Coastguard Worker#### Select codecs by media type
44*b7c941bbSAndroid Build Coastguard Worker
45*b7c941bbSAndroid Build Coastguard WorkerTo select codecs by media type, *media-type-prefix* can be passed to media codec
46*b7c941bbSAndroid Build Coastguard Workertests to select one or more codecs that start with a given prefix.
47*b7c941bbSAndroid Build Coastguard Worker
48*b7c941bbSAndroid Build Coastguard WorkerExample: To limit the tests to run for media types whose names start with
49*b7c941bbSAndroid Build Coastguard Workervideo/avc
50*b7c941bbSAndroid Build Coastguard Worker
51*b7c941bbSAndroid Build Coastguard Worker```sh
52*b7c941bbSAndroid Build Coastguard Workeratest CtsMediaPerformanceClassTestCases -- --module-arg CtsMediaPerformanceClassTestCases:instrumentation-arg:media-type-prefix:=video/avc
53*b7c941bbSAndroid Build Coastguard Worker```
54*b7c941bbSAndroid Build Coastguard Worker
55*b7c941bbSAndroid Build Coastguard Worker#### Select codecs using regular expressions
56*b7c941bbSAndroid Build Coastguard Worker
57*b7c941bbSAndroid Build Coastguard WorkerTo select codecs by applying regular expressions, *codec-filter* can be passed
58*b7c941bbSAndroid Build Coastguard Workerto media codec tests to select one or more codecs that match with a specified
59*b7c941bbSAndroid Build Coastguard Workerregular expression pattern.
60*b7c941bbSAndroid Build Coastguard Worker
61*b7c941bbSAndroid Build Coastguard WorkerExample: To limit the tests to run for c2.android.avc.decoder and
62*b7c941bbSAndroid Build Coastguard Workerc2.android.hevc.encoder
63*b7c941bbSAndroid Build Coastguard Worker
64*b7c941bbSAndroid Build Coastguard Worker```sh
65*b7c941bbSAndroid Build Coastguard Workeratest CtsMediaPerformanceClassTestCases -- --module-arg CtsMediaPerformanceClassTestCases:instrumentation-arg:codec-filter:="c2\.android\.avc\.decoder\|c2\.android\.hevc\.encoder"
66*b7c941bbSAndroid Build Coastguard Worker```
67*b7c941bbSAndroid Build Coastguard Worker
68*b7c941bbSAndroid Build Coastguard Worker#### Select codecs by name
69*b7c941bbSAndroid Build Coastguard Worker
70*b7c941bbSAndroid Build Coastguard WorkerTo select codecs by name, *codec-prefix* can be passed to media codec tests to
71*b7c941bbSAndroid Build Coastguard Workerselect one or more codecs that start with a given prefix.
72*b7c941bbSAndroid Build Coastguard Worker
73*b7c941bbSAndroid Build Coastguard WorkerExample: To limit the tests to run for codecs whose names start with c2.android.
74*b7c941bbSAndroid Build Coastguard Worker
75*b7c941bbSAndroid Build Coastguard Worker```sh
76*b7c941bbSAndroid Build Coastguard Workeratest CtsMediaPerformanceClassTestCases -- --module-arg CtsMediaPerformanceClassTestCases:instrumentation-arg:codec-prefix:=c2.android.
77*b7c941bbSAndroid Build Coastguard Worker```
78*b7c941bbSAndroid Build Coastguard Worker
79*b7c941bbSAndroid Build Coastguard WorkerExample: To limit the tests to run for c2.android.hevc.decoder
80*b7c941bbSAndroid Build Coastguard Worker
81*b7c941bbSAndroid Build Coastguard Worker```sh
82*b7c941bbSAndroid Build Coastguard Workeratest CtsMediaPerformanceClassTestCases -- --module-arg CtsMediaPerformanceClassTestCases:instrumentation-arg:codec-prefix:=c2.android.hevc.decoder
83*b7c941bbSAndroid Build Coastguard Worker```
84