No description
Find a file
Ram Mohan M 3fcf959359 libavcenc: relocate the update post enc routines
During bitstream overflow errors, it is possible that update post
enc gets skipped as last row might never have to be entropy coded
as we have already consumed the buffer. This can be fatal for
encoding further frames. Move this update to a location where it
is guaranteed to be updated

Bug: oss-fuzz-62378
Test: ./avc_enc_fuzzer

Change-Id: I279deb1f30c15c057c0b6e909834313a1df4fdac
2023-09-27 13:57:19 -07:00
.github/workflows cifuzz.yml: Limit CI fuzz to address and memory sanitizers 2023-03-21 11:40:36 -07:00
cmake cmake: Set C standard to C90 and move few macros to specific targets 2022-08-30 20:00:54 +00:00
common decoder: replace KEEP_THREADS_ACTIVE macro with avc decoder struct variable 2023-07-22 09:51:37 -07:00
decoder decoder: join threads in flush mode 2023-09-25 08:47:41 -07:00
encoder libavcenc: relocate the update post enc routines 2023-09-27 13:57:19 -07:00
fuzzer ossfuzz.sh: enable null sanitizer 2023-08-01 23:02:16 -07:00
test decoder: add "summary" before codec exit with error message 2023-07-31 10:32:26 -07:00
.clang-format Decoder: MVC decoding support added 2022-08-06 05:51:31 +00:00
Android.bp libavc: tidy up android bp - 2 2023-09-20 06:19:47 -07:00
CMakeLists.txt SVC decoder support 2023-02-08 07:55:47 -08:00
FrameInfo.md Decoder: add support for QP and block_type map export in library 2022-05-17 09:55:20 +05:30
libavc_blocklist.txt Encoder: SVC encoding support added 2023-01-30 11:07:10 -08:00
LICENSE Add LICENSE to fix lint warning 2023-01-26 01:10:25 +00:00
METADATA Add METADATA to libavc: Apache2=NOTICE 2020-04-30 16:15:18 -07:00
MODULE_LICENSE_APACHE2 Add MODULE_LICENSE_* and NOTICE file for libavc projet. 2016-03-14 14:36:00 -07:00
NOTICE Add MODULE_LICENSE_* and NOTICE file for libavc projet. 2016-03-14 14:36:00 -07:00
OWNERS OWNERS: Include avic_OWNERS 2023-08-11 15:54:38 -07:00
PREUPLOAD.cfg point to new repo hooks for mainline uploads 2020-05-26 15:16:18 -07:00
README.md Builds: Modular cmake scripts added 2022-02-02 11:14:55 +05:30

LIBAVC

Getting Started Document

LibAVC build steps

Supports:

  • aarch32/aarch64 on Linux.
  • aarch32/aarch64 on Android.
  • x86_32/x86_64 on Linux.

Native Builds

Use the following commands for building on the target machine

$ cd external/libavc
$ mkdir build
$ cd build
$ cmake ..
$ make

Cross-compiler based builds

Building for x86_32 on a x86_64 Linux machine

$ cd external/libavc
$ 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/libavc
$ 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