From 7d1edb7f97e3140223df90923436d143a3d515ae Mon Sep 17 00:00:00 2001 From: Rik Veenboer Date: Sun, 1 Jan 2017 14:27:51 +0100 Subject: [PATCH] build ffmpeg using ready-made script --- build/Makefile | 2 +- build/make/ffmpeg-kodi.mk | 2 ++ build/make/ffmpeg.mk | 5 +++-- build/make/kodi.mk | 2 +- build/scripts/ffmpeg-kodi.sh | 18 ++++++++++++++++++ build/scripts/ffmpeg.sh | 27 ++++++++++++++------------- 6 files changed, 39 insertions(+), 17 deletions(-) create mode 100644 build/make/ffmpeg-kodi.mk create mode 100644 build/scripts/ffmpeg-kodi.sh diff --git a/build/Makefile b/build/Makefile index 6b7188a..dc1f331 100644 --- a/build/Makefile +++ b/build/Makefile @@ -4,7 +4,7 @@ PROXY = $(shell ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | cut -d' ' -f1) TIMEZONE = Europe/Amsterdam JOBS = 2 CLEANUP = true -ARGS = --rm=false --no-cache=true +ARGS = --rm=false --no-cache=false include $(wildcard $(DOCKER_HOME)/build/make/*.mk) define add diff --git a/build/make/ffmpeg-kodi.mk b/build/make/ffmpeg-kodi.mk new file mode 100644 index 0000000..4c019cb --- /dev/null +++ b/build/make/ffmpeg-kodi.mk @@ -0,0 +1,2 @@ +ffmpeg-kodi: compile + $(call script,$@) diff --git a/build/make/ffmpeg.mk b/build/make/ffmpeg.mk index e64f9e5..4b48abc 100644 --- a/build/make/ffmpeg.mk +++ b/build/make/ffmpeg.mk @@ -1,2 +1,3 @@ -ffmpeg: compile - $(call script,ffmpeg) +ffmpeg: + $(call script,utilities) + $(call script,$@) \ No newline at end of file diff --git a/build/make/kodi.mk b/build/make/kodi.mk index b63d475..a055b77 100644 --- a/build/make/kodi.mk +++ b/build/make/kodi.mk @@ -1,4 +1,4 @@ -kodi: base compile transcoder ffmpeg +kodi: base compile transcoder ffmpeg-kodi $(call aux,headless.patch) $(call script,$@) $(call runit,$@) diff --git a/build/scripts/ffmpeg-kodi.sh b/build/scripts/ffmpeg-kodi.sh new file mode 100644 index 0000000..39ae342 --- /dev/null +++ b/build/scripts/ffmpeg-kodi.sh @@ -0,0 +1,18 @@ +## Environment +export_env FFMPEG_VERSION 2.8.6 +export_env KODI_VERSION 16.0 +export_env KODI_BRANCH Jarvis + +## FFmpeg +cd /opt +wget -O ffmpeg-$FFMPEG_VERSION.tar.gz https://github.com/xbmc/FFmpeg/archive/$FFMPEG_VERSION-$KODI_BRANCH-$KODI_VERSION.tar.gz +tar xvzf ffmpeg-$FFMPEG_VERSION.tar.gz +mv FFmpeg-$FFMPEG_VERSION-$KODI_BRANCH-$KODI_VERSION ffmpeg-$FFMPEG_VERSION +cd ffmpeg-$FFMPEG_VERSION +./configure --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libspeex --enable-shared --enable-pthreads --enable-libopenjpeg --enable-libfaac --enable-nonfree +make $JOBS +make install + +## Enable libraries +echo "/usr/local/lib" >> /etc/ld.so.conf +ldconfig diff --git a/build/scripts/ffmpeg.sh b/build/scripts/ffmpeg.sh index 39ae342..2cab7c4 100644 --- a/build/scripts/ffmpeg.sh +++ b/build/scripts/ffmpeg.sh @@ -1,18 +1,19 @@ -## Environment -export_env FFMPEG_VERSION 2.8.6 -export_env KODI_VERSION 16.0 -export_env KODI_BRANCH Jarvis +## Dependencies +apt_install_permanent zip sudo ## FFmpeg cd /opt -wget -O ffmpeg-$FFMPEG_VERSION.tar.gz https://github.com/xbmc/FFmpeg/archive/$FFMPEG_VERSION-$KODI_BRANCH-$KODI_VERSION.tar.gz -tar xvzf ffmpeg-$FFMPEG_VERSION.tar.gz -mv FFmpeg-$FFMPEG_VERSION-$KODI_BRANCH-$KODI_VERSION ffmpeg-$FFMPEG_VERSION -cd ffmpeg-$FFMPEG_VERSION -./configure --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libspeex --enable-shared --enable-pthreads --enable-libopenjpeg --enable-libfaac --enable-nonfree -make $JOBS -make install +git clone https://github.com/lutris/ffmpeg-nvenc.git +/opt/ffmpeg-nvenc/build.sh -## Enable libraries -echo "/usr/local/lib" >> /etc/ld.so.conf +## Enable libraries and binaries +mv /opt/ffmpeg-nvenc/ffmpeg-nvenc/ /opt/ffmpeg +echo "/opt/ffmpeg/lib" >> /etc/ld.so.conf ldconfig +ln -s /opt/ffmpeg/bin/* /usr/local/bin + +## Clean installation files +if [ $MODE == "minimal" ]; then + cd /opt + rm -r ffmpeg-nvenc +fi