Takeout JSON

Converter HEIC para JPG do Google Takeout sem perder a data

Por que a exportação do Google Takeout vem cheia de HEIC, como converter para JPG mantendo data e GPS, e o HEIC estranho que na verdade é um JPEG.

Metade das fotos do seu Takeout termina em .HEIC. O Windows mostra um ícone em branco, a TV ignora, e o conversor que você tentou produziu JPGs sem data e sem local. Agora você tem duas cópias de tudo e nenhuma está certa.

HEIC não é um problema por si só. Converter sem cuidado é.

Por que o Takeout está cheio de HEIC

iPhones fotografam em HEIC por padrão desde 2017. O Google Fotos guarda o que o celular envia, e o Takeout devolve sem alterar. Se a sua biblioteca veio de um iPhone, a maioria das fotos desde então é HEIC. Celulares Android fotografam quase sempre em JPG, embora alguns modelos da Samsung ofereçam HEIF também.

Arquivos HEIC têm mais ou menos metade do tamanho de um JPG na mesma qualidade. É por isso que a Apple os usa. A desvantagem é a compatibilidade. O Windows 10 e o 11 precisam de um codec da Microsoft Store para exibi-los. Programas antigos, a maioria das smart TVs, muitos sites de envio e alguns apps de foto de NAS não leem de jeito nenhum. No Linux é preciso ter a libheif instalada.

Se as suas fotos vão para o Fotos da Apple, o Immich, o PhotoPrism ou um Android recente, deixe em HEIC. Todos eles leem o formato, e converter só perde um pouco de qualidade e dobra o espaço. Converta quando o destino não consegue ler, ou quando quer um formato só para tudo.

O que uma conversão descuidada perde

A maioria dos conversores decodifica a imagem e a recodifica como JPEG. Muitos deles gravam um JPEG novo sem metadado nenhum. O bloco EXIF com a data, o modelo da câmera e o GPS é descartado. Suas fotos convertidas passam a mostrar a data da conversão, que é o mesmo problema que o Takeout causou, agora com um segundo conjunto de arquivos.

A data e o GPS dentro de um HEIC ficam no mesmo tipo de bloco EXIF que um JPEG usa. Um bom conversor copia isso. Confira o resultado antes de apagar qualquer coisa: clique com o botão direito em um JPG convertido, veja Propriedades ou Obter Informações, e confirme que "Data da captura" e o modelo da câmera estão lá.

Faça a gravação dos metadados do Takeout antes de converter, não depois. Depois que a data do .json está dentro do HEIC, uma conversão que preserva metadados carrega a data para o JPG. Se você converter primeiro, os nomes dos JSON não batem mais com os arquivos novos e a gravação precisa ser feita de outro jeito.

Convertendo na mão

No Mac, selecione os arquivos no Finder, clique com o botão direito e escolha Ações Rápidas, depois Converter Imagem. Escolha JPEG e tamanho completo. Ou no terminal:

for f in *.HEIC; do sips -s format jpeg "$f" --out "${f%.*}.jpg"; done

O sips mantém o EXIF, incluindo data e GPS.

No Windows, o app Fotos consegue salvar um HEIC como JPG, um de cada vez, depois que o codec HEIF está instalado. Para um lote, o ImageMagick é gratuito: magick mogrify -format jpg *.HEIC. Ele preserva o EXIF por padrão.

No Linux, o heif-convert do pacote libheif-examples resolve: for f in *.HEIC; do heif-convert "$f" "${f%.*}.jpg"; done. Ele copia o EXIF.

Se um conversor apagou os metadados, o exiftool copia de volta a partir do HEIC:

exiftool -tagsfromfile %d%f.HEIC -all:all -overwrite_original -ext jpg .

Rode isso em uma pasta onde os pares HEIC e JPG estão lado a lado.

O HEIC que na verdade é um JPEG

De vez em quando um arquivo do Takeout tem nome .HEIC mas contém dados JPEG. Acontece quando uma foto foi convertida em algum ponto do caminho e manteve o nome antigo, e alguns visualizadores se recusam a abrir porque a extensão e o conteúdo discordam. No Mac ou no Linux, file IMG_1234.HEIC diz o que tem dentro de verdade. Se disser JPEG, renomeie para .jpg e ele funciona em qualquer lugar. O contrário também existe, JPEGs que são HEIC por dentro, embora seja mais raro.

Um conversor que confia na extensão falha nesses arquivos ou produz um arquivo quebrado. Um conversor que olha o conteúdo resolve.

Convertendo com o app

O Takeout JSON Metadata Fixer converte HEIC para JPG como uma opção na mesma execução que corrige as datas, no macOS, no Windows e no Linux.

Ele primeiro grava a data e o GPS do JSON em cada foto, depois decodifica o HEIC e grava um JPG com os metadados carregados junto. Ele lê o conteúdo do arquivo em vez da extensão, então um JPEG escondido atrás de um nome .HEIC sai como um JPG normal com os metadados intactos. Fotos de lado são endireitadas ao mesmo tempo, já que a orientação é uma das coisas que uma conversão ruim descarta. Deixe a opção desligada e os HEIC passam sem alteração.

Os JPGs são recodificados em alta qualidade, então ficam maiores que os HEIC originais. Guarde os originais se o espaço permitir. As primeiras 1000 fotos são grátis.

Se o seu único objetivo é a conversão e as datas já estão certas, as ferramentas gratuitas acima bastam. O app se justifica quando você precisa de conversão, correção de data e organização em uma passada só. Para conversão fora do Takeout, veja converter HEIC para JPG sem perder a data.

Perguntas frequentes

Converter para JPG perde qualidade?

Um pouco. JPEG é uma recodificação com perdas de uma origem que já tem perdas. Em alta qualidade a diferença é invisível na tela. Para arquivo, guarde o HEIC e use os JPGs para compartilhar.

Posso converter Live Photos?

A metade fixa de uma Live Photo converte como qualquer HEIC. O clipe é um MP4 separado e fica como está. O Fotos da Apple junta um JPG e um MP4 com o mesmo nome do mesmo jeito que junta um HEIC e um MP4.

Por que o Windows mostra HEIC como um ícone em branco?

Ele precisa das "Extensões de Imagem HEIF" da Microsoft Store, e às vezes também das "Extensões de Vídeo HEVC", que são pagas. Instalar as duas permite que o Explorador e o Fotos exibam HEIC. Outros programas do Windows podem continuar sem abrir.

O JPG convertido mantém o GPS?

Sim, se o conversor copiar o EXIF. As tags de GPS fazem parte do mesmo bloco que a data. Confira um arquivo depois de converter.