libheif
enable-chromium-hevc-hardware-deco
libheif | enable-chromium-hevc-hardware-deco | |
---|---|---|
16 | 5 | |
1,542 | - | |
2.0% | - | |
9.3 | - | |
17 days ago | - | |
C++ | ||
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libheif
-
HEIC Photo Support Inquiry
Apple doesn't own HEIF, there are open implementations for reading all variants of it. Here's a browser-side implementation: https://alexcorvi.github.io/heic2any/
-
#86 New Decoding · This Week in GNOME
The image crate is the de facto crate for raster images. It doesn't have HEIF support, which is probably why libheif-rs was brought in (it's simply a wrapper for libheif, which is what lots of programs, including GIMP and ImageMagick, use for HEIF support).
-
Heic Decoder in go
Libheif has Go bindings https://github.com/strukturag/libheif/tree/master/go/heif. I used this library for AVIF (via libaom) but it should work for HEIF (via libde265.)
-
HEIC preview and displaying HEIC
libheif provides a pixbuf loader that should make it work.
- convert .heif/.heic
- 'Texting between iPhone and Android is broken:' Google puts Apple on blast for converting Android texts to green bubbles and 'blurry' compressed videos
-
is there a terminal command to convert jpg and pngs to heic?
Note that there is no checking for valid parameters when using the prefix. BUGS Please reports bugs or issues at https://github.com/strukturag/libheif AUTHORS Dirk Farin, struktur AG COPYRIGHT Copyright © 2017 struktur AG
-
Pixels are costly uwu
They use https://github.com/strukturag/libheif to decode it and just ignore the patent or licensing requirements. This is similar to how vlc's libavcodec implements HEVC/h264 (they say "we're french, software patents have no jurisdiction here")
- Ask HN: Why does nobody support h.265/HEVC anymore?
-
HEIC to PNG converter?
As far as I understand, imagemagick uses libheif under the hood, which can be installed with apt install libheif-dev
enable-chromium-hevc-hardware-deco
-
Raspberry Pi 5 drops codec hardware acceleration except for HEVC decode
Most devices can indeed most likely handle software decode of more common resolutions, codecs and bitrates. But I'd really hope they'd pick the one that won't suck up all the battery, so H264. This line of thought is supported by the fact that YouTube still provides an H264 option with most if not all videos.
With higher bitrate things, HEVC seems to grow in popularity but even software decode support is not everywhere. Netflix for example requires the installation of HEVC support on Windows to play 4K content.
Actually hardware-accelerated video decode is even spottier and more unreliable across most platforms. The JS API for codec support (canPlayType) literally returns "maybe" and "probably". It's quite bad.
So far the best compatibility I've seen has been Edge with flags on Windows (MPEG-2, H264, HEVC, AV1, VP8, VP9 with most also supporting accelerated encode). It still fails with some content (Dolby Vision P5 colors are incorrect, HEVC Rext doesn't play - more info about HEVC is available here https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...). Chrome on macOS is a close second in terms of codec support.
The worst in terms of HW acceleration being all the browsers on desktop Linux-s, few and fragile combinations that offer limited and janky support. But it's slowly improving. This combined with the not-the-latest hardware many use, means things like VP9 or AV1 tend to stutter.
I'd love to see some more generic stats, but considering the APIs aren't sufficient to determine actual support, these might be difficult to gather.
-
Chrome still hasn't changed its opinion about dropping JPEG XL support
> The 'right' solution would be to just use system codecs for everything. Many apps need good implementations of image codecs. They just need to be implemented once by the OS vendor (or the toolkit on Linux).
Windows has done this and is still doing this, but the decade-long track history so far is that this does not work well. It can work, in a very limited scope and if you have a lot of influence.
Sure, it's really nice if an 8K@60Hz HDR HEVC video plays perfectly straight in your browser or desktop app, but more often than not, it just won't. You don't have the right browser, the extension installed (due to license agreements), good enough graphics drivers or someone has forgotten a flag yet again.
And we haven't even gotten to the immense amount of variation each codec introduces or the potential attack surface.
How shit the situation is with just HEVC (and thus also basically HEIC): https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...
> Just file a bug against your OS.
In the end that "just" carries a lot of burden, it can't be the users reporting these issues.
It's just way easier to leech off of ffmpeg and similar, and let it deal with all the formats. Instead of hoping that maybe you can leverage what the OS gives you, that it works and works correctly in all your edge-cases.
Though not everything is that gloomy, there are Vulkan extensions that might (in the future) simplify cross-platform image and video decoding (and HW acceleration).
- Google Quietly Added HEVC Support in Chrome
-
Ask HN: Why does nobody support h.265/HEVC anymore?
I think there are a few patches that can enable HEVC hardware decoding with chromium. Though I am a firefox user so I didn't test whether these patches works or not. https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...
What are some alternatives?
exembed - Go Embed experiments
enable-chromium-hevc-hardware-decoding - A guide that teach you enable hardware HEVC decoding & encoding for Chrome / Edge, or build a custom version of Chromium / Electron that supports hardware & software HEVC decoding and hardware HEVC encoding.
avif-format - An AV1 Image (AVIF) file format plug-in for Adobe® Photoshop®
thorium-libjxl - libjxl for Chromium - restores JPEG-XL functionality to Thorium/Chromium post M109
Alpine.js - A rugged, minimal framework for composing JavaScript behavior in your markup.
raspberry-pi-pcie-devices - Raspberry Pi PCI Express device compatibility database
goheif - go gettable decoder/converter for HEIF/HEIC based on libde265
SVT-AV1
budibase - Budibase is an open-source low code platform that helps you build internal tools in minutes 🚀
SubKt - SubKt is a highly configurable toolkit for fansubbing automation written in Kotlin for Gradle. Documentation can be found at https://github.com/Myaamori/SubKt/blob/master/docs/subkt/index.md
heif - High Efficiency Image File Format
Joshiraku - Kaleido-subs release of Joshiraku (Rakugo Girls)