LoginSignup
13
7

libheif の heif-convert コマンド

Last updated at Posted at 2018-04-13

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

いつの間にかエンコードも出来るようになっていました。デコードは libde265 のままで、エンコードには x265 を使います。 (2018/08/02 追記)

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 の Delegate 設定でこの heif-convert コマンドを繋げると、HEIC画像を読み込みできます。(書き出しはできません)

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

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

ImageMagick の HEIC コーダー。独自でコンテナ組み立てしていたのを全部捨てて、libheif を使う方式で作り直したので、良い感じになりました。 (2018/08/02 追記)

13
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
7