]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
update Makefile.ffmpeg (#1359)
authorfat-fred <fatfred.iphone@googlemail.com>
Thu, 8 Oct 2020 20:32:37 +0000 (22:32 +0200)
committerGitHub <noreply@github.com>
Thu, 8 Oct 2020 20:32:37 +0000 (22:32 +0200)
-Include NASM 2.15.05
-Include newer x264
-Include x265 3.4
-Include VPX 1.9.0
-Include Theora 1.2.0alpha1
-Include fdk-aac 2.0.1
-Include NVCODEC 10.0.26.1
-Include ffmpeg 4.3.1
-remove ffmpeg.libx265.diff - its now in ffmpeg includet
-edited libx265.pie.diff for newer x265

Co-authored-by: fatfred <iphone@fatfred.net>
Makefile.ffmpeg
support/patches/ffmpeg.libx265.diff [deleted file]
support/patches/libx265.pie.diff

index 4036c500248d3c78f8cc348cfaf35aad0d31be35..f78179867406810ee41e3d36018a9f67762e6a12 100644 (file)
@@ -44,69 +44,72 @@ BSFS           = h264_mp4toannexb hevc_mp4toannexb
 FILTERS        = yadif format hwupload hwdownload scale null aresample anull
 HWACCELS       =
 
-NASM_VER       = 2.14.02
+NASM_VER       = 2.15.05
 NASM           = nasm-$(NASM_VER)
 NASM_TB        = $(NASM).tar.gz
 NASM_URL       = https://www.nasm.us/pub/nasm/releasebuilds/$(NASM_VER)/$(NASM_TB)
-NASM_SHA1      = bfa67d0d33f0c7b00c50d9f1bd33fd4d5df3c5d5
+NASM_SHA1      = 8a2a60b01d563c32dd216f94a99a20e6e31fd8aa
 NASM_DIFFS     = remove-invalid-pure_func-qualifiers.diff
 
-LIBX264        = x264-snapshot-20191216-2245
+LIBX264_VER    = db0d417728460c647ed4a847222a535b00d3dbcb
+LIBX264        = x264-$(LIBX264_VER)
 LIBX264_TB     = $(LIBX264).tar.bz2
-LIBX264_URL    = http://ftp.videolan.org/x264/snapshots/$(LIBX264_TB)
-LIBX264_SHA1   = 712f37aeabf3cb42f1ebe55588c33583636a7230
-
-LIBX265        = x265_3.2
-LIBX265_TB     = $(LIBX265).tar.gz
-LIBX265_URL    = http://ftp.videolan.org/videolan/x265/$(LIBX265_TB)
-LIBX265_SHA1   = 5922f88d0997c47e2c95feee95dc98bcb2e54871
+LIBX264_URL    = https://code.videolan.org/videolan/x264/-/archive/$(LIBX264_VER)/$(LIBX264_TB)
+LIBX264_SHA1   = 7b8da6f4283207b8ad77bab8890e3807f32013df
+
+LIBX265_VER    = 3.4
+LIBX265        = x265-$(LIBX265_VER)
+LIBX265_TB     = $(LIBX265_VER).tar.gz
+LIBX265_URL    = https://github.com/videolan/x265/archive/$(LIBX265_TB)
+LIBX265_SHA1   = eef65f2f9518f3396825675aa86bdf82a55aa0d9
 ifeq ($(CONFIG_PIE),yes)
 LIBX265_DIFFS  = libx265.pie.diff
 else
 LIBX265_DIFFS  = libx265.pic.diff
 endif
 
-LIBVPX_VER     = 1.8.2
+LIBVPX_VER     = 1.9.0
 LIBVPX         = libvpx-$(LIBVPX_VER)
 LIBVPX_TB      = $(LIBVPX).tar.gz
 LIBVPX_URL     = https://github.com/webmproject/libvpx/archive/v$(LIBVPX_VER)/$(LIBVPX_TB)
-LIBVPX_SHA1    = 7fbc7de47f59431fa2c5b76660f115963e83193d
+LIBVPX_SHA1    = 2ab8203ad8922bdf3256e4a197d1348fa8db9a62
 
 LIBOGG         = libogg-1.3.4
 LIBOGG_TB      = $(LIBOGG).tar.gz
 LIBOGG_URL     = https://ftp.osuosl.org/pub/xiph/releases/ogg/$(LIBOGG_TB)
 LIBOGG_SHA1    = 851cef020b346d44893e5d1c3dab83c675d479d9
 
-LIBTHEORA      = libtheora-1.1.1
+LIBTHEORA      = libtheora-1.2.0alpha1
 LIBTHEORA_TB   = $(LIBTHEORA).tar.gz
 LIBTHEORA_URL  = https://ftp.osuosl.org/pub/xiph/releases/theora/$(LIBTHEORA_TB)
-LIBTHEORA_SHA1 = 0b91be522746a29351a5ee592fd8160940059303
+LIBTHEORA_SHA1 = f03e6b1648b7574a249ee19cd386ff3d5c9deb84
 
-LIBVORBIS      = libvorbis-1.3.6
+LIBVORBIS      = libvorbis-1.3.7
 LIBVORBIS_TB   = $(LIBVORBIS).tar.gz
 LIBVORBIS_URL  = https://ftp.osuosl.org/pub/xiph/releases/vorbis/$(LIBVORBIS_TB)
-LIBVORBIS_SHA1 = 91f140c220d1fe3376d637dc5f3d046263784b1f
+LIBVORBIS_SHA1 = 2b415495f89b103138a23da5017a2a00837c6c94
 
-LIBFDKAAC      = fdk-aac-0.1.6
+LIBFDKAAC      = fdk-aac-2.0.1
 LIBFDKAAC_TB   = $(LIBFDKAAC).tar.gz
 LIBFDKAAC_URL  = https://freefr.dl.sourceforge.net/project/opencore-amr/fdk-aac/$(LIBFDKAAC_TB)
-LIBFDKAAC_SHA1 = 574103e24fe45b3b89a92cc6a7a9d260c483b9e0
+LIBFDKAAC_SHA1 = 575e90e85321c5be44dcf743a40ea57ab0835928
 
 LIBOPUS        = opus-1.3.1
 LIBOPUS_TB     = $(LIBOPUS).tar.gz
 LIBOPUS_URL    = https://archive.mozilla.org/pub/opus/$(LIBOPUS_TB)
 LIBOPUS_SHA1   = ed226536537861c9f0f1ef7ca79dffc225bc181b
 
-FFNVCODEC_VER  = 8.2.15.10
+FFNVCODEC_VER  = 10.0.26.1
 FFNVCODEC      = nv-codec-headers-$(FFNVCODEC_VER)
 FFNVCODEC_TB   = $(FFNVCODEC).tar.gz
 FFNVCODEC_URL  = https://github.com/FFmpeg/nv-codec-headers/releases/download/n$(FFNVCODEC_VER)/nv-codec-headers-$(FFNVCODEC_VER).tar.gz
-FFNVCODEC_SHA1 = 80c3bd878e6b4a7d3a6a643ad6ad07a9f02bfe81
+FFNVCODEC_SHA1 = aac6b915284a8ff384f2123b1cb95e1b90525dc1
 
-FFMPEG         = ffmpeg-4.1.5
+FFMPEG         = ffmpeg-4.3.1
 FFMPEG_TB      = $(FFMPEG).tar.bz2
-FFMPEG_URL     = https://ffmpeg.org/releases/$(FFMPEG_TB)
-FFMPEG_SHA1    = 850ca59493aa6d773a1346257c9fbee80ba6efe0
+FFMPEG_URL     = http://ffmpeg.org/releases/$(FFMPEG_TB)
+FFMPEG_SHA1    = d7bf601a6fc904333ab261e73c4b602ea471e942
+
 
 # ##############################################################################
 # Library Config
@@ -257,7 +260,6 @@ ifeq (yes,$(CONFIG_LIBX265))
 
 EXTLIBS  += libx265
 ENCODERS += libx265
-FFMPEG_DIFFS += ffmpeg.libx265.diff
 
 endif
 
@@ -267,7 +269,6 @@ ifeq (yes,$(CONFIG_LIBX265_STATIC))
 $(LIB_ROOT)/$(LIBX265)/.tvh_download:
        $(call DOWNLOAD,$(LIBX265_URL),$(LIB_ROOT)/$(LIBX265_TB),$(LIBX265_SHA1))
        $(call UNTAR,$(LIBX265_TB),z)
-       $(call PATCH,$(LIBX265),$(LIBX265_DIFFS))
        @touch $@
 
 $(LIB_ROOT)/$(LIBX265)/.tvh_build: \
diff --git a/support/patches/ffmpeg.libx265.diff b/support/patches/ffmpeg.libx265.diff
deleted file mode 100644 (file)
index 7589e14..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-diff -urN ../ffmpeg-3.1.3.orig/libavcodec/libx265.c ./libavcodec/libx265.c
---- ../ffmpeg-3.1.3.orig/libavcodec/libx265.c  2016-06-27 01:54:29.000000000 +0200
-+++ ./libavcodec/libx265.c     2016-08-31 13:52:05.599612289 +0200
-@@ -252,6 +252,7 @@
-     int nnal;
-     int ret;
-     int i;
-+    int pict_type;
-     ctx->api->picture_init(ctx->params, &x265pic);
-@@ -299,22 +300,27 @@
-     pkt->pts = x265pic_out.pts;
-     pkt->dts = x265pic_out.dts;
--#if FF_API_CODED_FRAME
--FF_DISABLE_DEPRECATION_WARNINGS
-     switch (x265pic_out.sliceType) {
-     case X265_TYPE_IDR:
-     case X265_TYPE_I:
--        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I;
-+        pict_type = AV_PICTURE_TYPE_I;
-         break;
-     case X265_TYPE_P:
--        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_P;
-+        pict_type = AV_PICTURE_TYPE_P;
-         break;
-     case X265_TYPE_B:
--        avctx->coded_frame->pict_type = AV_PICTURE_TYPE_B;
-+        pict_type = AV_PICTURE_TYPE_B;
-+        break;
-+    default:
-+        pict_type = AV_PICTURE_TYPE_NONE;
-         break;
-     }
-+#if FF_API_CODED_FRAME
-+FF_DISABLE_DEPRECATION_WARNINGS
-+    avctx->coded_frame->pict_type = pict_type;
- FF_ENABLE_DEPRECATION_WARNINGS
- #endif
-+    ff_side_data_set_encoder_stats(pkt, -1, NULL, 0, pict_type);
-     *got_packet = 1;
-     return 0;
index 570b84305d532bbe01daf2648920795e663437ec..b4fec58799a905eac7fa09bc5523b8eaf00fe59b 100644 (file)
@@ -10,17 +10,28 @@ diff -urN ../x265_2.0.pic/source/CMakeLists.txt ./source/CMakeLists.txt
      endif(ENABLE_PIC)
      if(NATIVE_BUILD)
          if(INTEL_CXX)
-@@ -183,11 +183,11 @@
-         endif()
+@@ -240,19 +240,19 @@ if(GCC)
      endif()
      if(ARM AND CROSS_COMPILE_ARM)
--        set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC)
-+        set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIE)
+         if(ARM64)
+-            set(ARM_ARGS -fPIC)
++            set(ARM_ARGS -fPIE)
+         else()
+-            set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC)
++            set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIE)
+         endif()
+         message(STATUS "cross compile arm")
      elseif(ARM)
-         find_package(Neon)
-         if(CPU_HAS_NEON)
--            set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC)
-+            set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIE)
+         if(ARM64)
+-            set(ARM_ARGS -fPIC)
++            set(ARM_ARGS -fPIE)
              add_definitions(-DHAVE_NEON)
          else()
-             set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
+             find_package(Neon)
+             if(CPU_HAS_NEON)
+-                set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC)
++                set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIE)
+                 add_definitions(-DHAVE_NEON)
+             else()
+                 set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)
+                 set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm)