#### Beyond Linux® From Scratch (System V Edition) - Version 12.3

### Chapter 42. Multimedia Libraries and Drivers

- Prev

  libvorbis-1.3.7

- Next

  mlt-7.30.0

- Up
- Home

# libvpx-1.15.0

## Introduction to libvpx

This package, from the WebM project, provides the reference implementations of the VP8 Codec (used in most current HTML5 video) and of the next-generation VP9 Codec.

This package is known to build and work properly using an LFS 12.3 platform.

### Package Information

- Download (HTTP): https://github.com/webmproject/libvpx/archive/v1.15.0/libvpx-1.15.0.tar.gz

- Download MD5 sum: 6d2b7b8e1c06f4b10ae63ca22491f8a4

- Download size: 5.4 MB

- Estimated disk space required: 68 MB (add 1.6 GB for tests)

- Estimated build time: 0.4 SBU (Using parallelism=4; add approx 11 SBU for tests using parallelism=4, including download time)

### libvpx Dependencies

#### Recommended

yasm-1.3.0 or NASM-2.16.03, and Which-2.23 (so configure can find yasm)

#### Optional

cURL-8.12.1 (to download test files) and Doxygen-1.13.2 (to build documentation)

### Note

An Internet connection is needed for some tests of this package. The system certificate store may need to be set up with make-ca-1.15 before testing this package.

## Installation of libvpx

Install libvpx by running the following commands:

    sed -i 's/cp -p/cp/' build/make/Makefile &&

    mkdir libvpx-build            &&
    cd    libvpx-build            &&

    ../configure --prefix=/usr    \
                 --enable-shared  \
                 --disable-static &&
    make

To test the results, issue: LD_LIBRARY_PATH=. make test. The test suite downloads many files as part of its test process. A few parts of it will use all available cores.

Now, as the `root` user:

    make install

## Command Explanations

sed ... : This command corrects the ownership and permissions of installed files.

mkdir libvpx-build && cd libvpx-build: The libvpx developers recommend building in a dedicated build directory.

`--disable-static`: This switch prevents installation of static versions of the libraries.

`--disable-vp8`: This switch prevents building support for the VP8 codec.

`--disable-vp9`: This switch prevents building support for the VP9 codec.

`--target=generic-gnu`: This switch disables optimizations specific to x86 and x86-64, allowing to build this package without nasm and yasm installed.

LD_LIBRARY_PATH=.: This is needed for the test suite to use the library that was just built.

## Contents

Installed Programs: vpxdec and vpxenc
Installed Libraries: libvpx.so
Installed Directories: /usr/include/vpx

### Short Descriptions

vpxdec | is the WebM Project VP8 and VP9 decoder
vpxenc | is the WebM project VP8 and VP9 encoder
`libvpx.so` | provides functions to use the VP8 and VP9 video codecs

- Prev

  libvorbis-1.3.7

- Next

  mlt-7.30.0

- Up
- Home