GithubHelp home page GithubHelp logo

Enable HEIF image uploads about diaspora HOT 8 OPEN

goobertron avatar goobertron commented on May 26, 2024
Enable HEIF image uploads

from diaspora.

Comments (8)

tclaus avatar tclaus commented on May 26, 2024

heif or heic images must then converted by the backend to a supported image format. Heif is not a format supported by browser engines:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#supported_image_formats

from diaspora.

SuperTux88 avatar SuperTux88 commented on May 26, 2024

it would need to be processed on the server anyway to get the different sizes, but it's also not supported by all servers (I don't know if that's because it's a proprietary format, or if there are other reasons for that) ... so at least at the moment it's not that easy to support.

from diaspora.

goobertron avatar goobertron commented on May 26, 2024

Thanks, both. I'd hoped this would be a really simple addition. I'll leave the ticket open in case anyone feels like taking this on in the future – as long as you don't think it would hamper server performance.

from diaspora.

denschub avatar denschub commented on May 26, 2024

Just for the record,

I don't know if that's because it's a proprietary format, or if there are other reasons for that

ImageMagick supports HEIF if libheif is installed. A package is available on Debian since Buster, and on Ubuntu since Bionic, so it would not be unreasonable to add it as a dependency, imho.

(it's also not proprietary. :))

from diaspora.

SuperTux88 avatar SuperTux88 commented on May 26, 2024

At least for Ubuntu bionic I only find guides which include compiling imagemagick yourself, so I thought it's not just enough to install the lib? But maybe these guides are wrong? Later version seem to support it out of the box.

from diaspora.

denschub avatar denschub commented on May 26, 2024

Uh, okay, I actually don't know if there are any additional dependencies, like a minimal required ImageMagick version. The IM website just says "it's supported", but not since when. If it's not supported in at least Focal, than yeah, this might simply not be realistic at the moment.

from diaspora.

SuperTux88 avatar SuperTux88 commented on May 26, 2024

I guess the lib needs to be installed at build time so it can link against it, that's why newer versions have it as hard dependency and then it's supported, older Ubuntu versions don't have it as dependency and that are also the ones with guides that describe recompiling imagemagick after installing the lib.

from diaspora.

denschub avatar denschub commented on May 26, 2024

Yeah that makes total sense. I'm not entirely sure why I didn't check the build configs for the packages in question. Looking at the Changelog of the Debian package, I found this change from 2018:

imagemagick (8:6.9.10.23+dfsg-1) unstable; urgency=high

[...]

  • Enable HEIF/HEIC image format support (Closes: #914120).
  • Enable WEBP image format (Closes: #806425, #912777)

ImageMagick 6.9.10.23 or newer is in Ubuntu since Focal, and in Debian since Buster.

Debian Stretch is pretty close to EOL, but unfortunately Bionic is still supported. Requiring Ubuntu Focal or newer might be reasonable, but I'm not going to make that call. I'd tend towards being fine with that, especially since the same release also enables WebP, and diaspora* could gain a lot by converting to WebP instead of JPEG...

from diaspora.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.