xavs2 is an open-source encoder of AVS2-P2/IEEE1857.4
video coding standard.
A decoder, davs2, can be found at Github or Gitee (mirror in China).
Use VS2013
or later version of visual studio to open the solution file ./build/vs2013/xavs2.sln
,
then set the xavs2
as the start project and build it.
- A
shell executor
, i.e. the bash in git for windows, is needed and should be found inPATH
variable. For example, the pathC:\Program Files\Git\bin
can be added if git-for-windows is installed. vsyasm
is needed and1.2.0
is suggested for windows platform. It can be downloaded through: http://yasm.tortall.net/Download.html . A later version1.3.0
(unofficial revision, please read the instructions ofyasm
to build it for your work), can be found in https://github.com/luofalei/yasm/tree/vs2013 . The installation ofvsyasm
is as follows (if you were usingVS2013
):
(1) Copy `vsyasm.exe` to the following directory,
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\"
(2) Copy the other 3 files in `vsyasm` to the `MSBuild template` directorty, as follows,
"C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\"
(3) Re-open the solution.
$ cd build/linux
$ ./configure
$ make
./xavs2 [-f encoder.cfg [-f seq.cfg]] [-p ParameterName=value] [--ParameterName=value]
./xavs2 -f encoder.cfg -f seq4K.cfg -p InputFile=input.yuv -p FramesToBeEncoded=500 \
-p preset=0 -p recon=. -p initial_qp=32 -p OutputFile=test.avs
./xavs2 -p InputFile=input.yuv --FramesToBeEncoded=500 --FrameRate=6 \
--SourceWidth=3840 --SourceHeight=2160 --InputSampleBitDepth=8 --SampleBitDepth=8 \
--thread_frames=1 --thread_rows=1 --preset=0 \
--recon=. --initial_qp=32 --OutputFile=test.avs
Use the "Issues" tab on Github.
We welcome community contributions to this project. Thank you for your time! By contributing to the project, you agree to the license and copyright terms therein and to the release of your contribution under these terms.
If you have some bugs or features fixed, and would like to share with the public, please make a Pull Request.
-
Validate that your changes do not break a build
-
Perform smoke tests and ensure they pass
-
Submit a pull request for review to the maintainer
-
high bit-depth (i.e. 10-bit) support and SIMD optimization.
-
Rate-control in CBR, VBR.
-
Adaptive scene change detection and frame type decision.
-
NEON support for ARM platform.
-
and so on.
AVS2-P2/IEEE1857.4
Encoder: xavs2 (Github), xavs2 (mirror in China)
AVS2-P2/IEEE1857.4
Decoder: davs2 (Github), davs2 (mirror in China)