You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.0 KiB
2.0 KiB
Codec2.0 End-to-end Test
Manually run the test
You need to be running Android with v4l2_codec2 (e.g. ARC++, ARCVM) to run the tests. Make sure the device under test (DUT) is connected with adb.
-
Build the e2e test
(From the android tree) $ mmm external/v4l2_codec2/tests/c2_e2e_test
-
Install the test app and grant the necessary permissions
(Outside CrOS chroot) $ adb install \ out/target/product/bertha_x86_64/testcases/C2E2ETest/x86_64/C2E2ETest.apk $ adb shell pm grant \ org.chromium.c2.test android.permission.WRITE_EXTERNAL_STORAGE $ adb shell pm grant \ org.chromium.c2.test android.permission.READ_EXTERNAL_STORAGE
-
Run E2E tests
(1) Push the test stream and frame-wise MD5 file to DUT
$ adb push test-25fps.h264 /sdcard/Download $ adb push test-25fps.h264.frames.md5 /sdcard/Download
(2) Run the test binary
$ adb shell am start -n \ org.chromium.c2.test/.E2eTestActivity \ --ez do-encode [true|false] \ --esa test-args [test-arg]... \ --es log-file "/sdcard/Download/gtest_logs.txt"'
where do-encode controls whether the encoder or decoder tests are run.
(3) View the test output
$ adb shell cat /sdcard/Download/gtest_logs.txt
Required test-args:
test_video_data=<format> : see arc_accel_video.go in the chromeos tree for format
Optional test-args:
output_frames_path=path : path at which to save decoded frame data
loop : if present, videos loop until the activity is signaled with a new intent (e.g.
`adb shell am start -n .../.E2eTestActivity --activity-single-top`)
use_sw_decoder : if present, use a software decoder instead of a hardware decoder
gtest arguments : see gtest documentation
Example of test-args:
--esa test-args "--test_video_data=/sdcard/Download/test-25fps.h264:320:240:250:258:::1:25",\
"--gtest_filter=C2VideoDecoderSurfaceE2ETest.TestFPS",--use_sw_decoder