From c9e8dc97d4ce551e2ee707e8784740a581e44b6e Mon Sep 17 00:00:00 2001 From: EnumDev Date: Mon, 1 Jun 2026 14:42:33 +0300 Subject: [PATCH] Update package version to 1.23.0 --- pkg.info | 6 +- source-files/svt-av1-4.0-fix.patch | 116 ----------------------------- source.sh | 7 -- 3 files changed, 3 insertions(+), 126 deletions(-) delete mode 100644 source-files/svt-av1-4.0-fix.patch diff --git a/pkg.info b/pkg.info index 78ec624..14cc686 100644 --- a/pkg.info +++ b/pkg.info @@ -1,7 +1,7 @@ name: libheif description: HEIF and AVIF file format decoder and encoder -version: 1.21.2 -revision: 4 +version: 1.23.0 +revision: 1 url: https://github.com/strukturag/libheif license: LGPL3-or-later maintainers: @@ -38,4 +38,4 @@ downloads: - url: https://github.com/strukturag/libheif/archive/refs/tags/v${BPM_PKG_VERSION}.tar.gz extract_to: ${BPM_SOURCE} extract_strip_components: 1 - checksum: 79996de959d28ca82ef070c382304683f5cdaf04cbe2953a74587160a3710a36 + checksum: 50ea4fbd1e19c7b8820271d6d0c73f2623fec5d659ce9fae57e48dbeb94fab9a diff --git a/source-files/svt-av1-4.0-fix.patch b/source-files/svt-av1-4.0-fix.patch deleted file mode 100644 index 4041977..0000000 --- a/source-files/svt-av1-4.0-fix.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 61923302d12f80e2a5c945a3903d1009cf67778f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= -Date: Sat, 24 Jan 2026 17:30:35 +0100 -Subject: [PATCH 1/3] Set SVT-AV1's avif option for v4.0.0 or later - ---- - libheif/plugins/encoder_svt.cc | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/libheif/plugins/encoder_svt.cc b/libheif/plugins/encoder_svt.cc -index 03d87ca1ae..7993e3959a 100644 ---- a/libheif/plugins/encoder_svt.cc -+++ b/libheif/plugins/encoder_svt.cc -@@ -858,9 +858,10 @@ static heif_error svt_start_sequence_encoding_intern(void* encoder_raw, const he - #endif - } - else { -- // TODO: enable when https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/2245 is resolved -- // svt_config.avif = true; -- // encoder->still_image_mode = true; -+#if SVT_AV1_CHECK_VERSION(4, 0, 0) -+ svt_config.avif = true; -+ encoder->still_image_mode = true; -+#endif - } - - if (color_format == EB_YUV422 || bitdepth_y > 10) { - -From f9919e34868920000ddba13c55e1bf3731b1e64b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= -Date: Sat, 24 Jan 2026 18:18:46 +0100 -Subject: [PATCH 2/3] Use PredStructure values from definitions.h instead of - removed SvtAv1PredStructure for v4.0.0 or later - ---- - libheif/plugins/encoder_svt.cc | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -diff --git a/libheif/plugins/encoder_svt.cc b/libheif/plugins/encoder_svt.cc -index 7993e3959a..393748e997 100644 ---- a/libheif/plugins/encoder_svt.cc -+++ b/libheif/plugins/encoder_svt.cc -@@ -838,8 +838,20 @@ static heif_error svt_start_sequence_encoding_intern(void* encoder_raw, const he - // svt_config.force_key_frames = true; TODO: this does not seem to work (see all [1]) - - #if 1 -+#if SVT_AV1_CHECK_VERSION(4, 0, 0) -+ switch (options->gop_structure) { -+ case heif_sequence_gop_structure_intra_only: -+ //svt_config.pred_structure = 1; // LOW_DELAY -+ break; -+ case heif_sequence_gop_structure_lowdelay: -+ //svt_config.pred_structure = 1; // LOW_DELAY -+ break; -+ case heif_sequence_gop_structure_unrestricted: -+ svt_config.pred_structure = 2; // RANDOM_ACCESS -+ break; -+ } -+#else - // TODO: setting pref_structure to SVT_AV1_PRED_LOW_DELAY_B hangs the encoder -- - switch (options->gop_structure) { - case heif_sequence_gop_structure_intra_only: - //svt_config.pred_structure = SvtAv1PredStructure::SVT_AV1_PRED_LOW_DELAY_B; -@@ -851,6 +863,7 @@ static heif_error svt_start_sequence_encoding_intern(void* encoder_raw, const he - svt_config.pred_structure = SvtAv1PredStructure::SVT_AV1_PRED_RANDOM_ACCESS; - break; - } -+#endif - - if (options->keyframe_distance_max) { - svt_config.intra_period_length = options->keyframe_distance_max; // TODO -1 ? -@@ -921,7 +934,7 @@ static heif_error read_encoder_output_packets(void* encoder_raw, bool done_sendi - - /* TODO: this is a hack - * When using -- * svt_config.pred_structure = SvtAv1PredStructure::SVT_AV1_PRED_LOW_DELAY_B; -+ * svt_config.pred_structure = 1; // LOW_DELAY - * svt_av1_enc_get_packet() hangs on the second call. As a workaround, we can leave the - * loop when we got the image: - */ - -From 9c9d839132f8846652ecadceaa8dcf23d1ff3e4c Mon Sep 17 00:00:00 2001 -From: Joachim Bauch -Date: Wed, 8 Apr 2026 10:23:34 +0200 -Subject: [PATCH 3/3] Add patch to fix building against SVT-AV1 4.1.0 - ---- - libheif/plugins/encoder_svt.cc | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/libheif/plugins/encoder_svt.cc b/libheif/plugins/encoder_svt.cc -index 393748e997..3e614908fe 100644 ---- a/libheif/plugins/encoder_svt.cc -+++ b/libheif/plugins/encoder_svt.cc -@@ -838,7 +838,19 @@ static heif_error svt_start_sequence_encoding_intern(void* encoder_raw, const he - // svt_config.force_key_frames = true; TODO: this does not seem to work (see all [1]) - - #if 1 --#if SVT_AV1_CHECK_VERSION(4, 0, 0) -+#if SVT_AV1_CHECK_VERSION(4, 1, 0) -+ switch (options->gop_structure) { -+ case heif_sequence_gop_structure_intra_only: -+ //svt_config.pred_structure = 1; // LOW_DELAY -+ break; -+ case heif_sequence_gop_structure_lowdelay: -+ //svt_config.pred_structure = 1; // LOW_DELAY -+ break; -+ case heif_sequence_gop_structure_unrestricted: -+ svt_config.pred_structure = PredStructure::RANDOM_ACCESS; -+ break; -+ } -+#elif SVT_AV1_CHECK_VERSION(4, 0, 0) - switch (options->gop_structure) { - case heif_sequence_gop_structure_intra_only: - //svt_config.pred_structure = 1; // LOW_DELAY diff --git a/source.sh b/source.sh index 8a95d40..91ef196 100644 --- a/source.sh +++ b/source.sh @@ -2,13 +2,6 @@ # BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE # BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT -# The prepare function is executed in the root of the temp directory -# This function is used for putting downloaded files to the correct location or applying patches -prepare() { - cd "$BPM_SOURCE" - patch -Np1 -i "$BPM_WORKDIR"/svt-av1-4.0-fix.patch -} - # The build function is executed in the source directory # This function is used to compile the source code build() {