Settings

Theme

Ask HN: How are most people converting HEIC to jpg?

19 points by par a month ago · 47 comments · 1 min read


I use Automator (mac os app) to do this, but it seems like such a dumb thing to do so regularly. If i transfer a photo on my iphone via google drive or some other cloud service, it inevitably needs to be changed to jpg.

gethly a month ago

I use VIPS cli https://www.libvips.org

I think converting HEIC into jpg would be simple

  vips copy -i src.hif out.jpg
Although I have not used it for a while so not sure it is exactly that. It also does not support batches, you must run one image at a time, but that can be scripted. It also does not support multiple operations, so you might need to use the .v extensions as intermediary between multiple presets(for example sepia + resize + crop).
  • rslashuser a month ago

    If I do this on my mac, I wonder if am technically violating the HEIC patent license. I suppose it depends on the details in the patent license, plus perhaps rights Apple has acquired for its users. I definitely don't know, but maybe someone on HN does?

    • dkuntz2 a month ago

      I would assume not because you can do the same thing using a CLI apple installs on all macs, sips

          sips -s format jpeg in.heic --out out.jpeg
      
      also, a heic is just a container around an h265 image frame
    • gethly a month ago

      i doubt anyone needs to be concerned with licences if they are not producing a paid product.

  • jcupitt a month ago

    It's just `vips copy src.heic dst.jpg`.

floam a month ago

You can choose on the share sheet, right?

I’m referring to this:

- select something in Photos, then Share.

- tap “Options” under “1 photo selected” top of sheet.

The first choice there is:

Format:

[√] Automatic

[] Current

[] Most Compatible

Choose Automatic for the best format for the destination or Current to prevent file format conversions. Photos and videos may convert to JPEG, PNG, and H.264 formats if you choose Most Compatible.

Most Compatible will put a jpeg on Drive for example, I just verified myself.

PaulHoule a month ago

To make it perfectly clear, no browser support outside Appleworld

https://caniuse.com/?search=HEIC

I mostly am a DSLR photographer but for the occasional iPhone shot

https://mastodon.social/@UP8/115740936297822037

I use Photoshop. (Where's Cindy when I need her?)

varenc a month ago

Are the HEIC photos personal ones being created by an iPhone? There's a setting you can flip that'll make your iPhone just take JPGs. Which could make sense from you if you're not getting any benefit from HEIC. https://support.apple.com/en-us/116944#:~:text=How%20to%20ca...

Also I've had no problem with HEIC photos on GPhotos, Dropbox, etc. But YMMV

jeremymcanally a month ago

On macOS, select images, right click, “Quick Actions,” “Convert Image.”

  • rvz a month ago

    That is the only correct answer for non-technical people.

  • czbond a month ago

    I like it - I had been taking screenshots with Cmd-Shift-4. ha!

k310 a month ago

When one eludes my ban ... (see other posts how to ban it inside the phone, but it exists outside (people send me messages)) [0] samples to play with.

On the desktop, Preview app (and lots of others) will open and export as ...

On the phone (Apple, sometimes you bewilder me), You can convert in Files, not Photos. 1. Save a photo to FILES from camera roll or web (This works with webp, as well) 2. click and hold the THUMBNAIL, do not open the image. 3. Quick Actions -- Convert image. 4. You can now "save" the image (open, do not click and hold) to your camera roll.

This is BONKERS

As others have noted, "There's an app to do it".

Worst for me in daily life, when you get info on an image (in the camera roll, pull up on the image) WEBP does not even show as a file type. HEIC does.

ios 18, not 26.

[0] https://toolsfairy.com/tools/image-test/sample-heic-files

linkregister a month ago

I save my iPhone photos to my linux desktop. The default image viewing software in the Gnome 3 window manager can display HEIC images.

Conversions on the command line are simple enough with imagemagick. Prior to conversion, I use exiftool to rename the files from IMG_0123.HEIC to the date the image or video was taken, followed by a truncated sha256 digest of the file, e.g. 2025-12-22-1732-f8b7302.HEIC. Otherwise, you can get a nasty condition where the IMG_XXXX filenames collide when consolidated into the same directory.

mikece a month ago

HEIC is a container; HEIF is a container format. I don't know why images from my iPhone get saved with a HEIC extension... seems like it should be HEIF.

That said, when I move photos from my phone to by desktop via Signal; somewhere along the way it gets converted to JPEG so it's not a concern.

  • mikaraento a month ago

    You do know that something similar is true for JPEG, right? :)

    JPEG is a compression method. Files with JPEG-compressed data are most likely to be in either JFIF or EXIF container formats. Both will almost always use the .jpg/.jpeg file extension.

michaelbryzek a month ago

Ruby script on my PATH to use sips to convert to jpeg. I can cd to the directory and run "convert.rb" - will find all HEIC files and convert

    #!/usr/bin/env ruby
    
    def run(extension)
      files = `find . -type f -name "\*.#    {extension}"`.split("\n")
      files.each do |f|
        jpg = f.sub(/\.#{extension}/i, '.jpg')
        if !File.exist?(jpg)
          cmd = "sips -s format jpeg '#{f}' --out '#{jpg}'"
          `#{cmd}`
          puts cmd
        end
      end
    end

    run("HEIC")
    run("heic")
  • nine_k a month ago

    If you have imagemagick installed:

      magick mogrify -format JPG *.heic *.HEIC
reactordev a month ago

Hi.

ffmpeg -i input.heic output.jpg

This works on all platforms. You can automate it too. I did for a cloud platform.

Best of luck.

fcpguru a month ago

there's a settings on ios to use jpgs always and just remove HEIC from your life!

Settings -> Camera -> Formats -> Most Compatible

  • parOP a month ago

    my concern was that it takes up more space on my phone, do you know if that's true?

    • fcpguru a month ago

      yes that's true about 40% more! You can also leave as HEIC but do:

      Settings → Apps -> Photos → Transfer to Mac or PC → Automatic (convert to jpg)

      or

      In "Shortcuts" app - select photo, convert to jpeg, save file:

      https://i.imgur.com/yyUgMm1.png

    • Terretta a month ago

      Set this to just kick in when you transfer/export/share. It generally does the right thing. That doesn't store/keep the dupe, just delivers JPEG to target.

    • xenospn a month ago

      You can enable your phone to offload originals to iCloud, and only download full-res on demand.

djinnrutger a month ago

I use Nomacs Image Lounge as my default image view on windows. It works really well and it can convert images including HEIC too. Only issue is I think the newer HEIC may not work, but I saw that the newer version on the github may have addressed this but I have not tested. https://nomacs.org/ https://github.com/nomacs/nomacs

handsclean a month ago

Apple generally does this transparently and automatically when exporting photos. If you’re not getting that behavior then you could have it off in settings, it could be your workflow, or it could be a Google Drive bug/limitation. What exactly do you mean by “transfer a photo on my iphone via google drive”? Something like open the Apple Photos app, hit share, select Google Drive, save it somewhere there, go to the Google Drive app, and copy a link?

li_ion a month ago

I’ve always right-clicked the image(s) in Finder, selected Quick Actions, and picked Convert Image. Does this still work on newer Macs?

zetalyrae a month ago

On NixOS, the libheif package provides a `heif-dec` command, which you can use as follows:

    heif-dec foo.heic foo.jpg
  • dangus a month ago

    There are also things like Dolphin actions/addons (I forget what they’re actually called) that you can add so you can do a conversion with a right click.

    They basically consume the libheif command line tool so you install that as a prerequisite.

    Gwenview also opens them.

    • dopple a month ago

      This is exactly how I do it in KDE:

        > cat ~/.local/share/kio/servicemenus/convertHEIF.desktop 
        [Desktop Entry]
        Type=Service
        MimeType=image/heif;
        Actions=convertHEIF
      
        [Desktop Action convertHEIF]
        Name=Convert to JPEG
        Icon=image-bmp
        Exec=/bin/sh -c "heif-dec -q 95 %u $(dirname %u)/$(basename %u .heic).jpg"
dev_at a month ago

I use LiveConvert (it runs locally on your phone). https://apps.apple.com/no/app/liveconvert-heic-to-jpg/id6747...

SeeManDo a month ago

heif-convert CLI https://github.com/NeverMendel/heif-convert

Use it to convert customer images sent from iphones.

Yizahi a month ago

I'm using FastStone, it has individual and batch conversion options. Though I touch HEIC only rarely, when someone with iphone sends me pictures.

ComputerGuru a month ago

The greybeards would do it with imagemagick, vips, or even ffmpeg. Gives you full control over the quality and you can script it, parallelize it, and more.

BugsJustFindMe a month ago

On macOS if you drag a synced HEIC photo from Photos.app to the Finder it automatically gets converted to a JPEG.

RegnisGnaw a month ago

Settings -> Apps -> Photo -> Transfer to Mac or PC (Automatic).

  • parOP a month ago

    I have this selected, but if I take a photo and upload it straight to google drive, it uploads as HEIC.

    • claudiulodro a month ago

      I simply live with this, but if I need to download it in a compatible format from Google Drive, I just screenshot the photo from Google Drive instead of downloading it. That solves the problem for me but from a different direction.

paidsearchguy a month ago

Usually a quick Apple Shortcut is how I go about it

shmerl a month ago

image magick's convert would work.

erikqu a month ago

on Mac I literally just right click > Quick Actions > Convert Image > convert to jpg

agumonkey a month ago

Pillow (python lib) has a plugin

libheic on some old debian had troubles parsing recent metadata, PILLOW did not

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection