All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-multimedia][PATCH] libheif: add recipe
@ 2025-01-05 18:16 Markus Volk
  2025-01-06 15:24 ` [oe] " Khem Raj
  0 siblings, 1 reply; 4+ messages in thread
From: Markus Volk @ 2025-01-05 18:16 UTC (permalink / raw)
  To: openembedded-devel

libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file format decoder and encoder. There is partial support for ISO/IEC 23008-12:2022 (2nd Edition) capabilities.

HEIF and AVIF are new image file formats employing HEVC (H.265) or AV1 image coding, respectively, for the best compression ratios currently possible.

libheif makes use of libde265 for HEIF image decoding and x265 for encoding. For AVIF, libaom, dav1d, svt-av1, or rav1e are used as codecs.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../libheif/libheif_1.19.5.bb                 | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb

diff --git a/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb b/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb
new file mode 100644
index 0000000000..144d899f3f
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb
@@ -0,0 +1,23 @@
+SUMMARY = "libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file format decoder and encoder"
+HOMEPAGE = "https://github.com/strukturag/libheif"
+LICENSE = "LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f07b2bc152eaee52edbd338825f474d4"
+
+SRC_URI = "git://github.com/strukturag/libheif.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+SRCREV = "cd95b113d78d0696105a9e678cbd19487ee13d6c"
+
+inherit cmake pkgconfig
+
+DEPENDS += "gdk-pixbuf openh264 x265 libde265 tiff zlib libpng"
+
+PACKAGECONFIG += "dav1d jpeg jpeg2000 ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'ffmpeg', '', d)}"
+PACKAGECONFIG[aom] = "-DWITH_AOM_ENCODER=ON -DWITH_AOM_DECODER=ON,-DWITH_AOM_ENCODER=OFF -DWITH_AOM_DECODER=OFF,aom"
+PACKAGECONFIG[dav1d] = "-DWITH_DAV1D=ON, -DWITH_DAV1D=OFF,dav1d"
+PACKAGECONFIG[svt-av1] = "-DWITH_SvtEnc=ON,-DWITH_SvtEnc=OFF,svt-av1"
+PACKAGECONFIG[jpeg] = "-DWITH_JPEG_DECODER=ON -DWITH_JPEG_ENCODER=ON,-DWITH_JPEG_ENCODER=OFF -DWITH_JPEG_DECODER=OFF,jpeg"
+PACKAGECONFIG[ffmpeg] = "-DWITH_FFMPEG_DECODER=ON,-DWITH_FFMPEG_DECODER=OFF,ffmpeg"
+PACKAGECONFIG[jpeg2000] = "-DWITH_OpenJPEG_ENCODER=ON -DWITH_OpenJPEG_DECODER=ON,-DWITH_OpenJPEG_ENCODER=OFF -DWITH_OpenJPEG_DECODER=OFF,openjpeg"
+
+FILES:${PN} += "${libdir}/libheif ${datadir}/thumbnailers ${libdir}/gdk-pixbuf*"
-- 
2.47.1



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [oe] [meta-multimedia][PATCH] libheif: add recipe
  2025-01-05 18:16 [meta-multimedia][PATCH] libheif: add recipe Markus Volk
@ 2025-01-06 15:24 ` Khem Raj
  2025-01-06 16:29   ` Markus Volk
  0 siblings, 1 reply; 4+ messages in thread
From: Khem Raj @ 2025-01-06 15:24 UTC (permalink / raw)
  To: f_l_k; +Cc: openembedded-devel

it fails layer compat check see

https://valkyrie.yoctoproject.org/#/builders/81/builds/251/steps/11/logs/errors

On Sun, Jan 5, 2025 at 10:17 AM Markus Volk via lists.openembedded.org
<f_l_k=t-online.de@lists.openembedded.org> wrote:
>
> libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file format decoder and encoder. There is partial support for ISO/IEC 23008-12:2022 (2nd Edition) capabilities.
>
> HEIF and AVIF are new image file formats employing HEVC (H.265) or AV1 image coding, respectively, for the best compression ratios currently possible.
>
> libheif makes use of libde265 for HEIF image decoding and x265 for encoding. For AVIF, libaom, dav1d, svt-av1, or rav1e are used as codecs.
>
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  .../libheif/libheif_1.19.5.bb                 | 23 +++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb
>
> diff --git a/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb b/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb
> new file mode 100644
> index 0000000000..144d899f3f
> --- /dev/null
> +++ b/meta-multimedia/recipes-multimedia/libheif/libheif_1.19.5.bb
> @@ -0,0 +1,23 @@
> +SUMMARY = "libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file format decoder and encoder"
> +HOMEPAGE = "https://github.com/strukturag/libheif"
> +LICENSE = "LGPL-3.0-only"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=f07b2bc152eaee52edbd338825f474d4"
> +
> +SRC_URI = "git://github.com/strukturag/libheif.git;protocol=https;branch=master"
> +
> +S = "${WORKDIR}/git"
> +SRCREV = "cd95b113d78d0696105a9e678cbd19487ee13d6c"
> +
> +inherit cmake pkgconfig
> +
> +DEPENDS += "gdk-pixbuf openh264 x265 libde265 tiff zlib libpng"
> +
> +PACKAGECONFIG += "dav1d jpeg jpeg2000 ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'ffmpeg', '', d)}"
> +PACKAGECONFIG[aom] = "-DWITH_AOM_ENCODER=ON -DWITH_AOM_DECODER=ON,-DWITH_AOM_ENCODER=OFF -DWITH_AOM_DECODER=OFF,aom"
> +PACKAGECONFIG[dav1d] = "-DWITH_DAV1D=ON, -DWITH_DAV1D=OFF,dav1d"
> +PACKAGECONFIG[svt-av1] = "-DWITH_SvtEnc=ON,-DWITH_SvtEnc=OFF,svt-av1"
> +PACKAGECONFIG[jpeg] = "-DWITH_JPEG_DECODER=ON -DWITH_JPEG_ENCODER=ON,-DWITH_JPEG_ENCODER=OFF -DWITH_JPEG_DECODER=OFF,jpeg"
> +PACKAGECONFIG[ffmpeg] = "-DWITH_FFMPEG_DECODER=ON,-DWITH_FFMPEG_DECODER=OFF,ffmpeg"
> +PACKAGECONFIG[jpeg2000] = "-DWITH_OpenJPEG_ENCODER=ON -DWITH_OpenJPEG_DECODER=ON,-DWITH_OpenJPEG_ENCODER=OFF -DWITH_OpenJPEG_DECODER=OFF,openjpeg"
> +
> +FILES:${PN} += "${libdir}/libheif ${datadir}/thumbnailers ${libdir}/gdk-pixbuf*"
> --
> 2.47.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#114630): https://lists.openembedded.org/g/openembedded-devel/message/114630
> Mute This Topic: https://lists.openembedded.org/mt/110442845/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [oe] [meta-multimedia][PATCH] libheif: add recipe
  2025-01-06 15:24 ` [oe] " Khem Raj
@ 2025-01-06 16:29   ` Markus Volk
  2025-01-06 18:23     ` Khem Raj
  0 siblings, 1 reply; 4+ messages in thread
From: Markus Volk @ 2025-01-06 16:29 UTC (permalink / raw)
  To: raj.khem; +Cc: f_l_k, Khem Raj via lists.openembedded.org, openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 763 bytes --]

On Mon, Jan 6 2025 at 07:24:30 -08:00:00, Khem Raj via 
lists.openembedded.org <raj.khem=gmail.com@lists.openembedded.org> 
wrote:
> it fails layer compat check see


x265 is restricted to x86 systems.
I would recommend to drop the restriction. For example it also builds 
for qemuarm


In addition the libheif.bb lacks an entry for LICENSE_FLAGS_ACCEPTED = 
"commercial"


openh264 and libde265 are not added as RDEPENDS in:
 
<https://github.com/openembedded/meta-openembedded/blob/master/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb>

Is there a reason, why they are not added as RDEPENDS by default? If so 
I'll move the libheif recipe to my personal layer
If it's ok to add them, I'll send a v2 trying to fix the issues



[-- Attachment #2: Type: text/html, Size: 1265 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [oe] [meta-multimedia][PATCH] libheif: add recipe
  2025-01-06 16:29   ` Markus Volk
@ 2025-01-06 18:23     ` Khem Raj
  0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2025-01-06 18:23 UTC (permalink / raw)
  To: Markus Volk; +Cc: Khem Raj via lists.openembedded.org, openembedded-devel

On Mon, Jan 6, 2025 at 8:29 AM Markus Volk <f_l_k@t-online.de> wrote:
>
> On Mon, Jan 6 2025 at 07:24:30 -08:00:00, Khem Raj via lists.openembedded.org <raj.khem=gmail.com@lists.openembedded.org> wrote:
>
> it fails layer compat check see
>
>
>
> x265 is restricted to x86 systems.
> I would recommend to drop the restriction. For example it also builds for qemuarm
>
>
> In addition the libheif.bb lacks an entry for LICENSE_FLAGS_ACCEPTED = "commercial"
>
>
> openh264 and libde265 are not added as RDEPENDS in:
>  https://github.com/openembedded/meta-openembedded/blob/master/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
>
> Is there a reason, why they are not added as RDEPENDS by default? If so I'll move the libheif recipe to my personal layer
> If it's ok to add them, I'll send a v2 trying to fix the issues

Adding might be fine in a v2 perhaps they did not build for non x86
and non aarch64 architectures. Things might have changed with time
so enabling it for other architectures as well might be worth trying.

>


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-01-06 18:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-05 18:16 [meta-multimedia][PATCH] libheif: add recipe Markus Volk
2025-01-06 15:24 ` [oe] " Khem Raj
2025-01-06 16:29   ` Markus Volk
2025-01-06 18:23     ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.