tree: 7a8c819bf243779df9337053c5ac1351a46d2289 [path history] [tgz]
  1. Android.bp
  2. AndroidTest.xml
  3. AvcEncTest.cmake
  4. AvcEncTest.cpp
  5. DynamicConfig.xml
  6. README.md
  7. TestArgs.h
tests/README.md

AvcEncTest

The AvcEncoder Test Suite validates the Avc encoder.

Linux x86/x64

Requirements

  • cmake (3.9.1 or above)
  • make
  • clang (12.0 or above)

Steps to build

Clone libavc repository

$ git clone https://android.googlesource.com/platform/external/libavc

Create a directory inside libavc and change directory

 $ cd libavc
 $ mkdir build
 $ cd build

Build with -DENABLE_TESTS=1.

 $ cmake .. -DENABLE_TESTS=1 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
   -DCMAKE_BUILD_TYPE=Debug
 $ make

Optionally, enable sanitizers by passing -DSANITIZE

 $ cmake .. -DENABLE_TESTS=1 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
   -DCMAKE_BUILD_TYPE=Debug -DSANITIZE=fuzzer-no-link,address,\
   signed-integer-overflow,unsigned-integer-overflow
 $ make

The media files for the tests are present at. Download and extract these the current folder.

usage: AvcEncTest -P <path_to_the local folder>

$./AvcEncTest -P ./

Android

Run the following steps to build the test suite:

m AvcEncTest

To test 64-bit binary push binaries from nativetest64.

adb push ${OUT}/data/nativetest64/AvcEncTest/AvcEncTest /data/local/tmp/

To test 32-bit binary push binaries from nativetest.

adb push ${OUT}/data/nativetest/AvcEncTest/AvcEncTest /data/local/tmp/

The resource file for the tests is taken from here

Download, unzip and push these files into device for testing.

adb push AvcTestRes-1.0 /sdcard/test/

usage: AvcEncTest -P <path_to_folder>

adb shell /data/local/tmp/AvcEncTest -P /sdcard/test/AvcTestRes-1.0/

Alternatively, the test can also be run using atest command.

atest AvcEncTest