1.5 | Supported media formats
Introduction
Pixotope uses the Unreal Engine media framework for file-based video input.
Recommended video format
Recommended Codec | Recommended Container |
---|---|
HAP | .mov |
H.264 | .mp4 |
HAP Codecs for playback
Pixotope supports the playback of video files encoded using the HAP codec.
Please refer to UE4 documentation on setting up playback of HAP encoded videos: https://docs.unrealengine.com/en-US/Engine/MediaFramework/TechReference/index.html#hapcodecplaybacksupport
HAP is a set of video codecs that perform decompression using a computer's graphics hardware, substantially reducing the CPU usage necessary to play video. It has become the standard for high-performance, high-resolution movie playback on media servers, for live video performance and event visuals. It includes support for alpha channels.
There are four different flavors of HAP:
- HAP has the lowest data rate and reasonable image quality
- HAP Alpha has the same image quality as HAP and supports an alpha channel
- HAP Q has improved image quality, at the expense of larger file sizes
- HAP Q Alpha has improved image quality and an alpha channel, at the expense of larger file sizes
Learn more about using HAP here: https://hap.video/using-hap
Using FFmpeg to encode HAP video
For HAP movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap outputName.mov
For HAP Alpha movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap -format hap_alpha outputName.mov
For HAP Q movies use the following command:
ffmpeg -i yourSourceFile.mov -c:v hap -format hap_q outputName.mov
Encoding a set of images to HAP using FFmpeg
Export to HAP directly from a .tif sequence with alpha using FFmpeg:
ffmpeg -r 30 -f image2 -s 1920x1080 -i test%02d.tif -vcodec hap -format hap_alpha -pix_fmt rgba test.mov
- -i is where you set the pattern for the image sequence naming (where "%02d" means that zeros will be padded until the length of the string is 2, i.e. 01…20…30… and so on. If no padding is needed, use pic%d.png or %d.png or similar)
- -r is the frame rate (fps)
- -s is the resolution
- and the output filename is "test.mov"