Community-supported exporter of HAP codec family for Adobe CC applications
Clone or download

Hap Exporter for Adobe CC 2018

This is the community-supplied Hap and Hap Q exporter plugin for Adobe CC 2018.

Development of this plugin was sponsored by disguise, makers of the disguise show production software and hardware.

Principal contributors to this plugin are

Thanks to Tom Butterworth for creating the Hap codec and Vidvox for supporting that development.

Please see license.txt for the licenses of this plugin and the components used to create it.


An installer for the exporter can be downloaded here.

User Guide

Please consult the User Guide, which can be found here.


Users can contact for support.


The following information is for developers who wish to contribute to the project, and is not for users of the plugin.


compiler toolchain

You'll need a compiler environment appropriate to your operating system. The current plugin has been developed on

  • win64 with Microsoft Visual Studio 2017 Professional.
  • macOS with XCode


CMake creates the build system for the supported target platforms. This project requires version 3.12.0 or later.


NSIS is required for win32 installer builds.

Adobe CC 2018 SDK


Place in



FFmpeg 4.0 is used for output of the .mov format.

It is referenced as a submodule of this repository. Fetch the source for building with

git submodule init
git submodule update

The FFMpeg build is not wrapped by the plugin's cmake build process, and must be made in a platform specific process as descibed below.


Either install and set environment for your own FFMpeg, or build / install the one in external/ffmpeg as described at

For reference, the FFMpeg build for the win64 plugin was created by

  • first installing MSYS

  • launching a Visual Studio 2017 developer prompt

  • set Visual Studio build vars for an x64 build. Something like

     "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64
  • running the MSYS shell from within that prompt

  • going to the external/ffmpeg/FFMPeg directory and then

     ./configure --toolchain=msvc --disable-x86asm --disable-network --disable-everything --enable-muxer=mov --extra-cflags="-MD -arch:AVX"

This will take a while.


Build a local FFmpeg by opening a terminal and moving to external/ffmpeg/FFmpeg. Then

./configure --disable-x86asm --disable-network --disable-everything --enable-muxer=mov --disable-zlib --disable-iconv


Pandoc is required to build the documentation, which is bundled by the installer.


For macos, the homebrew installation is recommended.

brew install pandoc



First create a build directory at the top level, and move into it

mkdir build
cd build

Invoke cmake to create a Visual Studio .sln


This should create HapEncoder.sln in the current directory. Open it in Visual Studio:


The encoder plugin (.prm) is created by building all. The installer executable is made by building the PACKAGE target, which is excluded from the regular build.


First create a build directory at the top level, and move into it

mkdir Release
cd Release

Invoke cmake to create makefiles etc for a Release build


Then do a build with

make -j

This will create a plugin at


To create an installer (requires Apple Developer Program membership for signing)

cd installer

The installer is created in the Release directory.