diff --git a/.jenkins/common.groovy b/.jenkins/common.groovy index 119ae66141..656dfdbe49 100644 --- a/.jenkins/common.groovy +++ b/.jenkins/common.groovy @@ -46,6 +46,11 @@ def runTestCommand (platform, project) { cd ../ && mkdir -p rocdecode-test && cd rocdecode-test cmake /opt/rocm/share/rocdecode/test/ LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/rocm/lib${libLocation} ctest -VV --rerun-failed --output-on-failure + cd ../ && mkdir -p conformance && cd conformance + pip3 install pandas + wget http://math-ci.amd.com/userContent/computer-vision/HevcConformance/*zip*/HevcConformance.zip + unzip HevcConformance.zip + python3 /opt/rocm/share/rocdecode/test/testScripts/run_rocDecode_Conformance.py --videodecode_exe ./../rocdecode-sample/videodecode --files_directory ./HevcConformance --results_directory . """ platform.runCommand(this, command) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1ebbc28d6b..f632e3eac4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -154,6 +154,7 @@ if(HIP_FOUND AND Libva_FOUND AND Libdrm_FOUND) install(FILES ${CPACK_RESOURCE_FILE_LICENSE} DESTINATION ${CMAKE_INSTALL_DOCDIR}-test COMPONENT test) # install test cmake install(FILES test/CMakeLists.txt DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/test COMPONENT test) + install(DIRECTORY test/testScripts DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/test COMPONENT test) message("-- ${White}AMD ROCm rocDecode -- CMAKE_CXX_FLAGS:${CMAKE_CXX_FLAGS}${ColourReset}") message("-- ${White}AMD ROCm rocDecode -- Link Libraries: ${LINK_LIBRARY_LIST}${ColourReset}") diff --git a/test/testScripts/run_rocDecode_Conformance.py b/test/testScripts/run_rocDecode_Conformance.py index e3a0a4dc4a..84fed65e5d 100644 --- a/test/testScripts/run_rocDecode_Conformance.py +++ b/test/testScripts/run_rocDecode_Conformance.py @@ -37,23 +37,36 @@ __status__ = "Shipping" parser = argparse.ArgumentParser() parser.add_argument('--rocDecode_directory', type=str, default='', help='The rocDecode Directory - required') +parser.add_argument('--videodecode_exe', type=str, default='', + help='Video decode sample app exe - optional') parser.add_argument('--gpu_device_id', type=int, default=0, help='The GPU device ID that will be used to run the test on it - optional (default:0 [range:0 - N-1] N = total number of available GPUs on a machine)') parser.add_argument('--files_directory', type=str, default='', help='The path to a dirctory containing one or more supported files for decoding (e.g., mp4, mov, etc.) and their corresponding reference MD5 digests - required') +parser.add_argument('--results_directory', type=str, default='', + help='The path to a dirctory to store results - optional') args = parser.parse_args() rocDecodeDirectory = args.rocDecode_directory gpuDeviceID = args.gpu_device_id filesDir = args.files_directory +videoDecodeEXE = args.videodecode_exe +resultsDir = args.results_directory print("\nrunrocDecodeTests V"+__version__+"\n") # rocDecode Application scriptPath = os.path.dirname(os.path.realpath(__file__)) -rocDecode_exe = rocDecodeDirectory+'/samples/videoDecode/build/videodecode' -resultsPath = scriptPath+'/rocDecode_videoDecode_results' +if videoDecodeEXE == '': + rocDecode_exe = rocDecodeDirectory+'/samples/videoDecode/build/videodecode' +else: + rocDecode_exe = videoDecodeEXE +if resultsDir == '': + resultsPath = scriptPath+'/rocDecode_videoDecode_results' +else: + resultsPath = resultsDir+'/rocDecode_videoDecode_results' + run_rocDecode_app = os.path.abspath(rocDecode_exe) os.system('(mkdir -p ' + resultsPath + ')') if(os.path.isfile(run_rocDecode_app)):