Skip to content
forked from uavs3/uavs3d

AVS3 decoder which supports AVS3-P2 baseline profile.

License

Notifications You must be signed in to change notification settings

dujiangpku/uavs3d

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uavs3d

uavs3d is an opensource and cross-platform avs3 decoder, supports AVS3-P2 baseline profile.
features:

  1. AVS3-P2 baseline profile.
  2. supports to compile for Android/IOS/Windows/Linux/MacOS systems.
  3. optimized for ARMv7/ARMv8/SSE4/AVX2 chips.
  4. 10bit decoding on all supported platforms.

license

Copyright reserved by “Peking University Shenzhen Graduate School”, “Peng Cheng Laboratory”, and “Guangdong Bohua UHD Innovation Corporation”

This program is a free software. You can redistribute it and/or modify it under the terms of the BSD 4-clause license.
For more details, please view the file "COPYING" in the project.

compile

The default configuration only support 8bit decoding.
To support 10bit streams decoding, edit source/decore/com_def.h : #define BIT_DEPTH 10

windows

Prerequisites: Visual Studio 2017

build:

  1. ./version.bat (to generate version.h)
  2. solution file: build/x86_windows/uavs3d.sln

linux/mac

Prerequisites:

  1. gawk (http://www.gnu.org/software/gawk/)
  2. CMake (https://cmake.org) version 3.1 or higher

Build:

  1. mkdir build/linux
  2. cd build/linux && cmake ../..
  3. make && make install

to build shared library, set BUILD_SHARED_LIBS=1 please.

ios

Prerequisites: XCode

Build:

  1. ./version.sh (generate the version.h)
  2. xcode solution file: build/ios/uavs3d.xcodeproj

android

Prerequisites: Android NDK (https://developer.android.google.cn/ndk/downloads/).

Build ndk library or executable file:

  1. ./version.sh (generate the version.h)
  2. cd build/android/ndk/jni
  3. $NDK_PATH/ndk-build

Run tests

window/linux/mac/android

sample: ./uavs3d -i input.avs3 -o output.yuv -t 8 -l 2 -s 1

Arguments:

short name long name introduction
-h --help Print this help
-v --version Version information
-i --input Input file
-o --output Output file
-l --loglevel Log level:
0: no message; 1: seq level; 2: frame level (default)
-t --threads Number of frame-level threads
-f --frames Total frames to decode
-s --check_md5 Enable to check md5 or not

ios

Edit build/ios/uavs3d/main.m to configure decoding options.

Contributors

This program is originally developed by the team of Prof.Ronggang Wang ([email protected]) at Peking University Shenzhen Graduate School.

  • Main contributors:

    • Zhenyu Wang ([email protected]), Peking University Shenzhen Graduate School.
    • Bingjie Han ([email protected]), Peking University Shenzhen Graduate School.
    • Jiang Du, Peking University Shenzhen Graduate School.
    • Kui Fan, Peking University Shenzhen Graduate School.
    • Xi Xie, Peking University Shenzhen Graduate School.
    • Guisen Xu, Peking University Shenzhen Graduate School.
    • Xufeng Li, Peking University Shenzhen Graduate School.
    • Yangang Cai, Peking University Shenzhen Graduate School.
    • Hao Lv, Peng Cheng Laboratory.
    • Min Chen.

    ** Ronggang Wang ([email protected]), Peking University Shenzhen Graduate School

About

AVS3 decoder which supports AVS3-P2 baseline profile.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 66.9%
  • Assembly 32.6%
  • Objective-C 0.2%
  • CMake 0.1%
  • Makefile 0.1%
  • Shell 0.1%