mirror of
https://github.com/ittiam-systems/libhevc.git
synced 2026-08-13 14:22:34 +07:00
No description
Trigger IVD_RES_CHANGED when bit depth or chroma format changes in SPS, forcing reallocation of picture buffers. To prevent corrupting the codec state on invalid SPS parses, the updates to global codec parameters (like i4_pixel_size_y and i4_bit_depth_luma) are deferred to the end of ihevcd_parse_sps, after all validation checks have passed. The resolution change check now compares the old active values in ps_codec against the newly parsed values in the temporary ps_sps structure. TAG=agy CONV=2aef6402-f7fc-4ff8-ba56-d78e01754035 |
||
|---|---|---|
| .github/workflows | ||
| .vscode | ||
| cmake | ||
| common | ||
| decoder | ||
| encoder | ||
| examples | ||
| fuzzer | ||
| tests | ||
| Android.bp | ||
| CMakeLists.txt | ||
| FrameInfo.md | ||
| libhevc_blocklist.txt | ||
| LICENSE | ||
| METADATA | ||
| MODULE_LICENSE_APACHE2 | ||
| NOTICE | ||
| OWNERS | ||
| PREUPLOAD.cfg | ||
| README.md | ||
LIBHEVC
Getting Started Document
LibHEVC build steps
Supports:
- aarch32/aarch64 on Linux.
- aarch32/aarch64 on Android.
- x86_32/x86_64 on Linux.
- aarch64 on Mac.
- x86_64 on Mac.
Native Builds
Use the following commands for building on the target machine
$ cd external/libhevc
$ mkdir build
$ cd build
$ cmake ..
$ make
Cross-compiler based builds
Building for x86_32 on a x86_64 Linux machine
$ cd external/libhevc
$ mkdir build
$ cd build
$ CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" cmake ..
$ make
Building for aarch32/aarch64
Update 'CMAKE_C_COMPILER', 'CMAKE_CXX_COMPILER', 'CMAKE_C_COMPILER_AR', and 'CMAKE_CXX_COMPILER_AR' in CMAKE_TOOLCHAIN_FILE passed below
$ cd external/libhevc
$ mkdir build
$ cd build
For aarch64
$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/aarch64_toolchain.cmake
$ make
For aarch32
$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/aarch32_toolchain.cmake
$ make
Building for android
NOTE: This assumes that you are building on a machine that has Android NDK.
$ cd external/libhevc
$ mkdir build
$ cd build
Armv7 (32-bit)
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/android_toolchain.cmake\
-DHEVC_ANDROID_NDK_PATH=/opt/android-ndk-r26d/\
-DANDROID_ABI=armeabi-v7a\
-DANDROID_PLATFORM=android-23 ../
make
Armv8 (64-bit)
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/android_toolchain.cmake\
-DHEVC_ANDROID_NDK_PATH=/opt/android-ndk-r26d/\
-DANDROID_ABI=arm64-v8a\
-DANDROID_PLATFORM=android-23 ../
make