Skip to main content
Support

HAP Codec — GPU-Accelerated Playback

How MultiMon plays HAP and HAP Q, which BCn texture format each variant uses, what happens if the GPU cannot take one, and how to convert media.

HAP is a video codec built for real-time playback. Instead of decoding frames on the CPU and uploading pixels, HAP stores frames as GPU-native compressed textures that the graphics card can consume directly. That makes it the right format for a wall of outputs.

What MultiMon supports

MultiMon plays HAP and HAP Q. The decoder was written from scratch — no third-party HAP library is involved.

Each HAP variant carries one specific compressed-texture format, and MultiMon uploads it to the GPU as-is:

HAP variantTexture formatNotes
HAPRGB DXT1 — BC1The standard quality tier
HAP AlphaRGBA DXT5 — BC3Carries an alpha channel
HAP QScaled YCoCg DXT5 — BC3Decoded to RGB through a YCoCg pixel shader
RGBA BPTCBC7The BPTC variant; not what HAP Q uses
A RGTC1BC4The alpha plane of HAP Q Alpha

HAP Q is BC3, not BC7. It is scaled YCoCg packed into a DXT5 block, which is why it needs the YCoCg-to-RGB shader; BC7 belongs to the separate RGBA BPTC variant.

When your GPU cannot take the format

If the GPU does not report support for a clip’s texture format, MultiMon does not fail the clip: it hands the file to Media Foundation instead and logs the fallback. If Media Foundation cannot open it either, that output stays black — the rest of the wall keeps playing and the application keeps running.

Hap mode

There is a Hap entry in the mode dropdown: one HAP clip per monitor, all on the one shared clock. Use it instead of Individual with Sync whenever every clip is a HAP file — Individual takes the Media Foundation path even for a .mov that holds HAP, so it never gets HAP’s frame-accurate decode. See Video synchronisation.

Converting your media

Use the Convert to HAP button in the main window to transcode a source to HAP. It takes mp4, mov, mkv, avi and wmv as input, and writes the output into a mov container.

FFmpeg is required — and is not bundled

Convert to HAP calls FFmpeg, which must be on your PATH. MultiMon does not ship FFmpeg, and resolves it from PATH as-is, so install it only from a source you trust.

Nothing else in MultiMon needs FFmpeg: playback, sync, the mixer and project files all work without it. It is required only for this one conversion tool.

When to convert

  • You are driving several outputs at once and want decode off the CPU.
  • The show runs long and has to be dependable.
  • The source is already your master and you can afford the disk space — HAP files are considerably larger than an H.264 or HEVC delivery file, because they trade size for playback cost.

If you would rather play the file you already have, MultiMon takes H.264 and HEVC directly — see Standard playback.