Takeout JSON

Converter HEIC para JPG sem perder a data e a localização

Como converter fotos HEIC do iPhone para JPG em lote sem perder data, GPS e orientação, na mão ou com um programa, no Windows, no Mac e no Linux.

O seu iPhone fotografa em HEIC. A TV, a máquina de revelar fotos da loja, o notebook do trabalho, o PC do seu pai e metade dos sites que você usa não abrem esse formato. Converter é fácil. Converter sem perder a data e o local é a parte que as pessoas erram.

O que é HEIC

HEIC é o nome que a Apple dá a imagens HEIF comprimidas com HEVC, o mesmo codec do vídeo 4K. Ele guarda uma foto em mais ou menos metade do espaço de um JPEG equivalente, na mesma qualidade. A Apple tornou o formato padrão em 2017. Samsung e alguns outros Android também conseguem fotografar assim.

Fora do mundo Apple, o suporte é irregular. O Windows precisa de um codec da Microsoft Store, e a extensão de vídeo HEVC é paga. Muitos visualizadores de Linux abrem, muitos não. Câmeras antigas, TVs, porta-retratos digitais e formulários da web simplesmente rejeitam. JPEG abre em qualquer lugar, e esse é o motivo inteiro para converter.

O que se perde em uma conversão ruim

Três coisas, na ordem de frequência.

A data. Alguns conversores gravam um JPEG novo sem EXIF nenhum. A foto passa a ter só a data do arquivo, que é o momento da conversão. A biblioteca inteira cai em um dia só.

A localização. Mesma causa. O GPS mora no EXIF. Descarte o EXIF e o lugar vai junto.

A orientação. O HEIC guarda a rotação como uma propriedade da imagem. Um conversor que ignora isso produz um JPEG deitado. Um que lê mas também copia a tag de orientação do EXIF produz um JPEG que alguns visualizadores giram duas vezes.

Conversores online acrescentam uma quarta perda: suas fotos saem do seu computador. Para fotos de família com GPS dentro, isso tem um custo real.

"Sem perder qualidade" tem limite

HEIC para JPEG nunca é totalmente sem perdas. HEVC e JPEG são compressões diferentes, e os pixels precisam ser decodificados e recodificados. Em qualidade JPEG 90 ou mais, a diferença é invisível em qualquer tela e em qualquer impressão. O arquivo fica maior, normalmente o dobro. Essa é a troca pela compatibilidade.

Guarde os HEIC originais se o espaço permitir. Eles são a versão menor e de maior qualidade. Converta cópias para os lugares que precisam de JPEG.

Convertendo na mão

No Mac, selecione as fotos no Finder, clique com o botão direito, Ações Rápidas, Converter Imagem, escolha JPEG. Ele mantém o EXIF, incluindo GPS e data, e trata a orientação. O Exportar do Pré-Visualização faz o mesmo para um arquivo. O comando sips faz no terminal:

sips -s format jpeg foto.heic --out foto.jpg

No Windows, instale as "Extensões de Imagem HEIF" e as "Extensões de Vídeo HEVC" da Microsoft Store. Depois disso o Fotos abre HEIC e consegue "Salvar como" JPEG, um arquivo por vez. Para lotes, o XnView MP ou o IrfanView com o pacote de plugins convertem pastas inteiras e mantêm o EXIF se você marcar a opção de preservar metadados. O ImageMagick, gratuito, faz em uma linha: magick mogrify -format jpg *.HEIC.

No Linux, o heif-convert da libheif está na maioria dos repositórios:

for f in *.heic; do heif-convert -q 92 "$f" "${f%.heic}.jpg"; done

Ele carrega o EXIF junto.

Depois de qualquer conversão, confira um arquivo. No Windows, botão direito, Propriedades, Detalhes: "Data da captura" e a seção GPS devem estar preenchidas. Com o exiftool, exiftool foto.jpg deve mostrar DateTimeOriginal e GPSLatitude. Se não mostrar, a ferramenta descartou. O exiftool copia de volta a partir do original:

exiftool -tagsfromfile foto.heic -all:all foto.jpg

Onde o Google Takeout entra

O Google Fotos guarda HEIC como HEIC. Uma exportação do Takeout de uma biblioteca de iPhone vem cheia deles, com a data e o GPS em arquivos .json ao lado, e não dentro do arquivo. Converter esses para JPEG sem ler os JSON antes dá JPEGs sem data duas vezes: nem no HEIC estava, nem no JPG vai estar. Grave os dados do JSON no HEIC primeiro, converta depois. O guia específico está em converter HEIC para JPG do Google Takeout.

Fazendo com o app

O Takeout JSON Metadata Fixer converte HEIC para JPG como parte de uma execução de organização, e grava a data e o GPS no JPEG ao mesmo tempo, tenham eles vindo do EXIF do próprio HEIC ou de um JSON do Takeout.

Ligue a opção HEIC para JPG. Cada HEIC da pasta ou da exportação sai como um JPEG com DateTimeOriginal, GPS e o resto dos metadados carregados junto. A orientação é tratada girando os pixels para a posição certa e definindo a tag como normal, então nada aparece deitado depois. Arquivos que não são HEIC passam sem alteração. Um arquivo que tem nome .HEIC mas é JPEG por dentro, o que acontece em exportações do Google, é reconhecido pelo conteúdo e sai como um JPG normal.

No Mac a decodificação usa os frameworks da própria Apple. No Windows e no Linux o app traz o próprio decodificador HEIC, então você não precisa do codec da Microsoft Store nem de pacote da distribuição. Tudo acontece na sua máquina. Nada é enviado.

A conversão se combina com o resto: nomes de arquivo começando pela data, pastas Ano/Mês, exportação direto para um pendrive. Grátis para 1000 fotos, US$ 19,99 uma vez para ilimitado, no Windows, no Linux e no Mac.

Perguntas frequentes

Devo apagar os HEIC depois de converter?

Não, se tiver espaço. O HEIC é o original melhor. Guarde em uma pasta de arquivo e use os JPEGs para compartilhar e para os aparelhos que precisam.

Converter muda a data da foto?

Não deveria. Um bom conversor copia o EXIF, então o DateTimeOriginal é o mesmo no JPEG. A data de modificação do arquivo vai ser a hora da conversão, e é por isso que a data de dentro do arquivo é a que importa.

E as Live Photos?

Uma Live Photo é um HEIC mais um MOV curto. Converter o HEIC para JPEG deixa o MOV como está. Mantenha os dois com o mesmo nome base para que os apps que entendem pares continuem vendo como um só.

Existe uma configuração de qualidade?

A maioria das ferramentas usa algo entre 85 e 95 por padrão. Abaixo de 85 você pode ver artefatos em céus e na pele. Acima de 95 o arquivo cresce muito sem ganho visível.