From 74cd759629405d81e8ad977dec684d4ce6a6478b Mon Sep 17 00:00:00 2001 From: Heinz Wiesinger Date: Fri, 3 Mar 2017 20:55:21 +0100 Subject: [PATCH] multimedia/ffmpeg: Updated for version 3.2.4. Synced with the SlackBuild available in -current. Signed-off-by: Heinz Wiesinger --- multimedia/ffmpeg/README | 35 ++++-- multimedia/ffmpeg/ffmpeg.SlackBuild | 176 ++++++++++++++++------------ multimedia/ffmpeg/ffmpeg.info | 6 +- 3 files changed, 130 insertions(+), 87 deletions(-) diff --git a/multimedia/ffmpeg/README b/multimedia/ffmpeg/README index 9a96529f01..b287ad6cf3 100644 --- a/multimedia/ffmpeg/README +++ b/multimedia/ffmpeg/README @@ -8,10 +8,12 @@ You can enable a lot of optional (not-autodetected) features by passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild): ASS=yes|no (default: no), requires libass BLURAY=yes|no (default: no), requires libbluray +BS2B=yes|no (default: no), requires libbs2b CELT=yes|no (default: no), requires celt +CHROMAPRINT=yes|no (default: no), requires chromaprint DC1394=yes|no (default: no), requires libdc1394 DECKLINK=yes|no (default: no), requires decklink-sdk -FAAC=yes|no (default: no), requires faac (creates non-redistributable binary) +EBUR128=yes|no (default: no), requires libebur128 FDK_AAC=yes|no (default: no), requires libfdk-aac (creates non-redistributable binary) FLITE=yes|no (default: no), requires flite FREI0R=yes|no (default: no), requires frei0r @@ -22,16 +24,18 @@ ILBC=yes|no (default: no), requires libilbc LADSPA=yes|no (default: no), requires ladspa_sdk LAME=yes|no (default: no), requires lame MODPLUG=yes|no (default: no), requires libmodplug +NETCDF=yes|no (default: no), requires netcdf OPENAL=yes|no (default: no), requires OpenAL OPENCORE=yes|no (default: no), requires opencore-amr OPENCV=yes|no (default: no), requires opencv OPENSSL=yes|no (default: no), creates non-redistributable binary OPUS=yes|no (default: no), requires opus -QUVI=yes|no (default: no), requires libquvi RTMP=yes|no (default: no), requires rtmpdump +RUBBERBAND=yes|no (default: no), requires rubberband SCHROEDINGER=yes|no (default: no), requires schroedinger SNAPPY=yes|no (default: no), requires snappy SPEEX=yes|no (default: no), requires speex +TESSERACT=yes|no (default: no), requires tesseract TWOLAME=yes|no (default: no), requires twolame VIDSTAB=yes|no (default: no), requires vid.stab WEBP=yes|no (default: no), requires libwebp @@ -41,9 +45,26 @@ XVID=yes|no (default: no), requires xvidcore ZMQ=yes|no (default: no), requires zeromq ZVBI=yes|no (default: no), requires zvbi -An additional optional (autodetected) dependency is jack-audio-connection-kit. +Additional optional (autodetected) dependencies are jack-audio-connection-kit and +SDL2. The latter is needed for building ffplay. -Make sure to run this script in a real root shell ("su -") and that you -have either tetex or texlive installed. - -All of the mentioned requirements are available from SlackBuilds.org +Further, there are some more features with dependencies already available +in core Slackware. These are enabled by default, but can be disabled similar +to the other switches above: +CACA=yes|no (default: yes) +FONTCONFIG=yes|no (default: yes) +FREETYPE=yes|no (default: yes) +FRIBIDI=yes|no (default: yes) +GNUTLS=yes|no (default: yes) +JP2=yes|no (default: yes) +LIBCDIO=yes|no (default: yes) +LIBSSH=yes|no (default: yes) +OPENGL=yes|no (default: yes) +PULSEAUDIO=yes|no (default: yes) +SAMBA=yes|no (default: yes) +THEORA=yes|no (default: yes) +V4L2=yes|no (default: yes) +VORBIS=yes|no (default: yes) +VPX=yes|no (default: yes) +WAVPACK=yes|no (default: yes) +X11GRAB=yes|no (default: yes) diff --git a/multimedia/ffmpeg/ffmpeg.SlackBuild b/multimedia/ffmpeg/ffmpeg.SlackBuild index 93ff35efd1..f64d5dfb1a 100644 --- a/multimedia/ffmpeg/ffmpeg.SlackBuild +++ b/multimedia/ffmpeg/ffmpeg.SlackBuild @@ -2,7 +2,8 @@ # Slackware build script for ffmpeg -# Copyright 2010-2016 Heinz Wiesinger, Amsterdam, The Netherlands +# Copyright 2010-2017 Heinz Wiesinger, Amsterdam, The Netherlands +# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -26,7 +27,7 @@ # Modified by Robby Workman PRGNAM=ffmpeg -VERSION=${VERSION:-2.8.7} +VERSION=${VERSION:-3.2.4} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -57,23 +58,19 @@ else LIBDIRSUFFIX="" fi -# environment sanity checks -TEXI2HTML=$(which texi2html 2>/dev/null) - -if [ "$TEXI2HTML" = "" ]; then - echo "Could not find texi2html! Please make sure to have tetex or texlive installed" - echo "and that texi2html is in PATH." - exit 1 -fi - -# --enable-runtime-cpu is meant for libswscale only and -# has no influence on the other parts of ffmpeg so there's -# not really a point in bothering -PKGARCH=$(uname -m)_custom - -# Configure ffmpeg features not autodetected by default +# You can enable a lot of optional (not-autodetected) features by +# passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild). # Unfortunately ffmpeg's configure doesn't support --enable-feature=yes # syntax, so we have to do it the complicated way :/ +# Additional optional (autodetected) dependencies are: +# - jack-audio-connection-kit +# - libva +# - libvdpau +# - libX11 +# - libxcb +# - sdl2 +# - xz +# - zlib mp3lame="" ; [ "${LAME:-no}" != "no" ] && mp3lame="--enable-libmp3lame" libx264="" ; [ "${X264:-no}" != "no" ] && libx264="--enable-libx264" @@ -95,7 +92,6 @@ libopus="" ; [ "${OPUS:-no}" != "no" ] && libopus="--enable-libopus" libtwolame="" ; [ "${TWOLAME:-no}" != "no" ] && libtwolame="--enable-libtwolame" ladspa="" ; [ "${LADSPA:-no}" != "no" ] && ladspa="--enable-ladspa" libflite="" ; [ "${FLITE:-no}" != "no" ] && libflite="--enable-libflite" -libquvi="" ; [ "${QUVI:-no}" != "no" ] && libquvi="--enable-libquvi" libvidstab="" ; [ "${VIDSTAB:-no}" != "no" ] && libvidstab="--enable-libvidstab" libx265="" ; [ "${X265:-no}" != "no" ] && libx265="--enable-libx265" libzvbi="" ; [ "${ZVBI:-no}" != "no" ] && libzvbi="--enable-libzvbi" @@ -103,12 +99,15 @@ libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopen libgme="" ; [ "${GME:-no}" != "no" ] && libgme="--enable-libgme" libsnappy="" ; [ "${SNAPPY:-no}" != "no" ] && libsnappy="--enable-libsnappy" libwebp="" ; [ "${WEBP:-no}" != "no" ] && libwebp="--enable-libwebp" -#opencl=""; [ "${OPENCL:-no}" != "no" ] && opencl="--enable-opencl" - -opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \ +libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq" +libbs2b="" ; [ "${BS2B:-no}" != "no" ] && libbs2b="--enable-libbs2b" +libebur128="" ; [ "${EBUR128:-no}" != "no" ] && libebur128="--enable-libebur128" +rubberband="" ; [ "${RUBBERBAND:-no}" != "no" ] && rubberband="--enable-librubberband" +tesseract="" ; [ "${TESSERACT:-no}" != "no" ] && tesseract="--enable-libtesseract" +netcdf="" ; [ "${NETCDF:-no}" != "no" ] && netcdf="--enable-netcdf" +chromaprint="" ; [ "${CHROMAPRINT:-no}" != "no" ] && chromaprint="--enable-chromaprint" +opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \ opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb" -libfaac="" ; [ "${FAAC:-no}" != "no" ] && \ - { libfaac="--enable-libfaac" ; non_free="--enable-nonfree" ; } fdk="" ; [ "${FDK_AAC:-no}" != "no" ] && \ { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; } ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \ @@ -117,8 +116,28 @@ decklink="" ; [ "${DECKLINK:-no}" != "no" ] && \ { decklink="--enable-decklink" ; \ SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink" ; } -# zeromq support requires zeromq > 3.x -libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq" +# Default enabled features: +#opencl="" ; [ "${OPENCL:-yes}" != "no" ] && opencl="--enable-opencl" +fontconfig="" ; [ "${FONTCONFIG:-yes}" != "no" ] && fontconfig="--enable-libfontconfig" +freetype="" ; [ "${FREETYPE:-yes}" != "no" ] && freetype="--enable-libfreetype" +fribidi="" ; [ "${FRIBIDI:-yes}" != "no" ] && fribidi="--enable-libfribidi" +gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls" +libcaca="" ; [ "${CACA:-yes}" != "no" ] && libcaca="--enable-libcaca" +libcdio="" ; [ "${LIBCDIO:-yes}" != "no" ] && libcdio="--enable-libcdio" +libssh="" ; [ "${LIBSSH:-yes}" != "no" ] && libssh="--enable-libssh" +libtheora="" ; [ "${THEORA:-yes}" != "no" ] && libtheora="--enable-libtheora" +libv4l2="" ; [ "${V4L2:-yes}" != "no" ] && libv4l2="--enable-libv4l2" +libvorbis="" ; [ "${VORBIS:-yes}" != "no" ] && libvorbis="--enable-libvorbis" +libvpx="" ; [ "${VPX:-yes}" != "no" ] && libvpx="--enable-libvpx" +opengl="" ; [ "${OPENGL:-yes}" != "no" ] && opengl="--enable-opengl" +openjpeg="" ; [ "${JP2:-yes}" != "no" ] && openjpeg="--enable-libopenjpeg" +pulse="" ; [ "${PULSEAUDIO:-yes}" != "no" ] && pulse="--enable-libpulse" +samba="" ; [ "${SAMBA:-yes}" != "no" ] && samba="--enable-libsmbclient" +wavpack="" ; [ "${WAVPACK:-yes}" != "no" ] && wavpack="--enable-libwavpack" +x11grab="" ; [ "${X11GRAB:-yes}" != "no" ] && x11grab="--enable-x11grab" + +# Disable patent encumbered features: +aac="" ; [ "${AAC:-yes}" != "yes" ] && aac="--disable-encoder=aac" set -e @@ -135,12 +154,12 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# Fix linking with flite +# Fix linking with flite: sed -i "s| -lflite\"| -lflite -lm -lasound\"|" \ ./configure -CFLAGS="$SLKCFLAGS -I/usr/include/openmj2-2.1" \ -CXXFLAGS="$SLKCFLAGS -I/usr/include/openmj2-2.1" \ +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ @@ -150,65 +169,67 @@ CXXFLAGS="$SLKCFLAGS -I/usr/include/openmj2-2.1" \ --disable-debug \ --enable-shared \ --disable-static \ - --enable-pthreads \ - --enable-libtheora \ - --enable-libvorbis \ --enable-gpl \ --enable-version3 \ - --enable-postproc \ - --enable-swscale \ - --enable-x11grab \ - --enable-avfilter \ --enable-avresample \ - --enable-gnutls \ - --enable-libcdio \ - --enable-libssh \ - --enable-libcaca \ - --enable-libsmbclient \ - --enable-opengl \ - --enable-libvpx \ - --enable-libpulse \ - --enable-libopenjpeg \ - --enable-libwavpack \ - --enable-libfreetype \ - --enable-libfribidi \ - --enable-fontconfig \ --arch=$ARCH \ - $libdc1394 \ - $mp3lame \ - $libfaac \ - $libxvid \ - $libx264 \ - $libspeex \ - $dirac_fast \ $non_free \ - $libgsm \ - $librtmp \ - $opencore_amr \ - $libfrei0r \ - $libcelt \ - $libbluray \ + $aac \ + $chromaprint \ + $decklink \ + $dirac_fast \ + $fdk \ + $fontconfig \ + $freetype \ + $fribidi \ + $gnutls \ + $ladspa \ $libass \ - $libopenal \ + $libbluray \ + $libbs2b \ + $libcaca \ + $libcdio \ + $libcelt \ + $libdc1394 \ + $libebur128 \ + $libflite \ + $libfrei0r \ + $libgme \ + $libgsm \ $libiec61883 \ $libilbc \ $libmodplug \ - $libopus \ - $libtwolame \ - $ladspa \ - $fdk \ - $libflite \ - $libquvi \ - $libvidstab \ - $libx265 \ - $libzvbi \ + $libopenal \ $libopencv \ - $decklink \ - $libgme \ + $libopus \ + $librtmp \ $libsnappy \ + $libspeex \ + $libssh \ + $libtheora \ + $libtwolame \ + $libv4l2 \ + $libvidstab \ + $libvorbis \ + $libvpx \ $libwebp \ + $libx264 \ + $libx265 \ + $libxvid \ + $libzmq \ + $libzvbi \ + $mp3lame \ + $netcdf \ + $opencore_amr \ + $opengl \ + $openjpeg \ + $pulse \ + $rubberband \ + $samba \ $ssl \ - $libzmq + $tesseract \ + $wavpack \ + $x11grab make make install DESTDIR=$PKG @@ -220,8 +241,9 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \ find $PKG/usr/man -type f -exec gzip -9 {} \; mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/txt -cp -a Changelog COPYING* CREDITS INSTALL* LICENSE* MAINTAINERS README* RELEASE \ - VERSION $PKG/usr/doc/$PRGNAM-$VERSION +cp -a Changelog COPYING* CREDITS INSTALL* LICENSE* MAINTAINERS README* \ + RELEASE VERSION \ + $PKG/usr/doc/$PRGNAM-$VERSION cp -a doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION/txt/ find . -name "RELEASE_NOTES" -exec cp -a {} $PKG/usr/doc/$PRGNAM-$VERSION/ \; cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild @@ -230,4 +252,4 @@ mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$PKGARCH-$BUILD$TAG.${PKGTYPE:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/multimedia/ffmpeg/ffmpeg.info b/multimedia/ffmpeg/ffmpeg.info index 4f26dced35..f187f17aa0 100644 --- a/multimedia/ffmpeg/ffmpeg.info +++ b/multimedia/ffmpeg/ffmpeg.info @@ -1,8 +1,8 @@ PRGNAM="ffmpeg" -VERSION="2.8.7" +VERSION="3.2.4" HOMEPAGE="http://www.ffmpeg.org" -DOWNLOAD="http://www.ffmpeg.org/releases/ffmpeg-2.8.7.tar.xz" -MD5SUM="7e5b1c98eedfc3a364fa8c4095deeae5" +DOWNLOAD="http://www.ffmpeg.org/releases/ffmpeg-3.2.4.tar.xz" +MD5SUM="39fd71024ac76ba35f04397021af5606" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="%README%"