commit | 0aa30915f9ca2d223a79f11865b012ef120ea322 | [log] [tgz] |
---|---|---|
author | Fyodor Kyslov <[email protected]> | Fri Oct 11 20:54:00 2024 +0000 |
committer | Fyodor Kyslov <[email protected]> | Fri Oct 11 20:58:33 2024 +0000 |
tree | 5227e555a22637fae1e6be42400e38d02b569392 | |
parent | 17608f80916637cac1ebe99d0d2ebf0644cbe377 [diff] |
Adding libopenAPV Third-Party Import of: https://github.com/openapv/openapv/releases/tag/v0.1.4 Request Document: go/android3p For CL Reviewers: go/android3p#reviewing-a-cl For Build Team: go/ab-third-party-imports Bug: http://b/365556358 Original import of the code can be found at: https://googleplex-android.googlesource.com/platform/external/libopenapv/+/refs/heads/third-party-review. Security Questionnaire: http://b/365556358#comment1 Test: mm Change-Id: Icbddab38d5e4d4bc847274b2d23799c6f7aaa01b
OpenAPV provides the reference implementation of the APV codec which can be used to record professional-grade video and associated metadata without quality degradation. OpenAPV is free and open source software provided by LICENSE.
The OpenAPV supports the following features:
The APV codec is a professional video codec, which was developed in response to the need for professional level high quality video recording and post production. The primary purpose of the APV codec is for use in professional video recording and editing workflows for various types of content.
APV codec utilizes technologies known to be over 20 years to achieve a royalty free codec. APV builds a video codec using only conventional coding technologies, which consist of traditional methods published between the early 1980s and the end of the 1990s.
The APV codec standard has the following features:
Build Requirements
For ARM
Build Instructions PC
cmake -DCMAKE_BUILD_TYPE=Release -S . -B build cmake --build build
Build Instructions ARM
cmake -DCMAKE_BUILD_TYPE=Release -S . -B build-arm -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DARM=TRUE -DCMAKE_SYSTEM_PROCESSOR=aarch64 cmake --build build-arm
Output Location
Encoder as input require raw YUV file (422, 444), 10-bit or more.
Displaying help:
$oapv_app_enc --help
Encoding:
$oapv_app_enc -i input_1920x1080_yuv422_10bit.yuv -w 1920 -h 1080 -d 10 -z 30 -o encoded.apv
Decoder output can be in yuv or y4m formats.
Displaying help:
$oapv_app_dec --help
Decoding:
$oapv_app_dec -i encoded.apv -o output.y4m
In build directory run:
ctest
For generating package ready for distribution (default deb) execute in build directory:
cpack
or other formats (tgz, zip etc.):
cpack -G TGZ
See LICENSE file for details.