2016-11-30 18:47:03 +01:00
|
|
|
TERMUX_PKG_HOMEPAGE=https://ffmpeg.org
|
2015-12-10 12:57:56 +01:00
|
|
|
TERMUX_PKG_DESCRIPTION="Tools and libraries to manipulate a wide range of multimedia formats and protocols"
|
2016-11-30 18:47:03 +01:00
|
|
|
# NOTE: mpv has to be rebuilt and version bumped after updating ffmpeg.
|
2018-02-12 19:53:19 +01:00
|
|
|
TERMUX_PKG_VERSION=3.4.2
|
|
|
|
TERMUX_PKG_SHA256=2b92e9578ef8b3e49eeab229e69305f5f4cbc1fdaa22e927fc7fca18acccd740
|
2016-05-03 13:45:59 +02:00
|
|
|
TERMUX_PKG_SRCURL=https://www.ffmpeg.org/releases/ffmpeg-${TERMUX_PKG_VERSION}.tar.xz
|
2015-12-10 12:57:56 +01:00
|
|
|
# libbz2 is used by matroska decoder:
|
2016-11-26 18:55:26 +01:00
|
|
|
# libvpx is the VP8 & VP9 video encoder for WebM, see
|
|
|
|
# https://trac.ffmpeg.org/wiki/Encode/VP8 and https://trac.ffmpeg.org/wiki/Encode/VP9
|
2018-02-01 22:24:34 +01:00
|
|
|
TERMUX_PKG_DEPENDS="libbz2, libsoxr, libx264, libx265, xvidcore, libvorbis, libmp3lame, libopus, libvpx, libgnutls, libandroid-glob"
|
2015-12-10 12:57:56 +01:00
|
|
|
TERMUX_PKG_INCLUDE_IN_DEVPACKAGE="share/ffmpeg/examples"
|
2015-12-13 21:06:51 +01:00
|
|
|
TERMUX_PKG_CONFLICTS="libav"
|
2015-12-10 12:57:56 +01:00
|
|
|
|
|
|
|
termux_step_configure () {
|
|
|
|
cd $TERMUX_PKG_BUILDDIR
|
2016-03-25 02:42:59 +01:00
|
|
|
|
2017-02-12 23:12:29 +01:00
|
|
|
export ASFLAGS="-no-integrated-as"
|
|
|
|
|
2016-03-25 02:42:59 +01:00
|
|
|
local _EXTRA_CONFIGURE_FLAGS=""
|
2015-12-10 12:57:56 +01:00
|
|
|
if [ $TERMUX_ARCH = "arm" ]; then
|
|
|
|
_ARCH="armeabi-v7a"
|
2016-03-25 02:42:59 +01:00
|
|
|
_EXTRA_CONFIGURE_FLAGS="--enable-neon"
|
2015-12-10 12:57:56 +01:00
|
|
|
elif [ $TERMUX_ARCH = "i686" ]; then
|
|
|
|
_ARCH="x86"
|
2016-03-25 02:42:59 +01:00
|
|
|
# Specify --disable-asm to prevent text relocations on i686,
|
|
|
|
# see https://trac.ffmpeg.org/ticket/4928
|
|
|
|
_EXTRA_CONFIGURE_FLAGS="--disable-asm"
|
2016-06-17 22:50:36 +02:00
|
|
|
elif [ $TERMUX_ARCH = "x86_64" ]; then
|
|
|
|
_ARCH="x86_64"
|
2016-03-25 02:42:59 +01:00
|
|
|
elif [ $TERMUX_ARCH = "aarch64" ]; then
|
2015-12-10 12:57:56 +01:00
|
|
|
_ARCH=$TERMUX_ARCH
|
2016-03-25 02:42:59 +01:00
|
|
|
_EXTRA_CONFIGURE_FLAGS="--enable-neon"
|
|
|
|
else
|
2017-01-22 23:06:48 +01:00
|
|
|
termux_error_exit "Unsupported arch: $TERMUX_ARCH"
|
2015-12-10 12:57:56 +01:00
|
|
|
fi
|
2016-03-25 02:42:59 +01:00
|
|
|
|
2016-10-19 23:21:32 +02:00
|
|
|
# --disable-lzma to avoid problem with shared library clashes, see
|
|
|
|
# https://github.com/termux/termux-packages/issues/511
|
|
|
|
# Only used for LZMA compression support for tiff decoder.
|
2015-12-10 12:57:56 +01:00
|
|
|
$TERMUX_PKG_SRCDIR/configure \
|
|
|
|
--arch=${_ARCH} \
|
2017-02-12 23:12:29 +01:00
|
|
|
--as=$AS \
|
|
|
|
--cc=$CC \
|
|
|
|
--cxx=$CXX \
|
2015-12-10 12:57:56 +01:00
|
|
|
--cross-prefix=${TERMUX_HOST_PLATFORM}- \
|
2016-03-25 02:42:59 +01:00
|
|
|
--disable-avdevice \
|
2015-12-10 12:57:56 +01:00
|
|
|
--disable-ffserver \
|
|
|
|
--disable-static \
|
2016-09-16 10:21:25 +02:00
|
|
|
--disable-symver \
|
2016-10-19 23:21:32 +02:00
|
|
|
--disable-lzma \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-cross-compile \
|
2017-06-16 22:26:48 +02:00
|
|
|
--enable-gnutls \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-gpl \
|
2016-03-16 19:28:30 +01:00
|
|
|
--enable-libmp3lame \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-libvorbis \
|
2016-09-15 14:35:28 +02:00
|
|
|
--enable-libopus \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-libx264 \
|
2017-01-11 08:04:41 +01:00
|
|
|
--enable-libx265 \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-libxvid \
|
2016-11-15 17:07:00 +01:00
|
|
|
--enable-libvpx \
|
2015-12-10 12:57:56 +01:00
|
|
|
--enable-shared \
|
2018-02-01 22:24:34 +01:00
|
|
|
--enable-libsoxr \
|
2015-12-10 12:57:56 +01:00
|
|
|
--prefix=$TERMUX_PREFIX \
|
2016-08-27 18:15:14 +02:00
|
|
|
--target-os=android \
|
2017-10-27 22:28:43 +02:00
|
|
|
--extra-libs="-landroid-glob" \
|
2016-03-25 02:42:59 +01:00
|
|
|
$_EXTRA_CONFIGURE_FLAGS
|
2015-12-10 12:57:56 +01:00
|
|
|
}
|
|
|
|
|