HEICをJPGに変換する

iPhoneでは写真がHEICというApple独自のファイルフォーマットで保存されているようです。iPhoneから写真をアップロードするときは自動的にJPEGに変換されるようで、iPhoneユーザーは困らないようになっています。しかし、電子メールの場合そういうことがされず、見られなくて困ります。

Windowsでファイル形式を変換してくれるソフトを探したのですが、有料ソフトばかりでした。ウェブに変換サービスがあったのですが、私の受け取ったファイルは使えませんでした。

ImageMagickもインストール済みのものは対応しておらず、どうしようかとウェブを検索し、dockerを使うことに思い当たりました。

docker search heicとしてみると、wshelley/heic-to-jpeg A batch converter for HEIC/HEIF images created on iOS 11 devicesというのが見つかりました。これを試してみます。

HEICのファイルを/opt/data/labomember/240323/に置いておいて、それを/convertにマウントします。中にある.heicと.HEICのファイルが全て.jpgに変換されます。

$ docker run -v /opt/data/labomember/240323/:/convert/ wshelley/heic-to-jpeg
./IMG_1925.HEIC -> ./IMG_1925.jpg
Grid is 8064x6048 pixels in tiles 9x6
Export & decode HEVC: 381ms
Saving image: 370ms
Total Time: 758ms
(以下省略)

変換後の写真

実際に動いているのはtifigというツールのようです。ffmpegを利用しているようです。