Skip to content

Commit 7efbc6c

Browse files
authored
Upgrade Raisr ffmpeg plugin to n7.1 from n6.1.1 (#39)
* Upgrade Raisr ffmpeg plugin to n7.1 from n6.1.1 Signed-off-by: Xiaoxia Liang <xiaoxia.liang@intel.com> * Update the Dockerfile with ubuntu18.04 os that build and install x264 from source code. Signed-off-by: Xiaoxia Liang <xiaoxia.liang@intel.com> --------- Signed-off-by: Xiaoxia Liang <xiaoxia.liang@intel.com>
1 parent 7b01ba5 commit 7efbc6c

13 files changed

+64
-89
lines changed

How to build.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -113,18 +113,16 @@ To build the library with OpenCL support, run \
113113
`git clone https://github.com/FFmpeg/FFmpeg ffmpeg` \
114114
`cd ffmpeg`
115115

116-
#### Checkout FFmpeg version 6.0 tag
117-
`git checkout -b n6.0 n6.0`
116+
#### Checkout FFmpeg version n7.1 tag
117+
`git checkout -b n7.1 n7.1`
118118

119119
#### Copy vf_raisr.c to ffmpeg libavfilter folder
120120
`cp ../Video-Super-Resolution-Library/ffmpeg/vf_raisr.c libavfilter/` \
121121
To use raisr_opencl you need to copy vf_raisr_opencl.c as well \
122122
`cp ../Video-Super-Resolution-Library/ffmpeg/vf_raisr_opencl.c libavfilter/`
123123

124124
#### Apply patch
125-
`git am ../Video-Super-Resolution-Library/ffmpeg/0001-ffmpeg-raisr-filter.patch` \
126-
To use raisr_opencl you need to apply patch 0002 as well \
127-
`git am ../Video-Super-Resolution-Library/ffmpeg/0002-libavfilter-raisr_opencl-Add-raisr_opencl-filter.patch`
125+
`git am ../Video-Super-Resolution-Library/ffmpeg/0001-Upgrade-Raisr-ffmpeg-plugin-to-n7.1-from-n6.1.1.patch`
128126

129127
#### Configure FFmpeg
130128
When `DCMAKE_INSTALL_PREFIX` isn't used, the ffmpeg configure command is as: \

docker/Flex/Dockerfile.ubuntu22.04

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ ARG GMMLIB_VER=22.4.1
1616
ARG LIBVA2_VER=2.22.0
1717
ARG LIBVA_UTILS_VER=2.22.0
1818
ARG MEDIA_DRIVER_VER=24.2.5
19-
ARG FFMPEG_VER="n6.1.1"
19+
ARG FFMPEG_VER="n7.1"
2020

2121
ARG SVT_AV1_REPO=https://gitlab.com/AOMediaCodec/SVT-AV1/-/archive/${SVT_AV1_VER}/SVT-AV1-${SVT_AV1_VER}.tar.gz
2222
ARG SVT_VP9_REPO=https://github.com/OpenVisualCloud/SVT-VP9/archive/refs/tags/${SVT_VP9_VER}.tar.gz

docker/Xeon/Dockerfile.centos9

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ FROM quay.io/centos/centos:stream9 AS build
1010
ARG DL_PREFIX=/opt
1111
ARG PREFIX=/opt/build
1212
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:/usr/local/lib:/usr/local/lib64"
13-
ARG FFMPEG_COMMIT_ID="n6.1.1"
13+
ARG FFMPEG_COMMIT_ID="n7.1"
1414
ENV TZ="Europe/Warsaw"
1515

1616
ARG ONEAPI_LINK="https://registrationcenter-download.intel.com/akdlm/IRC_NAS/046b1402-c5b8-4753-9500-33ffb665123f/l_ipp_oneapi_p_2021.10.1.16_offline.sh"

docker/Xeon/Dockerfile.rockylinux9

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ RUN echo "ERROR!" && exit 1
1717
ARG DL_PREFIX=/opt
1818
ARG PREFIX=/opt/build
1919
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:/usr/local/lib:/usr/local/lib64"
20-
ARG FFMPEG_COMMIT_ID="n6.1.1"
20+
ARG FFMPEG_COMMIT_ID="n7.1"
2121
ENV TZ="Europe/Warsaw"
2222

2323
ARG NASM_RPM_LINK="https://rpmfind.net/linux/centos-stream/9-stream/CRB/x86_64/os/Packages/nasm-2.15.03-7.el9.x86_64.rpm"

docker/Xeon/Dockerfile.rockylinux9-mini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ FROM ${IMAGE_CACHE_REGISTRY}/${IMAGE_NAME} AS build
1212
ARG DL_PREFIX=/opt
1313
ARG PREFIX=/opt/build
1414
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:/usr/local/lib:/usr/local/lib64"
15-
ARG FFMPEG_COMMIT_ID="n6.1.1"
15+
ARG FFMPEG_COMMIT_ID="n7.1"
1616
ENV TZ="Europe/Warsaw"
1717

1818
ARG NASM_RPM_LINK="https://rpmfind.net/linux/centos-stream/9-stream/CRB/x86_64/os/Packages/nasm-2.15.03-7.el9.x86_64.rpm"

docker/Xeon/Dockerfile.ubuntu18.04

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG DL_PREFIX=/opt
1414
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:${LD_LIBRARY_PATH}"
1515
ENV DEBIAN_FRONTEND="noninteractive"
1616
ENV TZ="Europe/Warsaw"
17-
ARG FFMPEG_COMMIT_ID="n6.1.1"
17+
ARG FFMPEG_COMMIT_ID="n7.1"
1818

1919
WORKDIR ${DL_PREFIX}/ffmpeg
2020
SHELL ["/bin/bash", "-ex", "-o", "pipefail", "-c"]
@@ -25,7 +25,6 @@ RUN rm /etc/apt/sources.list.d/oneAPI.list && \
2525
apt-get install --no-install-recommends -y \
2626
git tar ca-certificates \
2727
libx265-dev \
28-
libx264-dev \
2928
zlib1g-dev \
3029
nasm \
3130
gcc-9 \
@@ -40,6 +39,16 @@ RUN rm /etc/apt/sources.list.d/oneAPI.list && \
4039
tar -zx --strip-components=1 -C "${DL_PREFIX}/ffmpeg"
4140

4241

42+
# build and install x264 from source
43+
WORKDIR ${DL_PREFIX}
44+
RUN git clone https://github.com/mirror/x264 -b stable --depth 1
45+
46+
WORKDIR ${DL_PREFIX}/x264
47+
RUN ./configure --enable-shared && \
48+
make -j "$(nproc)" && \
49+
make install && \
50+
ldconfig
51+
4352
COPY . ${DL_PREFIX}/Video-Super-Resolution-Library
4453

4554
WORKDIR ${DL_PREFIX}/Video-Super-Resolution-Library

docker/Xeon/Dockerfile.ubuntu20.04

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG DL_PREFIX=/opt
1414
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:${LD_LIBRARY_PATH}"
1515
ENV DEBIAN_FRONTEND="noninteractive"
1616
ENV TZ="Europe/Warsaw"
17-
ARG FFMPEG_COMMIT_ID="n6.1.1"
17+
ARG FFMPEG_COMMIT_ID="n7.1"
1818

1919
WORKDIR ${DL_PREFIX}/ffmpeg
2020
SHELL ["/bin/bash", "-ex", "-o", "pipefail", "-c"]

docker/Xeon/Dockerfile.ubuntu22.04

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG DL_PREFIX=/opt
1414
ARG LD_LIBRARY_PATH="/opt/build/lib:/opt/build/lib64:${LD_LIBRARY_PATH}"
1515
ENV DEBIAN_FRONTEND="noninteractive"
1616
ENV TZ="Europe/Warsaw"
17-
ARG FFMPEG_COMMIT_ID="n6.1.1"
17+
ARG FFMPEG_COMMIT_ID="n7.1"
1818

1919
WORKDIR ${DL_PREFIX}/ffmpeg
2020
SHELL ["/bin/bash", "-ex", "-o", "pipefail", "-c"]
Lines changed: 38 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,44 @@
1-
From 467d3dded4549645b16710807562e84a075739c5 Mon Sep 17 00:00:00 2001
1+
From d2cd96acaaa6211ea8d8aa5025fb9e655f78b212 Mon Sep 17 00:00:00 2001
22
From: Xiaoxia Liang <xiaoxia.liang@intel.com>
3-
Date: Mon, 24 Jul 2023 11:49:13 +0800
4-
Subject: [PATCH 1/2] FFmpeg Raisr filter for n6.0.
3+
Date: Thu, 3 Apr 2025 17:40:44 +0000
4+
Subject: [PATCH] Upgrade Raisr ffmpeg plugin to n7.1 from n6.1.1
55

66
Signed-off-by: Xiaoxia Liang <xiaoxia.liang@intel.com>
77
---
8-
configure | 12 ++++++++++++
9-
libavfilter/Makefile | 1 +
10-
libavfilter/allfilters.c | 1 +
11-
3 files changed, 14 insertions(+)
8+
configure | 13 +++++++++++++
9+
libavfilter/Makefile | 2 ++
10+
libavfilter/allfilters.c | 2 ++
11+
3 files changed, 17 insertions(+)
1212

1313
diff --git a/configure b/configure
14-
index b6616f00b6..f87716611b 100755
14+
index d77a55b653..2f90d21aa0 100755
1515
--- a/configure
1616
+++ b/configure
17-
@@ -240,6 +240,7 @@ External library support:
17+
@@ -241,6 +241,7 @@ External library support:
1818
--enable-libgsm enable GSM de/encoding via libgsm [no]
1919
--enable-libiec61883 enable iec61883 via libiec61883 [no]
2020
--enable-libilbc enable iLBC de/encoding via libilbc [no]
2121
+ --enable-libipp enable Intel IPP libary based scalin
2222
--enable-libjack enable JACK audio sound server [no]
2323
--enable-libjxl enable JPEG XL de/encoding via libjxl [no]
2424
--enable-libklvanc enable Kernel Labs VANC processing [no]
25-
@@ -1823,6 +1824,7 @@ EXTERNAL_LIBRARY_LIST="
25+
@@ -1926,6 +1927,7 @@ EXTERNAL_LIBRARY_LIST="
2626
libgsm
2727
libiec61883
2828
libilbc
2929
+ libipp
3030
libjack
3131
libjxl
3232
libklvanc
33-
@@ -6667,6 +6669,16 @@ enabled libopus && {
33+
@@ -3962,6 +3964,7 @@ transpose_opencl_filter_deps="opencl"
34+
transpose_vaapi_filter_deps="vaapi VAProcPipelineCaps_rotation_flags"
35+
transpose_vt_filter_deps="videotoolbox VTPixelRotationSessionCreate"
36+
transpose_vulkan_filter_deps="vulkan spirv_compiler"
37+
+raisr_opencl_filter_deps="opencl"
38+
unsharp_opencl_filter_deps="opencl"
39+
uspp_filter_deps="gpl avcodec"
40+
vaguedenoiser_filter_deps="gpl"
41+
@@ -6978,6 +6981,16 @@ enabled libopus && {
3442
}
3543
}
3644
enabled libplacebo && require_pkg_config libplacebo "libplacebo >= 4.192.0" libplacebo/vulkan.h pl_vulkan_create
@@ -45,31 +53,41 @@ index b6616f00b6..f87716611b 100755
4553
+ die "ERROR: Intel IPP not found"
4654
+fi
4755
enabled libpulse && require_pkg_config libpulse libpulse pulse/pulseaudio.h pa_context_new
48-
enabled librabbitmq && require_pkg_config librabbitmq "librabbitmq >= 0.7.1" amqp.h amqp_new_connection
49-
enabled librav1e && require_pkg_config librav1e "rav1e >= 0.5.0" rav1e.h rav1e_context_new
56+
enabled libqrencode && require_pkg_config libqrencode libqrencode qrencode.h QRcode_encodeString
57+
enabled libquirc && require libquirc quirc.h quirc_decode -lquirc
5058
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
51-
index b3d3d981dd..13126f7f48 100644
59+
index 91487afb21..dbf1114d78 100644
5260
--- a/libavfilter/Makefile
5361
+++ b/libavfilter/Makefile
54-
@@ -425,6 +425,7 @@ OBJS-$(CONFIG_PSEUDOCOLOR_FILTER) += vf_pseudocolor.o
55-
OBJS-$(CONFIG_PSNR_FILTER) += vf_psnr.o framesync.o
62+
@@ -440,6 +440,7 @@ OBJS-$(CONFIG_PSNR_FILTER) += vf_psnr.o framesync.o
5663
OBJS-$(CONFIG_PULLUP_FILTER) += vf_pullup.o
5764
OBJS-$(CONFIG_QP_FILTER) += vf_qp.o
65+
OBJS-$(CONFIG_QUIRC_FILTER) += vf_quirc.o
5866
+OBJS-$(CONFIG_RAISR_FILTER) += vf_raisr.o
5967
OBJS-$(CONFIG_RANDOM_FILTER) += vf_random.o
6068
OBJS-$(CONFIG_READEIA608_FILTER) += vf_readeia608.o
6169
OBJS-$(CONFIG_READVITC_FILTER) += vf_readvitc.o
70+
@@ -563,6 +564,7 @@ OBJS-$(CONFIG_XBR_FILTER) += vf_xbr.o
71+
OBJS-$(CONFIG_XCORRELATE_FILTER) += vf_convolve.o framesync.o
72+
OBJS-$(CONFIG_XFADE_FILTER) += vf_xfade.o
73+
OBJS-$(CONFIG_XFADE_OPENCL_FILTER) += vf_xfade_opencl.o opencl.o opencl/xfade.o
74+
+OBJS-$(CONFIG_RAISR_OPENCL_FILTER) += vf_raisr_opencl.o opencl.o
75+
OBJS-$(CONFIG_XFADE_VULKAN_FILTER) += vf_xfade_vulkan.o vulkan.o vulkan_filter.o
76+
OBJS-$(CONFIG_XMEDIAN_FILTER) += vf_xmedian.o framesync.o
77+
OBJS-$(CONFIG_XPSNR_FILTER) += vf_xpsnr.o framesync.o
6278
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
63-
index d7db46c2af..0dc81faaed 100644
79+
index 9819f0f95b..92a384ca68 100644
6480
--- a/libavfilter/allfilters.c
6581
+++ b/libavfilter/allfilters.c
66-
@@ -401,6 +401,7 @@ extern const AVFilter ff_vf_pseudocolor;
67-
extern const AVFilter ff_vf_psnr;
68-
extern const AVFilter ff_vf_pullup;
82+
@@ -415,6 +415,8 @@ extern const AVFilter ff_vf_pullup;
6983
extern const AVFilter ff_vf_qp;
84+
extern const AVFilter ff_vf_qrencode;
85+
extern const AVFilter ff_vf_quirc;
7086
+extern const AVFilter ff_vf_raisr;
87+
+extern const AVFilter ff_vf_raisr_opencl;
7188
extern const AVFilter ff_vf_random;
7289
extern const AVFilter ff_vf_readeia608;
7390
extern const AVFilter ff_vf_readvitc;
7491
--
7592
2.34.1
93+

ffmpeg/0002-libavfilter-raisr_opencl-Add-raisr_opencl-filter.patch

Lines changed: 0 additions & 50 deletions
This file was deleted.

0 commit comments

Comments
 (0)