HAP
ハップ
映像のデコードをCPUではなくGPUに任せることで、高解像度の映像を軽く再生できるようにした映像コーデックです。VJソフトのVDMXを作るVidvoxが中心になって公開し、プロジェクションマッピングやライブの映像演出で広く使われています。
- 開発
- Vidvoxが中心のオープンソースプロジェクト(BSDライセンス)
- 種類
- HAP、HAP Alpha、HAP Q、HAP Q Alpha、HAP R
- FourCC
- Hap1(HAP)、Hap5(HAP Alpha)、HapY(HAP Q)
- 圧縮方式
- GPUのテクスチャ圧縮(DXT系やBC7)に、可逆圧縮のSnappyを重ねる
- 主な入れ物
- MOV、AVI
- 書き出せる主なツール
- FFmpeg、AVF Batch Exporter(macOS)、Adobe製品向けの他社製プラグイン
- 再生する主なソフト
- Resolume、TouchDesigner、VDMX、disguise、Millumin
ライブやイベントの映像担当から「素材はHAPで書き出してください」と指定されて、初めてこの名前を知る人は多いです。HAPはファイルを小さくするためのコーデックではなく、再生するマシンの負荷を下げるためのコーデックです。そのため容量はH.264の何倍にもなりますが、4Kの映像を何本も重ねて、コマ単位で頭出ししながら再生できます。
HAPが使われる場面
中心はイベントやライブの映像演出です。コンサートのLEDビジョン、建物に映すプロジェクションマッピング、展示会や博物館の映像展示など、メディアサーバーと呼ばれる再生機で映像を出す現場でよく指定されます。Resolume、TouchDesigner、VDMX、disguise、Milluminといった再生ソフトやメディアサーバーがHAPに対応しています。
テレビ番組でも、スタジオのLEDパネルやセットのモニターに流す映像を、こうした再生ソフトから出す場合にHAPが使われることがあります。編集ソフトで作った映像を最後にHAPへ書き出し、再生マシンに入れて本番を迎えるのが一般的な流れです。
HAPの仕組みと種類の違い
一般的なH.264は、CPUやデコード専用の回路で映像を展開してから、画像としてGPUに渡します。HAPは、GPUが直接読めるテクスチャ圧縮の形式で映像を保存しておき、展開をGPUに任せます。CPU側で重い計算をしないので、解像度の高い映像を同時に何本も再生したり、再生速度を自在に変えたりしても処理が追いつきます。
各フレームは独立して圧縮されるオールイントラなので、どのコマにも即座に飛べます。テクスチャ圧縮のあとに、Snappyという軽い可逆圧縮をかけて、ファイルをさらに小さくしています。
種類は次の5つで、用途に合わせて選びます。
- HAP:データ量が最も小さい基本形
- HAP Alpha:HAPに透過(アルファチャンネル)を加えたもの
- HAP Q:画質を上げたもので、データ量はHAPのおよそ倍
- HAP Q Alpha:HAP Qに透過を加えたもの
- HAP R:BC7という新しいテクスチャ圧縮を使う形で、HAP Qより高画質で透過も扱える
HAPへの変換・書き出しの注意
FFmpegなら、コーデックにhapを指定して書き出せます。macOSでは無償のAVF Batch Exporterでまとめて変換でき、After EffectsやPremiere Proからは他社製のプラグインで書き出すか、いったんProResで書き出してから変換します。
容量は大きくなるので、再生マシンのストレージは読み出しの速いSSDが前提です。チャンク数という分割の設定は、再生マシンのCPUコア数を超えないようにするのが目安で、HD以下なら1で足ります。テクスチャ圧縮は4×4画素のブロック単位で処理するため、映像の縦横のピクセル数は4の倍数にそろえておくと安全です。
HAPが再生できないとき
QuickTime Playerや一般的な動画プレーヤーは、HAPを再生できないことがほとんどです。これは異常ではなく、HAPが再生ソフトやメディアサーバーでの利用を前提にしているためです。確認用に見たいだけなら、VLCのようにFFmpegの部品を使うプレーヤーで開けることがあり、確実なのはH.264に変換して見る方法です。再生ソフトで読めない場合は、使っている種類(HAP RやHAP Q Alpha)にそのソフトが対応しているかを確かめてください。
よくある質問
HAPとHAP Qはどちらを使えばいいですか
グラデーションや細かい文字が多い映像ならHAP Q、容量と読み出し速度を優先するならHAPが目安です。再生ソフトが対応していれば、HAP QよりもHAP Rが推奨されています。
HAPのファイルはなぜこんなに大きいのですか
GPUが直接読める形で保存するため、H.264のような強い圧縮をかけていないからです。容量と引き換えに、再生時のCPU負荷を大きく下げています。
HAPはPremiere Proで書き出せますか
標準の書き出し形式には入っていないため、他社製のプラグインを追加するか、ProResなどで書き出してからFFmpegやAVF Batch ExporterでHAPに変換します。
似ている形式との違い
関連する用語
最終更新