Skip to content

Commit 45bb28c

Browse files
committed
CI: enable SVT-JPEG-XS
only for Win + non-ARM Linux - doesn't seem to be officially supported in neither ARM nor macOS configure.ac - require just SVT-JPEG-XS 0.9 as is in msys Win package (proxy mode commented out - isn't needed to set to "proxy_mode_full" explicitly, anyways)
1 parent bb16efd commit 45bb28c

7 files changed

Lines changed: 23 additions & 5 deletions

File tree

.github/scripts/Linux/install_ffmpeg.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ build_install() {
115115
--enable-libspeex \
116116
--enable-libsvtav1 \
117117
--enable-libsvthevc \
118+
--enable-libsvtjpegxs \
118119
--enable-libsvtvp9 \
119120
--enable-libvpl \
120121
--enable-libvpx \

.github/scripts/Linux/install_others.sh

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,16 @@ install_rav1e() {(
6464
/usr/local/lib/pkgconfig/rav1e.pc
6565
)}
6666

67+
install_svt_jpegxs() {(
68+
git clone --depth 1 https://github.com/OpenVisualCloud/SVT-JPEG-XS
69+
# when built in U22.04, the stack is set as executable for some reason,
70+
# not in Arch, eg.
71+
export LDFLAGS="-Wl,-z,noexecstack"
72+
cmake -B SVT-JPEG-XS/build SVT-JPEG-XS
73+
cmake --build SVT-JPEG-XS/build --parallel "$(nproc)"
74+
sudo cmake --install SVT-JPEG-XS/build
75+
)}
76+
6777
# FFmpeg master needs at least v1.3.277 as for 6th Mar '25
6878
install_vulkan() {(
6979
sudo apt build-dep libvulkan1
@@ -87,7 +97,7 @@ if [ $# -eq 1 ] && { [ "$1" = -h ] || [ "$1" = --help ] || [ "$1" = help ]; }; t
8797
fi
8898

8999
if [ $# -eq 0 ] || [ $show_help ]; then
90-
set -- gpujpeg ndi pipewire rav1e vulkan ximea
100+
set -- gpujpeg ndi pipewire rav1e svt_jpegxs vulkan ximea
91101
fi
92102

93103
if [ $show_help ]; then

.github/scripts/Linux/prepare.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ sudo apt install libasound-dev libcaca-dev libjack-jackd2-dev libnatpmp-dev libv
3535
sudo apt install libopencv-core-dev libopencv-imgproc-dev
3636
sudo apt install libcurl4-openssl-dev # for RTSP client (vidcap)
3737
sudo apt install i965-va-driver-shaders libva-dev # instead of i965-va-driver
38+
sudo apt install nasm # for SVT-JPEG-XS
3839

3940
sudo apt install qt6-base-dev qt6-wayland
4041
. /etc/os-release # source ID and VERSION_ID

.github/scripts/Windows/prepare_msys.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ $PACMAN_INSTALL $m-asciidoc \
5555
$m-fluidsynth\
5656
$m-glew $m-glfw\
5757
$m-libnatpmp \
58+
$m-svt-jpeg-xs \
5859
$m-vulkan-headers $m-vulkan-loader \
5960

6061
$PACMAN_INSTALL $m-libsoxr $m-speexdsp

.github/scripts/environment.sh

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ case "$RUNNER_OS" in
9595
FEATURES="$FEATURES --disable-qt"
9696
else
9797
FEATURES="$FEATURES $CUDA_FEATURES \
98-
--enable-lavc-hw-accel-vdpau"
98+
--enable-lavc-hw-accel-vdpau \
99+
--enable-jpegxs"
99100
fi
100101
;;
101102
macOS)
@@ -107,7 +108,11 @@ case "$RUNNER_OS" in
107108
"
108109
;;
109110
Windows)
110-
FEATURES="$FEATURES $CUDA_FEATURES --enable-dshow --enable-spout --enable-wasapi"
111+
FEATURES="$FEATURES $CUDA_FEATURES \
112+
--enable-dshow \
113+
--enable-jpegxs \
114+
--enable-spout \
115+
--enable-wasapi"
111116
;;
112117
*)
113118
echo "Unexpected runner OS: ${RUNNER_OS:-(undefined)}" >&2

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2408,7 +2408,7 @@ AC_ARG_ENABLE(jpegxs,
24082408
[jpegxs_req=$build_default]
24092409
)
24102410

2411-
PKG_CHECK_MODULES([JPEGXS], [SvtJpegxs >= 0.10],
2411+
PKG_CHECK_MODULES([JPEGXS], [SvtJpegxs >= 0.9],
24122412
[FOUND_JPEGXS_DEP=yes],
24132413
[FOUND_JPEGXS_DEP=no]
24142414
)

src/video_decompress/jpegxs.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ static bool configure_with(struct state_decompress_jpegxs *s, unsigned char *bit
159159
s->decoder.verbose = VERBOSE_NONE;
160160
s->decoder.threads_num = get_cpu_core_count();
161161
s->decoder.use_cpu_flags = CPU_FLAGS_ALL;
162-
s->decoder.proxy_mode = proxy_mode_full;
162+
// s->decoder.proxy_mode = proxy_mode_full;
163163

164164
SvtJxsErrorType_t err = svt_jpeg_xs_decoder_init(SVT_JPEGXS_API_VER_MAJOR, SVT_JPEGXS_API_VER_MINOR, &s->decoder, bitstream_buffer, codestream_size, &s->image_config);
165165
if (err != SvtJxsErrorNone) {

0 commit comments

Comments
 (0)