HEIF
libheif

libheif の heif-convert コマンド

libde265 で有名な struktur AG さんが HEIF を JPEG や PNG に変換するツールを公開しているので、そのビルドと使い方メモです。
あと、このツールは HEIF 生成は出来ません、あくまで読むのだけ。

HEIF は画像を H.265/HEVC Iフレーム1コマとして持ち、それを ISOBMFF(QuickTime の後継コンテナ仕様)で包んだ画像形式です。詳しくはこちらをどうぞ > https://speakerdeck.com/yoya/heif-kaisetsu

レポジトリ

libde256 のビルド

% git clone git@github.com:strukturag/libde265.git
% cd libde265
% git checkout v1.0.2

2種類のビルド方法が用意されています。README.md には cmake 方式が案内されているので、こっちが推奨だと思われます。

  • cmake 方式
% mkdir build
% cd build
% cmake ..
% make
  • automake 方式
% ./autogen.sh
% ./configure
% make
% make install

libheif のビルド

% git clone git@github.com:strukturag/libheif.git
% cd libheif
% git checkout v1.0.0
  • cmake 方式
% mkdir build
% cd build
% cmake ..
% make
  • automake 方式
% ./autogen.sh
% ./configure
% make
% make install

コマンド実行

引数1つ目にHEIF画像ファイル、2つ目に出力先画像を指定します。拡張子に応じて JPEG や PNG を出力します。

% which heif-convert
/usr/local/bin/heif-convert
% heif-convert IMG_0001.HEIC output.JPG
File contains 1 images
% heif-convert IMG_0001.HEIC output.PNG
File contains 1 images
% 

蛇足

ImageMagick にこのコマンドを繋げると、HEIC画像を読み込みできます。(書き出しはできません)

最新版では HEIF 対応していますが、今のバージョンの ImageMagick で HEIF を読みたい。といった場合にどうぞ。

あと、今のところ ImageMagick に入った HEIF コーダー(coders/heic.c) は出来がよくないので、こっちの方が便利。。