Home | History | Annotate | only in /external/libvpx/libvpx
Up to higher level directory
NameDateSize
.clang-format21-Aug-20182.8K
.mailmap21-Aug-20182K
args.c21-Aug-20185.9K
args.h21-Aug-20181.6K
AUTHORS21-Aug-20186K
build/21-Aug-2018
CHANGELOG21-Aug-201827.7K
codereview.settings21-Aug-2018214
configure21-Aug-201822.8K
docs.mk21-Aug-20181.6K
examples/21-Aug-2018
examples.mk21-Aug-201819K
ivfdec.c21-Aug-20183.1K
ivfdec.h21-Aug-2018746
ivfenc.c21-Aug-20181.7K
ivfenc.h21-Aug-2018915
keywords.dox21-Aug-20182.1K
libs.doxy_template21-Aug-201852.6K
libs.mk21-Aug-201822.4K
LICENSE21-Aug-20181.5K
mainpage.dox21-Aug-20181.5K
md5_utils.c21-Aug-20187.8K
md5_utils.h21-Aug-20181.4K
PATENTS21-Aug-20181.4K
rate_hist.c21-Aug-20187.7K
rate_hist.h21-Aug-20181.1K
README21-Aug-20185.1K
solution.mk21-Aug-20181.1K
test/21-Aug-2018
third_party/21-Aug-2018
tools/21-Aug-2018
tools.mk21-Aug-20184.4K
tools_common.c21-Aug-201813.2K
tools_common.h21-Aug-20184.2K
usage.dox21-Aug-20186.6K
usage_cx.dox21-Aug-2018449
usage_dx.dox21-Aug-20183.6K
video_common.h21-Aug-2018647
video_reader.c21-Aug-20182.2K
video_reader.h21-Aug-20181.8K
video_writer.c21-Aug-20182.1K
video_writer.h21-Aug-20181.4K
vp8/21-Aug-2018
vp9/21-Aug-2018
vpx/21-Aug-2018
vpx_dsp/21-Aug-2018
vpx_mem/21-Aug-2018
vpx_ports/21-Aug-2018
vpx_scale/21-Aug-2018
vpx_util/21-Aug-2018
vpxdec.c21-Aug-201834.6K
vpxenc.c21-Aug-201882.9K
vpxenc.h21-Aug-20181.4K
vpxstats.c21-Aug-20182.7K
vpxstats.h21-Aug-20181.1K
warnings.c21-Aug-20183.4K
warnings.h21-Aug-2018992
webmdec.cc21-Aug-20186.9K
webmdec.h21-Aug-20182.2K
webmenc.cc21-Aug-20183.6K
webmenc.h21-Aug-20181.5K
y4menc.c21-Aug-20182.5K
y4menc.h21-Aug-2018899
y4minput.c21-Aug-201839.5K
y4minput.h21-Aug-20181.8K

README

      1 README - 24 January 2018
      2 
      3 Welcome to the WebM VP8/VP9 Codec SDK!
      4 
      5 COMPILING THE APPLICATIONS/LIBRARIES:
      6   The build system used is similar to autotools. Building generally consists of
      7   "configuring" with your desired build options, then using GNU make to build
      8   the application.
      9 
     10   1. Prerequisites
     11 
     12     * All x86 targets require the Yasm[1] assembler be installed.
     13     * All Windows builds require that Cygwin[2] be installed.
     14     * Building the documentation requires Doxygen[3]. If you do not
     15       have this package, the install-docs option will be disabled.
     16     * Downloading the data for the unit tests requires curl[4] and sha1sum.
     17       sha1sum is provided via the GNU coreutils, installed by default on
     18       many *nix platforms, as well as MinGW and Cygwin. If coreutils is not
     19       available, a compatible version of sha1sum can be built from
     20       source[5]. These requirements are optional if not running the unit
     21       tests.
     22 
     23     [1]: http://www.tortall.net/projects/yasm
     24     [2]: http://www.cygwin.com
     25     [3]: http://www.doxygen.org
     26     [4]: http://curl.haxx.se
     27     [5]: http://www.microbrew.org/tools/md5sha1sum/
     28 
     29   2. Out-of-tree builds
     30   Out of tree builds are a supported method of building the application. For
     31   an out of tree build, the source tree is kept separate from the object
     32   files produced during compilation. For instance:
     33 
     34     $ mkdir build
     35     $ cd build
     36     $ ../libvpx/configure <options>
     37     $ make
     38 
     39   3. Configuration options
     40   The 'configure' script supports a number of options. The --help option can be
     41   used to get a list of supported options:
     42     $ ../libvpx/configure --help
     43 
     44   4. Cross development
     45   For cross development, the most notable option is the --target option. The
     46   most up-to-date list of supported targets can be found at the bottom of the
     47   --help output of the configure script. As of this writing, the list of
     48   available targets is:
     49 
     50     arm64-android-gcc
     51     arm64-darwin-gcc
     52     arm64-linux-gcc
     53     armv7-android-gcc
     54     armv7-darwin-gcc
     55     armv7-linux-rvct
     56     armv7-linux-gcc
     57     armv7-none-rvct
     58     armv7-win32-vs11
     59     armv7-win32-vs12
     60     armv7-win32-vs14
     61     armv7-win32-vs15
     62     armv7s-darwin-gcc
     63     armv8-linux-gcc
     64     mips32-linux-gcc
     65     mips64-linux-gcc
     66     ppc64-linux-gcc
     67     ppc64le-linux-gcc
     68     sparc-solaris-gcc
     69     x86-android-gcc
     70     x86-darwin8-gcc
     71     x86-darwin8-icc
     72     x86-darwin9-gcc
     73     x86-darwin9-icc
     74     x86-darwin10-gcc
     75     x86-darwin11-gcc
     76     x86-darwin12-gcc
     77     x86-darwin13-gcc
     78     x86-darwin14-gcc
     79     x86-darwin15-gcc
     80     x86-darwin16-gcc
     81     x86-iphonesimulator-gcc
     82     x86-linux-gcc
     83     x86-linux-icc
     84     x86-os2-gcc
     85     x86-solaris-gcc
     86     x86-win32-gcc
     87     x86-win32-vs10
     88     x86-win32-vs11
     89     x86-win32-vs12
     90     x86-win32-vs14
     91     x86-win32-vs15
     92     x86_64-android-gcc
     93     x86_64-darwin9-gcc
     94     x86_64-darwin10-gcc
     95     x86_64-darwin11-gcc
     96     x86_64-darwin12-gcc
     97     x86_64-darwin13-gcc
     98     x86_64-darwin14-gcc
     99     x86_64-darwin15-gcc
    100     x86_64-darwin16-gcc
    101     x86_64-iphonesimulator-gcc
    102     x86_64-linux-gcc
    103     x86_64-linux-icc
    104     x86_64-solaris-gcc
    105     x86_64-win64-gcc
    106     x86_64-win64-vs10
    107     x86_64-win64-vs11
    108     x86_64-win64-vs12
    109     x86_64-win64-vs14
    110     x86_64-win64-vs15
    111     generic-gnu
    112 
    113   The generic-gnu target, in conjunction with the CROSS environment variable,
    114   can be used to cross compile architectures that aren't explicitly listed, if
    115   the toolchain is a cross GNU (gcc/binutils) toolchain. Other POSIX toolchains
    116   will likely work as well. For instance, to build using the mipsel-linux-uclibc
    117   toolchain, the following command could be used (note, POSIX SH syntax, adapt
    118   to your shell as necessary):
    119 
    120     $ CROSS=mipsel-linux-uclibc- ../libvpx/configure
    121 
    122   In addition, the executables to be invoked can be overridden by specifying the
    123   environment variables: CC, AR, LD, AS, STRIP, NM. Additional flags can be
    124   passed to these executables with CFLAGS, LDFLAGS, and ASFLAGS.
    125 
    126   5. Configuration errors
    127   If the configuration step fails, the first step is to look in the error log.
    128   This defaults to config.log. This should give a good indication of what went
    129   wrong. If not, contact us for support.
    130 
    131 VP8/VP9 TEST VECTORS:
    132   The test vectors can be downloaded and verified using the build system after
    133   running configure. To specify an alternate directory the
    134   LIBVPX_TEST_DATA_PATH environment variable can be used.
    135 
    136   $ ./configure --enable-unit-tests
    137   $ LIBVPX_TEST_DATA_PATH=../libvpx-test-data make testdata
    138 
    139 CODE STYLE:
    140   The coding style used by this project is enforced with clang-format using the
    141   configuration contained in the .clang-format file in the root of the
    142   repository.
    143 
    144   Before pushing changes for review you can format your code with:
    145   # Apply clang-format to modified .c, .h and .cc files
    146   $ clang-format -i --style=file \
    147     $(git diff --name-only --diff-filter=ACMR '*.[hc]' '*.cc')
    148 
    149   Check the .clang-format file for the version used to generate it if there is
    150   any difference between your local formatting and the review system.
    151 
    152   See also: http://clang.llvm.org/docs/ClangFormat.html
    153 
    154 SUPPORT
    155   This library is an open source project supported by its community. Please
    156   email webm-discuss (a] webmproject.org for help.
    157 
    158