GithubHelp home page GithubHelp logo

hnjywjw / uavs3d Goto Github PK

View Code? Open in Web Editor NEW

This project forked from uavs3/uavs3d

0.0 0.0 0.0 1.11 MB

AVS3 decoder which supports AVS3-P2 baseline profile.

License: Other

Shell 0.07% C 66.84% Objective-C 0.18% Assembly 32.62% Makefile 0.13% CMake 0.16% Batchfile 0.01%

uavs3d's Introduction

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.
  5. The uavs3 codec has supported x86 and arm platforms, and has been tested and verified on the Kunpeng processor.
  6. The ARM platform recommends the Kunpeng processor.

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 3-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: cmake -DCOMPILE_10BIT=1

windows

Prerequisites: Visual Studio 2017

build:

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

To support 10bit streams decoding, edit source/decore/com_def.h : #define COMPILE_10BIT 1

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 -DCOMPILE_10BIT=0 ../..
  3. make && make install

To support 10bit streams decoding: cmake -DCOMPILE_10BIT=1 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

To support 10bit streams decoding: Find Xcode -> PROJECT -> Build Settings -> Preprocessor Macros, add COMPILE_10BIT=1

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

To support 10bit streams decoding: edit build/android/ndk/jni/uavs3d_main.mk:

LOCAL_CFLAGS += -DCOMPILE_10BIT=1

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

uavs3d's People

Contributors

dujiangpku avatar hanbingjie515 avatar zywang-sirius avatar 1480c1 avatar chenm001 avatar saindriches avatar quink-black avatar mathieu-aubin avatar scu319hy avatar lifegpc avatar hecaiyuan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.