Components included:
- Codec: A HW accerlated encode/decode library
- Graphic: A HW based cross-api graphic library (Still in-developement)
- CMake >= 3.14.0
- Intel Graphic Driver (For Media SDK)
- GoogleTest >= 1.8.0 (Optional, for unit tests)
- Python 3.6 (Optional, for coding style scripts)
Set environment GTEST_ROOT
or GTEST_DIR
.
set GTEST_ROOT=X:/GoogleTest/include
Check CMAKE options by:
mkdir build && pushd build
cmake .. -A x64 -DCMAKE_INSTALL_PREFIX=install -L
Select the components want to build:
cmake .. -DLL_BUILD_CODEC=ON -DLL_BUILD_GFX=ON
cmake --build . --config release --target install
popd
Not tested yet.
cd build
cmake --build . --config release --target ALL_BUILD
ctest -c release -j 8 --progress
TDB...
Typically, there are 2 ways to reuse a C++ project:
Build & install lltech
project. This will generate a ll-config.cmake
file under installation root. You can add the directory of ll-config.cmake
to LL_DIR
and use find_package(LL)
in your cmake scripts, which will add cmake targets LL::Codec
, LL::Graphic
.
set(LL_DIR /path/install/lltech)
find_package(LL QUIET)
if(LL_CODEC_FOUND)
# ...
target_link_libraries(... PRIVATE LL::Codec)
endif()
if(LL_GFX_FOUND)
# ...
target_link_libraries(... PRIVATE LL::Graphic)
endif()
You can add cm4nn as a git submodule of your project, and use add_subdirectory(${LL_DIR})
to include lltech
, which will add cmake targets ixr_codec
, ixr_engine
.
set(LL_DIR /path/source/lltech)
add_subdirectory(${LL_DIR})
target_link_libraries(... PRIVATE ixr_codec)
target_link_libraries(... PRIVATE ixr_engine)