summaryrefslogtreecommitdiff
path: root/subprojects/packagefiles/ffmpeg
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2025-11-30 14:32:51 -0500
committerAndrew Opalach <andrew@akon.city> 2025-11-30 14:32:51 -0500
commitc8412bbedae0fce38db96833732e8ce904721e4c (patch)
tree4611046186c714513d042966ce97825df0fecf9e /subprojects/packagefiles/ffmpeg
parent0d6d13425015d78606232874498327cabcb0e4e2 (diff)
downloadcamu-c8412bbedae0fce38db96833732e8ce904721e4c.tar.gz
camu-c8412bbedae0fce38db96833732e8ce904721e4c.tar.bz2
camu-c8412bbedae0fce38db96833732e8ce904721e4c.zip
Build cleanup and fixes from sink testing
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'subprojects/packagefiles/ffmpeg')
-rw-r--r--subprojects/packagefiles/ffmpeg/meson.build42
-rw-r--r--subprojects/packagefiles/ffmpeg/msvc_build_conform.diff33
-rw-r--r--subprojects/packagefiles/ffmpeg/msvc_build_conform_old.diff22
-rw-r--r--subprojects/packagefiles/ffmpeg/version_3.3.9.diff45
-rw-r--r--subprojects/packagefiles/ffmpeg/version_4.2.11.diff26
-rw-r--r--subprojects/packagefiles/ffmpeg/version_5.1.8.diff29
-rw-r--r--subprojects/packagefiles/ffmpeg/version_6.1.4.diff29
-rw-r--r--subprojects/packagefiles/ffmpeg/version_7.1.3.diff29
8 files changed, 225 insertions, 30 deletions
diff --git a/subprojects/packagefiles/ffmpeg/meson.build b/subprojects/packagefiles/ffmpeg/meson.build
index 46f2d31..f813c8f 100644
--- a/subprojects/packagefiles/ffmpeg/meson.build
+++ b/subprojects/packagefiles/ffmpeg/meson.build
@@ -62,12 +62,24 @@ endif
#'--extra-ldflags=-Lbuild/subprojects/libalabaster -l:libalabaster.a',
#'--malloc-prefix=al_',
-decoders = 'flac,mp3,mp3float,aac,opus,vorbis,h264,hevc,av1,vp9'
+decoders = 'flac,mp3,mp3float,aac,opus,vorbis,h264,hevc,vp9'
decoders += ',pcm_s32be,pcm_s32le,pcm_s24be,pcm_s24le,pcm_s16be,pcm_s16le'
#decoders += ',pcm_f32be,pcm_f32le,pcm_s32le_planar,pcm_s16be_planar,pcm_s16le_planar'
decoders += ',dca,eac3'
decoders += ',pcm_dvd,mpegvideo,mpeg2video'
#decoders += ',ass,srt'
+if get_option('codec-hwaccels').length() == 0
+ if not is_msvc
+ libdav1d = dependency('dav1d', required: false)
+ if libdav1d.found()
+ decoders += ',libdav1d'
+ extra_options += ['--enable-libdav1d']
+ deps += [libdav1d]
+ endif
+ endif
+else
+ decoders += ',av1'
+endif
demuxers = ''
parsers = ''
@@ -88,16 +100,22 @@ if not get_option('sink-only')
endif
endif
-zlib = dependency('zlib', required: false)
-if zlib.found()
- extra_options += ['--enable-zlib']
- decoders += ',png,apng,mjpeg,jpeg2000,gif,'
- if not get_option('sink-only')
- demuxers += ',image_png_pipe,image2,mjpeg,image2pipe,image_jpeg_pipe,gif'
- parsers += ',png,mjpeg,jpeg2000,gif'
+ffmpeg_image_codecs = true
+if ffmpeg_image_codecs
+ zlib = dependency('zlib', required: false)
+ if zlib.found()
+ extra_options += ['--enable-zlib']
+ decoders += ',png,apng,mjpeg,jpeg2000,webp,gif,'
+ if not get_option('sink-only')
+ demuxers += ',image_png_pipe,image2,mjpeg,image2pipe,image_jpeg_pipe,image_webp_pipe,gif'
+ parsers += ',png,mjpeg,jpeg2000,webp,gif'
+ endif
+ deps += [zlib]
+ else
+ extra_options += ['--disable-zlib']
endif
- deps += [zlib]
endif
+extra_options += ['--disable-xlib']
bsfs = ''
if not get_option('sink-only')
@@ -177,7 +195,12 @@ endif
# Disable unused hwaccels.
extra_options += [
+ '--disable-amf',
+ '--disable-audiotoolbox',
+ '--disable-cuda-llvm',
'--disable-cuvid',
+ '--disable-ffnvcodec',
+ '--disable-nvdec',
'--disable-nvenc',
'--disable-vdpau',
'--disable-audiotoolbox',
@@ -237,7 +260,6 @@ proj = ext_proj.add_project('configure',
'--disable-manpages',
'--disable-podpages',
'--disable-txtpages',
- '--disable-safe-bitstream-reader',
'--disable-schannel',
'--disable-network',
'--disable-securetransport',
diff --git a/subprojects/packagefiles/ffmpeg/msvc_build_conform.diff b/subprojects/packagefiles/ffmpeg/msvc_build_conform.diff
index 3aff7e9..80c6c70 100644
--- a/subprojects/packagefiles/ffmpeg/msvc_build_conform.diff
+++ b/subprojects/packagefiles/ffmpeg/msvc_build_conform.diff
@@ -1,15 +1,26 @@
---- a/configure 2025-03-02 19:22:08.000000000 -0500
-+++ b/configure 2025-05-17 18:43:08.854727216 -0400
-@@ -5184,7 +5184,7 @@
- DEPCCFLAGS=$_flags
+--- a/configure 2025-11-19 21:31:28.000000000 -0500
++++ b/configure 2025-11-24 12:35:16.905137447 -0500
+@@ -5299,8 +5299,8 @@
+ arflags="rcD"
+ ar_o='$@'
+ else
+- arflags="rc"
+- ar_o='$@'
++ arflags="-nologo"
++ ar_o='-out:$@'
fi
-
--if $ar 2>&1 | grep -q Microsoft; then
-+if $ar 2>&1 | grep -q Microsoft || [ "$ar" == "llvm-lib" ]; then
- arflags="-nologo"
- ar_o='-out:$@'
- elif $ar 2>&1 | grep -q "\[D\] "; then
-@@ -5878,6 +5878,8 @@
+
+ # Treat unrecognized flags as errors on MSVC
+@@ -5951,6 +5951,8 @@
+ enabled x86_32 && check_ldflags -Wl,--large-address-aware
+ add_cppflags -DWIN32_LEAN_AND_MEAN
+ shlibdir_default="$bindir_default"
++ LIBPREF=""
++ LIBSUF=".lib"
+ SLIBPREF=""
+ SLIBSUF=".dll"
+ SLIBNAME_WITH_VERSION='$(SLIBPREF)$(FULLNAME)-$(LIBVERSION)$(SLIBSUF)'
+@@ -6002,6 +6004,8 @@
enabled x86_32 && check_ldflags -LARGEADDRESSAWARE
add_cppflags -DWIN32_LEAN_AND_MEAN
shlibdir_default="$bindir_default"
diff --git a/subprojects/packagefiles/ffmpeg/msvc_build_conform_old.diff b/subprojects/packagefiles/ffmpeg/msvc_build_conform_old.diff
new file mode 100644
index 0000000..7811469
--- /dev/null
+++ b/subprojects/packagefiles/ffmpeg/msvc_build_conform_old.diff
@@ -0,0 +1,22 @@
+--- a/configure 2025-11-19 21:31:28.000000000 -0500
++++ b/configure 2025-11-24 12:35:16.905137447 -0500
+@@ -5299,8 +5299,8 @@
+ arflags="rcD"
+ ar_o='$@'
+ else
+- arflags="rc"
+- ar_o='$@'
++ arflags="-nologo"
++ ar_o='-out:$@'
+ fi
+
+ # Treat unrecognized flags as errors on MSVC
+@@ -5951,6 +5951,8 @@
+ enabled x86_32 && check_ldflags -Wl,--large-address-aware
+ add_cppflags -DWIN32_LEAN_AND_MEAN
+ shlibdir_default="$bindir_default"
++ LIBPREF=""
++ LIBSUF=".lib"
+ SLIBPREF=""
+ SLIBSUF=".dll"
+ SLIBNAME_WITH_VERSION='$(SLIBPREF)$(FULLNAME)-$(LIBVERSION)$(SLIBSUF)'
diff --git a/subprojects/packagefiles/ffmpeg/version_3.3.9.diff b/subprojects/packagefiles/ffmpeg/version_3.3.9.diff
index 3887a2f..90911d5 100644
--- a/subprojects/packagefiles/ffmpeg/version_3.3.9.diff
+++ b/subprojects/packagefiles/ffmpeg/version_3.3.9.diff
@@ -1,5 +1,5 @@
---- a/meson.build 2025-08-23 18:44:34.634014892 -0400
-+++ b/meson.build 2025-08-25 15:51:35.605178588 -0400
+--- a/meson.build 2025-11-30 11:51:43.747121512 -0500
++++ b/meson.build 2025-11-30 12:55:07.519116860 -0500
@@ -1,4 +1,4 @@
-project('ffmpeg', 'c', version: '', meson_version: '>=0.57.0')
+project('ffmpeg', 'c', version: '3.3.9', meson_version: '>=0.57.0')
@@ -17,7 +17,40 @@
extra_options += ['--enable-static', '--disable-shared']
if is_windows
-@@ -220,6 +216,15 @@
+@@ -68,18 +64,7 @@
+ decoders += ',dca,eac3'
+ decoders += ',pcm_dvd,mpegvideo,mpeg2video'
+ #decoders += ',ass,srt'
+-if get_option('codec-hwaccels').length() == 0
+- if not is_msvc
+- libdav1d = dependency('dav1d', required: false)
+- if libdav1d.found()
+- decoders += ',libdav1d'
+- extra_options += ['--enable-libdav1d']
+- deps += [libdav1d]
+- endif
+- endif
+-else
+- decoders += ',av1'
+-endif
++decoders += ',av1'
+
+ demuxers = ''
+ parsers = ''
+@@ -195,12 +180,8 @@
+
+ # Disable unused hwaccels.
+ extra_options += [
+- '--disable-amf',
+ '--disable-audiotoolbox',
+- '--disable-cuda-llvm',
+ '--disable-cuvid',
+- '--disable-ffnvcodec',
+- '--disable-nvdec',
+ '--disable-nvenc',
+ '--disable-vdpau',
+ '--disable-audiotoolbox',
+@@ -243,6 +224,15 @@
args += ['-DCAMU_HAVE_SOXR']
endif
@@ -33,7 +66,7 @@
ext_proj = import('unstable-external_project')
proj = ext_proj.add_project('configure',
-@@ -229,7 +234,6 @@
+@@ -252,7 +242,6 @@
'--incdir=@PREFIX@/@INCLUDEDIR@',
'--enable-pic',
'--disable-all',
@@ -41,7 +74,7 @@
'--disable-everything',
'--disable-programs',
'--disable-doc',
-@@ -255,11 +259,14 @@
+@@ -277,11 +266,14 @@
'--enable-swscale',
'--disable-indevs',
'--disable-outdevs',
@@ -56,7 +89,7 @@
avutil = proj.dependency('avutil')
avformat = proj.dependency('avformat')
avcodec = proj.dependency('avcodec')
-@@ -268,14 +275,14 @@
+@@ -290,14 +282,14 @@
swscale = proj.dependency('swscale')
include = include_directories('.', 'build/')
meson.override_dependency('libavutil', declare_dependency(
diff --git a/subprojects/packagefiles/ffmpeg/version_4.2.11.diff b/subprojects/packagefiles/ffmpeg/version_4.2.11.diff
index 27d5ceb..cce132d 100644
--- a/subprojects/packagefiles/ffmpeg/version_4.2.11.diff
+++ b/subprojects/packagefiles/ffmpeg/version_4.2.11.diff
@@ -1,12 +1,32 @@
---- a/meson.build 2025-08-23 18:44:34.634014892 -0400
-+++ b/meson.build 2025-08-25 15:42:23.161139654 -0400
+--- a/meson.build 2025-11-30 11:51:43.747121512 -0500
++++ b/meson.build 2025-11-30 12:52:39.981254464 -0500
@@ -1,4 +1,4 @@
-project('ffmpeg', 'c', version: '', meson_version: '>=0.57.0')
+project('ffmpeg', 'c', version: '4.2.11', meson_version: '>=0.57.0')
compiler = meson.get_compiler('c')
-@@ -268,14 +268,14 @@
+@@ -68,18 +68,7 @@
+ decoders += ',dca,eac3'
+ decoders += ',pcm_dvd,mpegvideo,mpeg2video'
+ #decoders += ',ass,srt'
+-if get_option('codec-hwaccels').length() == 0
+- if not is_msvc
+- libdav1d = dependency('dav1d', required: false)
+- if libdav1d.found()
+- decoders += ',libdav1d'
+- extra_options += ['--enable-libdav1d']
+- deps += [libdav1d]
+- endif
+- endif
+-else
+- decoders += ',av1'
+-endif
++decoders += ',av1'
+
+ demuxers = ''
+ parsers = ''
+@@ -290,14 +279,14 @@
swscale = proj.dependency('swscale')
include = include_directories('.', 'build/')
meson.override_dependency('libavutil', declare_dependency(
diff --git a/subprojects/packagefiles/ffmpeg/version_5.1.8.diff b/subprojects/packagefiles/ffmpeg/version_5.1.8.diff
new file mode 100644
index 0000000..784c8a1
--- /dev/null
+++ b/subprojects/packagefiles/ffmpeg/version_5.1.8.diff
@@ -0,0 +1,29 @@
+--- a/meson.build 2025-08-23 18:44:34.634014892 -0400
++++ b/meson.build 2025-08-25 15:40:17.065798145 -0400
+@@ -1,4 +1,4 @@
+-project('ffmpeg', 'c', version: '', meson_version: '>=0.57.0')
++project('ffmpeg', 'c', version: '5.1.8', meson_version: '>=0.57.0')
+
+ compiler = meson.get_compiler('c')
+
+@@ -268,14 +268,14 @@
+ swscale = proj.dependency('swscale')
+ include = include_directories('.', 'build/')
+ meson.override_dependency('libavutil', declare_dependency(
+- dependencies: [avutil, deps], compile_args: args, include_directories: include, version: ''))
++ dependencies: [avutil, deps], compile_args: args, include_directories: include, version: '57.28.100'))
+ meson.override_dependency('libavformat', declare_dependency(
+- dependencies: [avformat], include_directories: include, version: ''))
++ dependencies: [avformat], include_directories: include, version: '59.27.100'))
+ meson.override_dependency('libavcodec', declare_dependency(
+- dependencies: [avcodec], include_directories: include, version: ''))
++ dependencies: [avcodec], include_directories: include, version: '59.37.100'))
+ meson.override_dependency('libavdevice', declare_dependency(
+- dependencies: [avdevice], include_directories: include, version: ''))
++ dependencies: [avdevice], include_directories: include, version: '59.7.100'))
+ meson.override_dependency('libswresample', declare_dependency(
+- dependencies: [swresample], include_directories: include, version: ''))
++ dependencies: [swresample], include_directories: include, version: '4.7.100'))
+ meson.override_dependency('libswscale', declare_dependency(
+- dependencies: [swscale], include_directories: include, version: ''))
++ dependencies: [swscale], include_directories: include, version: '6.7.100'))
diff --git a/subprojects/packagefiles/ffmpeg/version_6.1.4.diff b/subprojects/packagefiles/ffmpeg/version_6.1.4.diff
new file mode 100644
index 0000000..5f54fe5
--- /dev/null
+++ b/subprojects/packagefiles/ffmpeg/version_6.1.4.diff
@@ -0,0 +1,29 @@
+--- a/meson.build 2025-08-23 18:44:34.634014892 -0400
++++ b/meson.build 2025-08-25 15:37:56.556303265 -0400
+@@ -1,4 +1,4 @@
+-project('ffmpeg', 'c', version: '', meson_version: '>=0.57.0')
++project('ffmpeg', 'c', version: '6.1.4', meson_version: '>=0.57.0')
+
+ compiler = meson.get_compiler('c')
+
+@@ -268,14 +268,14 @@
+ swscale = proj.dependency('swscale')
+ include = include_directories('.', 'build/')
+ meson.override_dependency('libavutil', declare_dependency(
+- dependencies: [avutil, deps], compile_args: args, include_directories: include, version: ''))
++ dependencies: [avutil, deps], compile_args: args, include_directories: include, version: '58.29.100'))
+ meson.override_dependency('libavformat', declare_dependency(
+- dependencies: [avformat], include_directories: include, version: ''))
++ dependencies: [avformat], include_directories: include, version: '60.16.100'))
+ meson.override_dependency('libavcodec', declare_dependency(
+- dependencies: [avcodec], include_directories: include, version: ''))
++ dependencies: [avcodec], include_directories: include, version: '60.31.102'))
+ meson.override_dependency('libavdevice', declare_dependency(
+- dependencies: [avdevice], include_directories: include, version: ''))
++ dependencies: [avdevice], include_directories: include, version: '60.3.100'))
+ meson.override_dependency('libswresample', declare_dependency(
+- dependencies: [swresample], include_directories: include, version: ''))
++ dependencies: [swresample], include_directories: include, version: '4.12.100'))
+ meson.override_dependency('libswscale', declare_dependency(
+- dependencies: [swscale], include_directories: include, version: ''))
++ dependencies: [swscale], include_directories: include, version: '7.5.100'))
diff --git a/subprojects/packagefiles/ffmpeg/version_7.1.3.diff b/subprojects/packagefiles/ffmpeg/version_7.1.3.diff
new file mode 100644
index 0000000..554ef02
--- /dev/null
+++ b/subprojects/packagefiles/ffmpeg/version_7.1.3.diff
@@ -0,0 +1,29 @@
+--- a/meson.build 2025-08-23 18:44:34.634014892 -0400
++++ b/meson.build 2025-08-25 15:35:33.498781349 -0400
+@@ -1,4 +1,4 @@
+-project('ffmpeg', 'c', version: '', meson_version: '>=0.57.0')
++project('ffmpeg', 'c', version: '7.1.3', meson_version: '>=0.57.0')
+
+ compiler = meson.get_compiler('c')
+
+@@ -268,14 +268,14 @@
+ swscale = proj.dependency('swscale')
+ include = include_directories('.', 'build/')
+ meson.override_dependency('libavutil', declare_dependency(
+- dependencies: [avutil, deps], compile_args: args, include_directories: include, version: ''))
++ dependencies: [avutil, deps], compile_args: args, include_directories: include, version: '59.39.100'))
+ meson.override_dependency('libavformat', declare_dependency(
+- dependencies: [avformat], include_directories: include, version: ''))
++ dependencies: [avformat], include_directories: include, version: '61.7.100'))
+ meson.override_dependency('libavcodec', declare_dependency(
+- dependencies: [avcodec], include_directories: include, version: ''))
++ dependencies: [avcodec], include_directories: include, version: '61.19.100'))
+ meson.override_dependency('libavdevice', declare_dependency(
+- dependencies: [avdevice], include_directories: include, version: ''))
++ dependencies: [avdevice], include_directories: include, version: '61.3.100'))
+ meson.override_dependency('libswresample', declare_dependency(
+- dependencies: [swresample], include_directories: include, version: ''))
++ dependencies: [swresample], include_directories: include, version: '5.3.100'))
+ meson.override_dependency('libswscale', declare_dependency(
+- dependencies: [swscale], include_directories: include, version: ''))
++ dependencies: [swscale], include_directories: include, version: '8.3.100'))