diff --git a/0001-obs-ffmpeg-Fix-incompatible-pointer-types-with-FFmpe.patch b/0001-obs-ffmpeg-Fix-incompatible-pointer-types-with-FFmpe.patch deleted file mode 100644 index a89d4d0..0000000 --- a/0001-obs-ffmpeg-Fix-incompatible-pointer-types-with-FFmpe.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 8dbad9ac2974f9db776838e3f87c57c15291e983 Mon Sep 17 00:00:00 2001 -From: tytan652 -Date: Sat, 6 Apr 2024 08:50:07 +0200 -Subject: [PATCH] obs-ffmpeg: Fix incompatible-pointer-types with FFmpeg 7 - ---- - plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c | 5 +++++ - plugins/obs-ffmpeg/obs-ffmpeg-mpegts.c | 18 ++++++++++++------ - 2 files changed, 17 insertions(+), 6 deletions(-) - -diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c -index a05c33c94..b4e9203bf 100644 ---- a/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c -+++ b/plugins/obs-ffmpeg/ffmpeg-mux/ffmpeg-mux.c -@@ -886,7 +886,12 @@ static int64_t ffmpeg_mux_seek_av_buffer(void *opaque, int64_t offset, - return 0; - } - -+#if LIBAVFORMAT_VERSION_MAJOR >= 61 -+static int ffmpeg_mux_write_av_buffer(void *opaque, const uint8_t *buf, -+ int buf_size) -+#else - static int ffmpeg_mux_write_av_buffer(void *opaque, uint8_t *buf, int buf_size) -+#endif - { - struct ffmpeg_mux *ffm = opaque; - -diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-mpegts.c b/plugins/obs-ffmpeg/obs-ffmpeg-mpegts.c -index f23bf25c0..69ec8a7c2 100644 ---- a/plugins/obs-ffmpeg/obs-ffmpeg-mpegts.c -+++ b/plugins/obs-ffmpeg/obs-ffmpeg-mpegts.c -@@ -421,6 +421,12 @@ fail: - return err; - } - -+#if LIBAVFORMAT_VERSION_MAJOR >= 61 -+typedef int (*write_packet_cb)(void *, const uint8_t *, int); -+#else -+typedef int (*write_packet_cb)(void *, uint8_t *, int); -+#endif -+ - static inline int allocate_custom_aviocontext(struct ffmpeg_output *stream, - bool is_rist) - { -@@ -437,13 +443,13 @@ static inline int allocate_custom_aviocontext(struct ffmpeg_output *stream, - return AVERROR(ENOMEM); - /* allocate custom avio_context */ - if (is_rist) -- s = avio_alloc_context( -- buffer, buffer_size, AVIO_FLAG_WRITE, h, NULL, -- (int (*)(void *, uint8_t *, int))librist_write, NULL); -+ s = avio_alloc_context(buffer, buffer_size, AVIO_FLAG_WRITE, h, -+ NULL, (write_packet_cb)librist_write, -+ NULL); - else -- s = avio_alloc_context( -- buffer, buffer_size, AVIO_FLAG_WRITE, h, NULL, -- (int (*)(void *, uint8_t *, int))libsrt_write, NULL); -+ s = avio_alloc_context(buffer, buffer_size, AVIO_FLAG_WRITE, h, -+ NULL, (write_packet_cb)libsrt_write, -+ NULL); - if (!s) - goto fail; - s->max_packet_size = h->max_packet_size; --- -2.45.1 - diff --git a/PKGBUILD b/PKGBUILD index 34dd7ce..990315c 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -30,6 +30,7 @@ depends=( "qt5-x11extras" "qt6-svg" "rnnoise" + "uthash" "x264" ) makedepends=( @@ -58,30 +59,32 @@ provides=("obs-studio=$pkgver") conflicts=("obs-studio") source=( "$pkgname::git+https://github.com/obsproject/obs-studio.git#tag=$pkgver" - 0001-obs-ffmpeg-Fix-incompatible-pointer-types-with-FFmpe.patch + "nv-codec-headers.tar.gz::https://github.com/FFmpeg/nv-codec-headers/releases/download/n12.1.14.0/nv-codec-headers-12.1.14.0.tar.gz" ) +# XXX nv-codec-headers are kept back at version n12.1.14.0 due to OBS not supporting any newer version sha256sums=('0390743a85c3294abdb73ddf7d5d60354b5283f77cc9680026b2641600ae5384' - 'f4356ddabd4b54662f685ec88432e2830cdeb1904665d14c64d2daa3ea7d254e') + '62b30ab37e4e9be0d0c5b37b8fee4b094e38e570984d56e1135a6b6c2c164c9f') prepare() { cd $pkgname git submodule update --init --recursive - patch -Np1 <"$srcdir"/0001-obs-ffmpeg-Fix-incompatible-pointer-types-with-FFmpe.patch } build() { cmake -B build -S $pkgname \ - -DBUILD_BROWSER=ON \ - -DCALM_DEPRECATION=ON \ - -DCEF_ROOT_DIR="/opt/cef" \ + -DFFnvcodec_INCLUDE_DIR="nv-codec-headers-12.1.14.0/include/" \ -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_BROWSER=ON \ + -DENABLE_VST=ON \ + -DENABLE_VLC=OFF \ + -DENABLE_NEW_MPEGTS_OUTPUT=OFF \ -DENABLE_AJA=OFF \ -DENABLE_JACK=ON \ -DENABLE_LIBFDK=ON \ - -DENABLE_NEW_MPEGTS_OUTPUT=OFF \ - -DENABLE_VST=ON \ -DENABLE_WEBRTC=ON \ -DOBS_VERSION_OVERRIDE="$pkgver-$pkgrel" \ + -DCALM_DEPRECATION=ON \ + -DCEF_ROOT_DIR="/opt/cef" \ -Wno-dev cmake --build build